/*
* This keeps a list of defines for pcsc-lite.
*
* MUSCLE SmartCard Development ( http://www.linuxnet.com )
*
* Copyright (C) 1999-2004
* David Corcoran <corcoran@linuxnet.com>
* Ludovic Rousseau <ludovic.rousseau@free.fr>
*
* $Id: pcsclite.h.in,v 1.47 2004/08/24 21:46:57 rousseau Exp $
*/
#ifndef __pcsclite_h__
#define __pcsclite_h__
#ifndef __sun_jdk
#include <wintypes.h>
#else
#include <inttypes.h>
#ifdef BYTE
#else
typedef unsigned char BYTE;
#endif /* End BYTE */
typedef unsigned char UCHAR;
typedef unsigned char *PUCHAR;
typedef unsigned short USHORT;
typedef unsigned long ULONG;
typedef void *LPVOID;
typedef short BOOL;
typedef unsigned long *PULONG;
typedef const void *LPCVOID;
typedef unsigned long DWORD;
typedef unsigned long *PDWORD;
typedef unsigned short WORD;
typedef long LONG;
typedef long RESPONSECODE;
typedef const char *LPCTSTR;
typedef char *LPTSTR;
#endif
#ifdef __cplusplus
extern "C"
{
#endif
#ifdef WIN32
#include <winscard.h>
#else
typedef long SCARDCONTEXT;
typedef long SCARDHANDLE;
typedef struct
{
const char *szReader;
void *pvUserData;
unsigned long dwCurrentState;
unsigned long dwEventState;
unsigned long cbAtr;
}
typedef struct _SCARD_IO_REQUEST
{
}
/*
* Tags for requesting card and reader attributes
*/
#ifdef UNICODE
#else
#endif
#endif
#ifndef USE_IPCDIR
#else
#endif
#ifndef INFINITE
#endif
/* Maximum applications */
/* Maximum contexts by application */
/* Maximum of applications contexts that pcscd can accept */
#define PCSCLITE_MAX_APPLICATIONS_CONTEXTS \
/* Maximum channels on a reader context */
/* Maximum channels on an application context */
/* Maximum readers context (a slot is count as a reader) */
/* PCSCLITE_MAX_READERS is deprecated
* use PCSCLITE_MAX_READERS_CONTEXTS instead */
/* extern int PCSCLITE_MAX_READERS __attribute__ ((deprecated)); */
#ifndef SCARD_ATR_LENGTH
#endif
/*
* Enhanced messaging has been added to accomodate newer devices which have
* more advanced capabilites, such as dedicated secure co-processors which
* can stream and encrypt data over USB. In order to used enhanced messaging
* you must define PCSCLITE_ENHANCED_MESSAGING in the framework(library),
* the daemon, and your application
*/
#ifndef PCSCLITE_ENHANCED_MESSAGING
#else
/*
* The message and buffer sizes must be multiples of 16.
* The max message size must be at least large enough
* to accomodate the transmit_struct
*/
#endif
/*
* Gets a stringified error response
*/
char *pcsc_stringify_error(long);
#ifdef __cplusplus
}
#endif
#endif