This is the command pcsc-spy that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator
PROGRAM:
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
Remove 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
Use pcsc-spy online using onworks.net services