Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

pcsc-spy(1) [centos man page]

PCSC-SPY(1)							    PC/SC lite							       PCSC-SPY(1)

NAME
pcsc-spy - A PC/SC spy command SYNOPSIS
pcsc-spy [-n|--nocolor] [-d|--diffable] [-h|--help] [fifo_filename] DESCRIPTION
pcsc-spy displays PC/SC calls of an application. It must be used with the libpcscspy.so library. To be able to spy the PC/SC layer, the application flow must be modified so that all PC/SC calls are redirected. Two options are available: - the application is linked with libpcsclite.so.1 - the application loads the libpcsclite.so.1 library using dlopen(3) OPTIONS
-d, --diffable Demove the variable parts (like handler values) from the output so that two execution can be more easily compared. -h, --help Display a short help text. -n, --nocolor Disable the output colorization (if you want redirect the output in a file for example). -v, --version Print the version of the pcsc-spy program plus a copyright, a list of authors. EXAMPLES
Applications linked with libpcsclite.so.1 We will use the standard LD_PRELOAD loader option to load our spying library. Example: LD_PRELOAD=/usr/lib/libpcscspy.so pcsc_scan Application loading libpcsclite.so.1 This is the case for the PC/SC wrappers like pyscard (for Python) and pcsc-perl (for Perl). The LD_PRELOAD mechanism can't be used. Instead we replace the libpcsclite.so.1 library by the spying one. You may use install_spy.sh and uninstall_spy.sh to install and uninstall the spying library. Using the spying library without pcsc-spy is not a problem but has side effects: - a line "libpcsclite_nospy.so.1: cannot open shared object file: No such file or directory" will be displayed - some CPU time will be lost because of the PC/SC calls redirection Starting the spy tool pcsc-spy If a command argument is passed we use it instead of the default ~/pcsc-spy FIFO file. It is then possible to record an execution log and use pcsc-spy multiple times on the same log. To create the log file just do: mkfifo ~/pcsc-spy cat ~/pcsc-spy > logfile and run your PC/SC application. Mac OS X The installation is not automatic. In the pcsc-lite/src/spy directory do: make framework Then copy the PCSC.framework directory in /tmp cp -a PCSC.framework /tmp Copy the official PCSC.framework (binary only) in /tmp cp /System/Library/Frameworks/PCSC.framework/PCSC /tmp Run the application to debug as: DYLD_FRAMEWORK_PATH=/tmp pcsctest FILES
~/pcsc-spy FIFO file is used by libpcsclite.so.1 to send the raw log lines SEE ALSO
pcscd(8) AUTHOR
This manual page was written by Ludovic Rousseau <rousseau@free.fr> pcsc-lite 1.8.8 2012-08-25 PCSC-SPY(1)

Check Out this Related Man Page

READER.CONF(5)							    PC/SC Lite							    READER.CONF(5)

NAME
reader.conf - configuration file for pcscd readers' drivers DESCRIPTION
The /etc/reader.conf.d/reader.conf file contains configuration information for serial and (some) PCMCIA smart card readers. USB readers SHALL NOT be configured using this file. pcscd uses another mechanism to automatically load USB drivers. SYNTAX
The /etc/reader.conf.d/reader.conf is a regular text file. Each reader must be defined by four fields: FRIENDLYNAME TEXT_STRING DEVICENAME FILENAME LIBPATH FILENAME CHANNELID NUMBER The "FRIENDLYNAME" field is an arbitrary text used to identify the reader. This text is displayed by commands like pcsc_scan(1) that prints the names of all the connected and detected readers. The "DEVICENAME" field was not used for old drivers (using the IFD handler version 2.0 or earlier). It is now (IFD handler version 3.0) used to identify the physical port on which the reader is connected. This is the device name of this port. It is dependent of the OS ker- nel. The first serial port device is called /dev/ttyS0 under Linux and /dev/cuaa0 under FreeBSD. The "LIBPATH" field is the filename of the driver code. The driver is a dynamically loaded piece of code (generally a drivername.so*file). The "CHANNELID" is no more used for recent drivers (IFD handler 3.0) and has been superseded by "DEVICENAME". If you have an old driver this field is used to indicate the port to use. You should read your driver documentation to know what information is needed here. It should be the serial port number for a serial reader. EXAMPLE
# Gemplus GemPCTwin reader with serial communication # connected to the first serial port FRIENDLYNAME "GemPCTwin serial" DEVICENAME /dev/ttyS0 LIBPATH /usr/lib/pcsc/drivers/serial/libccidtwin.so.0.4.1 CHANNELID 1 DEBUGGING
In order to set up your /etc/reader.conf.d/reader.conf file correctly you may want to have debug messages from pcscd. I recommend you to start pscsd in the foreground and debug mode using: # pcscd --foreground --debug If everything seems OK you can use the pcsc_scan command to print the list of correctly detected readers and try to get the ATR of your smart cards. AUTHOR
Ludovic Rousseau <ludovic.rousseau@free.fr> SEE ALSO
pcscd(8), pcsc_scan(1) Muscle August 2005 READER.CONF(5)
Man Page