CMX(4FREEBSD) - man page online | special files
Omnikey CardMan 4040 smartcard reader device driver.
July 7, 2007
CMX(4) BSD Kernel Interfaces Manual CMX(4)
NAMEcmx — Omnikey CardMan 4040 smartcard reader device driver
DESCRIPTIONThe cmx driver provides support for the PCCARD based Omnikey CardMan 4040 smartcard reader. The driver provides a character device special file based Chip/Smart Card Interface Devices (CCID) interface. The driver implements what the vendor calls the Synchronous API onto the smartcard reader device. Reading and writing is synchronous, meaning that a call to write(2) directly corresponds to a complete CCID command sent to the device, while the following read(2) will return the com‐ plete answer from the reader. There is no support for partial reads or writes. There is no upper limit on CCID request or response sizes, but the complete CCID request must be sent to the driver in write(2) and the complete CCID response must fit into the buffer supplied to read(2). Non-blocking I/O, select(2) and poll(2) are supported and work as expected. An open file descriptor will always be ready for writing, but only ready for reading if the device indi‐ cates that it has data available.
FILES/dev/cmxn Character device special file. /usr/ports/security/openct OpenCT, a userspace smartcard daemon containing a CCID driver which directly supports cmx devices.
COMPATIBILITYUserland smartcard code written for the vendor's Linux drivers should work with the cmx driver without modification.
HISTORYThe cmx driver first appeared in FreeBSD 7.1.
AUTHORSThe cmx driver was written by Daniel Roethlisberger <@roe.ch>, originally based on the Linux driver v1.1.0 by Omnikey GmbH <www.omnikey.com>. Early testing and bug fixes by Marcin Cieslak <@system.pl>.
BSD July 7, 2007 BSD
BUGSThe way the cmx driver talks to the CardMan 4040 is a bit rough. Due to the complete lack of hardware documentation other than vendor drivers for other operating systems, the gory details of the device's I/O registers are not understood very well. There may be error con‐ ditions which can only be solved by physically reinserting the reader.
|This manual||Reference||Other manuals|
|refer to||pccard(4freebsd) | poll(2) | read(2) | select(2) | write(2)|