pcsc-lite
1.7.4
|
00001 /* 00002 * MUSCLE SmartCard Development ( http://www.linuxnet.com ) 00003 * 00004 * Copyright (C) 1999-2002 00005 * David Corcoran <corcoran@linuxnet.com> 00006 * Copyright (C) 2002-2010 00007 * Ludovic Rousseau <ludovic.rousseau@free.fr> 00008 * 00009 * $Id: eventhandler.h 5434 2010-12-08 14:13:21Z rousseau $ 00010 */ 00011 00018 #ifndef __eventhandler_h__ 00019 #define __eventhandler_h__ 00020 00021 #include <stdint.h> 00022 00027 typedef struct pubReaderStatesList 00028 { 00029 char readerName[MAX_READERNAME]; 00030 uint32_t eventCounter; 00031 uint32_t readerState; 00032 int32_t readerSharing; 00034 UCHAR cardAtr[MAX_ATR_SIZE]; 00035 uint32_t cardAtrLength; 00036 uint32_t cardProtocol; 00037 } 00038 READER_STATE; 00039 00040 LONG EHTryToUnregisterClientForEvent(int32_t filedes); 00041 LONG EHRegisterClientForEvent(int32_t filedes); 00042 LONG EHUnregisterClientForEvent(int32_t filedes); 00043 LONG EHSignalEventToClients(void); 00044 LONG EHInitializeEventStructures(void); 00045 LONG EHSpawnEventHandler(READER_CONTEXT *); 00046 LONG EHDestroyEventHandler(READER_CONTEXT *); 00047 00049 #define PCSCLITE_SHARING_LAST_CONTEXT 1 00050 00051 #define PCSCLITE_SHARING_NO_CONTEXT 0 00052 00053 #define PCSCLITE_SHARING_EXCLUSIVE_CONTEXT -1 00054 00058 #define READER_NOT_INITIALIZED (MAX_ATR_SIZE+1) 00059 00060 #endif /* __eventhandler_h__ */