Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

pcscd(8) [osx man page]

PCSCD(8)							    User Manual 							  PCSCD(8)

pcscd - PC/SC Smartcard Daemon SYNOPSIS
pcscd [options] OPTIONS
-a, --apdu log APDUs and SW using the debug method (see -d) -c, --config file Specifies the file file as an alternate location for reader.conf -d, --debug OUTPUT display debug messages. OUTPUT may be: stdout (imply -f), stderr (imply -f), or syslog -f, --foreground Runs pcscd in the foreground (no daemon) -h, --help Displays information about the pcscd command line -v, --version Displays the program version number DESCRIPTION
pcscd is the daemon program for pcsc-lite and musclecard framework. It is a resource manager that coordinates communications with smart- card readers and smart cards and cryptographic tokens that are connected to the system. pcscd is normally started at boot time from /System/Library/StartupItems/SmartCardServices. It allows applications to access smart cards and readers without knowing details of the card or reader. pcscd coordinates the loading of drivers for card readers and plug-ins for different card types. The purpose of pcsc-lite is to provide both a cross compatible API for migrating Windows based PCSC applications to Unix and to provide a pluggable architecture for supporting smartcards and cryptographic tokens through high level API's. At startup, pcscd loads the smart card reader drivers specified in the /etc/reader.conf file (or specified using -c file). When a smart card is inserted into a reader, pcscd uses the ATR string from the card to identify this card. The /usr/libexec/SmartCardSer- vices/services directory contains plug-ins for the card. These plug-ins are searched. If the ATR string matches, the client library loads that plug-in for that token. USB SMART CARD READER DRIVERS
USB Smart card reader drivers are placed in the /usr/libexec/SmartCardServices/drivers directory. Each driver is simply a bundle. The bun- dle contains an XML file Info.plist which is parsed by pcscd. This file contains the vendor and product id of the device. This informa- tion allows pcscd to automatically determine when a reader is inserted or removed. SERIAL SMART CARD READER DRIVERS
Serial Smart card reader drivers are placed in the /usr/libexec/SmartCardServices/drivers directory. Each driver is simply a shared object file. The pcscd locates serial drivers with the /etc/reader.conf file. The file has the following format: # comment FRIENDLYNAME <Descriptive name> DEVICENAME <Short name> LIBPATH <Location of the driver library> CHANNELID <Hexadecimal channel identificator> FRIENDLYNAME is a user-friendly name of the reader that is served by this driver. This name is displayed to the user when necessary. DEVICENAME is a driver specific value. If you do not know this value, GEN_SMART_RDR is a good choice. LIBPATH is the full path to the shared library. CHANNELID is the channel ID for serial-port, smart-card readers. This could vary depending on the driver in which you are using - check the driver README for more information. Some use the following: /dev/ttyS0 (COM1) -> 0x0103F8 or 1 /dev/ttyS1 (COM2) -> 0x0102F8 or 2 /dev/ttyS2 (COM3) -> 0x0103E8 or 3 /dev/ttyS3 (COM4) -> 0x0102E8 or 4 Example: # Configuration file for pcsc-lite FRIENDLYNAME "My Smartcard Reader" DEVICENAME GEN_SMART_RDR LIBPATH /usr/libexec/SmartCardServices/drivers/ CHANNELID 0x0103F8 # End of file Multiple drivers can be listed in /etc/reader.conf. Drivers are available at SMART CARD PLUG-INS pcsc-lite uses plug-ins to handle different types of smart cards. There is a plug-in for each smart-card type. Plug-ins are installed in the /usr/libexec/SmartCardServices/services directory. Plug-ins for cards/tokens are available from the MUSCLE web site http://www.muscle- FILES
/etc/reader.conf : Reader configuration file /System/Library/StartupItems/SmartCardServices : pcscd startup script /var/run/ : process id of the running pcscd /usr/libexec/SmartCardServices/drivers/ : directory containing bundles for USB drivers" BUGS
None known. SEE ALSO
pcsctool(1), AUTHORS
David Corcoran <> and Ludovic Rousseau <> Linux March 2002 PCSCD(8)
Man Page