remove the type PCSCLITE_MUTEX_T and use an explicit pointer type
(PCSCLITE_MUTEX *) instead
This should avoid bugs like the one corrected in revision 4525
12 lines of code changed in 4 files:
correctly use the lock API for ClientsWaitingForEvent_lock
8 lines of code changed in 1 file:
call exit() in SVCServiceRunLoop() instead of RFCleanupReaders() and
remove the RFCleanupReaders() parameter
4 lines of code changed in 3 files:
use return() instead of exit() if DYN_GetAddress() fails
12 lines of code changed in 1 file:
explicitly use (void)fct() to ignore the returned value
14 lines of code changed in 1 file:
EHStatusHandlerThread(): call EHSignalEventToClients() _after_ logging
"Card inserted into ..."
2 lines of code changed in 1 file:
ContextThread(): add the client ID to the command log message
2 lines of code changed in 1 file:
SCardGetStatusChange(): use SCARD_*_CONTEXT constants instead of
numerical values
3 lines of code changed in 1 file:
move SCARD_*_CONTEXT from winscard.c to eventhandler.h
7 lines of code changed in 2 files:
remove useless SCARD_NO_LOCK define
0 lines of code changed in 1 file:
update comment
1 lines of code changed in 1 file:
SHMMessageReceive() now returns -2 in case of timeout and -1 in case of
other error
This is used to correctly handle timeouts in SCardGetStatusChange()
35 lines of code changed in 3 files:
ContextThread(): when a client dies call
EHTryToUnregisterClientForEvent() to unregister it if needed
1 lines of code changed in 1 file:
add EHTryToUnregisterClientForEvent()
19 lines of code changed in 2 files:
SHMMessageSend(): document the use of MSG_NOSIGNAL to ignore SIGPIPE
signal
9 lines of code changed in 1 file:
do not use PCSC_CLIENT_SRC variable anymore since SCF support has been
removed
1 lines of code changed in 1 file:
libpcsclite does not need to have dyn_hpux.c, dyn_macosx.c or
dyn_unix.c.
These files define DYN_LoadLibrary/DYN_CloseLibrary/DYN_GetAddress
0 lines of code changed in 1 file:
remove Xcode files. Apple has its own version of pcsc-lite for Mac OS X
0 lines of code changed in 3 files:
Doxygen(): better documentation for SCardCheckDaemonAvailability()
4 lines of code changed in 1 file:
revert changeset 4485. SCardCheckDaemonAvailability() is also used to
invalidate the PC/SC handles after a fork or a pcscd restart
74 lines of code changed in 1 file:
remove SCF support (PC/SC over Smart Card Framework).
I never used this feature and SCF is now dead and replaced by JSR 268
(javax.smartcardio)
1 lines of code changed in 3 files:
SCardReleaseContext(), SCardConnect(), SCardReconnect(),
SCardDisconnect(), SCardBeginTransaction(), SCardEndTransaction(),
SCardCancelTransaction(), SCardStatus(), SCardGetStatusChange(),
SCardControl(), SCardGetSetAttrib(), SCardTransmit(),
SCardListReaders(), SCardFreeMemory()SCardListReaderGroups(),
SCardIsValidContext(): do not SCardCheckDaemonAvailability() since we
will try to talk to the server later. Any communication problem will be
reported by SHMMessageSendWithHeader()
0 lines of code changed in 1 file:
SCardDisconnect(): factorize exit code
5 lines of code changed in 1 file:
SCardReconnect(): factorize exit code
2 lines of code changed in 1 file:
SCardConnect(): factorize exit code
8 lines of code changed in 1 file:
SCardReleaseContext(): release context even if communication with the
server fails
7 lines of code changed in 1 file:
SHMMessageSend(): use send(..., MSG_NOSIGNAL) instead of write(...) to
avoid receiving a SIGPIPE signal if pcscd has exited. We just get EPIPE
as return value
1 lines of code changed in 1 file:
SCardReconnect(), SCardBeginTransaction(), SCardEndTransaction(),
SCardCancelTransaction(), SCardControl(), SCardGetSetAttrib()
and SCardTransmit(): do not "synchronize reader states with daemon"
since reader availability checks are done on the server side.
1 lines of code changed in 1 file:
Doxygen improvement
4 lines of code changed in 1 file:
Doxygen: define an IFDHandler group
11 lines of code changed in 1 file:
Add Doxygen documentation of the IFD Handler API
632 lines of code changed in 1 file:
remove IFD_Handler 1.0 functions prototypes
0 lines of code changed in 1 file:
Doxygen: use @param[in,out] for in and out parameters
9 lines of code changed in 1 file:
cleanly exits in case of unknown protocol
1 lines of code changed in 1 file:
use SCARD_AUTOALLOCATE for SCardListReaders()
9 lines of code changed in 1 file:
remove svn:executable property on source files
0 lines of code changed in 2 files:
Define SYS_Fork() only if used (if HAVE_DAEMON is not set)
3 lines of code changed in 2 files:
Remove useless SYS_GetPageSize(), SYS_MemoryMap(),
SYS_PublicMemoryMap(), SYS_PublicMemoryUnmap() and SYS_MMapSynchronize()
0 lines of code changed in 2 files:
Remove useless SYS_ReadFile()
0 lines of code changed in 2 files:
Remove useless SYS_SeekFile()
0 lines of code changed in 2 files:
Remove SYS_ChangePermissions() prototype (the function is NOT defined
anywhere)
0 lines of code changed in 1 file:
Remove useless SYS_GetUID() & SYS_GetGID()
0 lines of code changed in 2 files:
Remove useless SYS_GetPID()
0 lines of code changed in 2 files:
SYS_Initialize() does nothing. Remove it.
0 lines of code changed in 3 files:
Comment out RFSuspendAllReaders() and RFAwakeAllReaders().
We do not yet support suspend/resume on Linux
2 lines of code changed in 1 file:
remove useless RFListReaders()
0 lines of code changed in 2 files:
remove useless RFUnblockContext()
0 lines of code changed in 2 files:
remove useless RFUnblockReader()
0 lines of code changed in 3 files:
do not use contextBlockStatus tpo block/unblock a context. We now use
SCardCancel() on the server side to unblock SCardGetStatusChange()
0 lines of code changed in 3 files:
The .tex documentation is no more maintained.
The reference WinSCard API documentation is from Doxygen now.
3 lines of code changed in 3 files:
add documentation
3 lines of code changed in 1 file:
IFDControl(): return SCARD_E_INSUFFICIENT_BUFFER if the driver returns
IFD_ERROR_INSUFFICIENT_BUFFER
3 lines of code changed in 1 file:
SCardGetAttrib(): return SCARD_E_INSUFFICIENT_BUFFER if the driver
returns IFD_ERROR_INSUFFICIENT_BUFFER
Thanks to Emmanuel Deloget for the bug report
http://archives.neohapsis.com/archives/dev/muscle/2009-q4/0003.html
16 lines of code changed in 1 file:
add IFD_ERROR_INSUFFICIENT_BUFFER
1 lines of code changed in 1 file:
SCardReconnect(): log the selected protocol (as done in SCardConnect())
13 lines of code changed in 1 file:
SCardReconnect(): return SCARD_E_SHARING_VIOLATION instead of blocking
if the reader cannot be shared.
This change was made in revision 2475 but I don't remember why.
Thanks to Paul Klissner for the bug report
http://archives.neohapsis.com/archives/dev/muscle/2009-q3/0106.html
21 lines of code changed in 1 file:
remove typedefs and explicitly use struct for structures
10 lines of code changed in 2 files:
update to the new client/server ABI
5 lines of code changed in 1 file:
remove now useless StatSynchronize() and StatSynchronizeContext()
0 lines of code changed in 2 files:
remove now useless SCardUnload()
0 lines of code changed in 1 file:
redesign the client/server communication:
- no more shared memory used (allow pcscd and libpcsclite1.so to be on
different computer and talk over a network)
- no more difference between short and extended APDU
- no more use of a /var/run/pcscd/pcscd.events/ directory. events are
sent through the socket
- simpler command format between client and server
The side effect is that you are not able to mix an old pcscd with a new
libpcsclite1.so or the reverse. SCardEstablishContext() will fail unless
you update both sides of the communication.
948 lines of code changed in 10 files:
reformat comment
2 lines of code changed in 1 file:
add MSGSignalClient()
22 lines of code changed in 2 files:
add struct wait_reader_state_change
9 lines of code changed in 1 file:
add PCSCLITE_WRITE_TIMEOUT and PCSCLITE_READ_TIMEOUT
2 lines of code changed in 1 file:
reformat comments
31 lines of code changed in 1 file:
add EHRegisterClientForEvent(), EHUnregisterClientForEvent() and
EHSignalEventToClients()
64 lines of code changed in 2 files:
add simclist.{c,h} to pcscd dependencies
3 lines of code changed in 1 file:
Library to manage lists
Fetched from http://mij.oltrelinux.com/devel/simclist/
2361 lines of code changed in 2 files:
display return values even if no error returned
3 lines of code changed in 1 file:
Doxygen document SCardConnect() difference with Windows for
SCARD_SHARE_DIRECT
6 lines of code changed in 1 file:
add Doxygen section: Known differences with Microsoft Windows WinSCard
implementation
27 lines of code changed in 1 file: