Logo Search packages:      
Sourcecode: pcsc-lite version File versions  Download package

readerfactory.c File Reference

This keeps track of a list of currently available reader structures. More...

#include "config.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <errno.h>
#include <fcntl.h>
#include <pthread.h>
#include "misc.h"
#include "pcscd.h"
#include "debuglog.h"
#include "readerfactory.h"
#include "dyn_generic.h"
#include "sys_generic.h"
#include "eventhandler.h"
#include "ifdwrapper.h"
#include "hotplug.h"
#include "strlcpycat.h"
#include "configfile.h"
#include "utils.h"
Include dependency graph for readerfactory.c:

Go to the source code of this file.

Defines

#define FALSE   0
#define GET_ADDRESS_OPTIONALv2(s, code)
#define GET_ADDRESS_OPTIONALv3(s, code)
#define GET_ADDRESSv2(s)
#define GET_ADDRESSv3(s)
#define IDENTITY_SHIFT   16
#define TRUE   1

Functions

static int RDR_CLIHANDLES_seeker (const void *el, const void *key)
LONG RFAddReader (const char *readerName, int port, const char *library, const char *device)
LONG RFAddReaderHandle (READER_CONTEXT *rContext, SCARDHANDLE hCard)
LONG RFAllocateReaderSpace (unsigned int customMaxReaderHandles)
LONG RFBindFunctions (READER_CONTEXT *rContext)
LONG RFCheckReaderEventState (READER_CONTEXT *rContext, SCARDHANDLE hCard)
LONG RFCheckReaderStatus (READER_CONTEXT *rContext)
LONG RFCheckSharing (SCARDHANDLE hCard, READER_CONTEXT *rContext)
void RFCleanupReaders (void)
LONG RFClearReaderEventState (READER_CONTEXT *rContext, SCARDHANDLE hCard)
SCARDHANDLE RFCreateReaderHandle (READER_CONTEXT *rContext)
LONG RFDestroyReaderHandle (SCARDHANDLE hCard)
LONG RFFindReaderHandle (SCARDHANDLE hCard)
LONG RFInitializeReader (READER_CONTEXT *rContext)
LONG RFLoadReader (READER_CONTEXT *rContext)
LONG RFLockSharing (SCARDHANDLE hCard, READER_CONTEXT *rContext)
LONG RFReaderInfo (const char *readerName, READER_CONTEXT **sReader)
LONG RFReaderInfoById (DWORD dwIdentity, READER_CONTEXT **sReader)
LONG RFReaderInfoNamePort (int port, const char *readerName, READER_CONTEXT **sReader)
LONG RFRemoveReader (const char *readerName, int port)
LONG RFRemoveReaderHandle (READER_CONTEXT *rContext, SCARDHANDLE hCard)
LONG RFSetReaderEventState (READER_CONTEXT *rContext, DWORD dwEvent)
LONG RFSetReaderName (READER_CONTEXT *rContext, const char *readerName, const char *libraryName, int port)
LONG RFUnBindFunctions (READER_CONTEXT *rContext)
LONG RFUnInitializeReader (READER_CONTEXT *rContext)
LONG RFUnloadReader (READER_CONTEXT *rContext)
LONG RFUnlockAllSharing (SCARDHANDLE hCard, READER_CONTEXT *rContext)
LONG RFUnlockSharing (SCARDHANDLE hCard, READER_CONTEXT *rContext)

Variables

static DWORD dwNumReadersContexts = 0
static pthread_mutex_t LockMutex = PTHREAD_MUTEX_INITIALIZER
static int maxReaderHandles = PCSC_MAX_READER_HANDLES
READER_STATE readerStates [PCSCLITE_MAX_READERS_CONTEXTS]
static READER_CONTEXTsReadersContexts [PCSCLITE_MAX_READERS_CONTEXTS]

Detailed Description

This keeps track of a list of currently available reader structures.

Definition in file readerfactory.c.


Generated by  Doxygen 1.6.0   Back to index