X-Git-Url: http://www.average.org/gitweb/?p=pam_pcsc_cr.git;a=blobdiff_plain;f=ykneo.c;h=9fbe87eb777477c110a0daa78f7394844336bccd;hp=79c86e5302ec3176ac5172f9752171a33b85ca33;hb=5ed9f47355ad8e28f7597d1738854b6550a02a9f;hpb=0894042d90da9c8ad0d03e875c727442e778a7d6 diff --git a/ykneo.c b/ykneo.c index 79c86e5..9fbe87e 100644 --- a/ykneo.c +++ b/ykneo.c @@ -1,3 +1,6 @@ +#ifdef HAVE_CONFIG_H +# include "config.h" +#endif #include #include #include @@ -12,7 +15,8 @@ static const BYTE cr_cmd[] = {0x00, 0x01, 0xff, 0x00}; static BYTE cr_for_slot[3] = {0xff, 0x30, 0x38}; -static int slot; +static int slot = 2; /* second by default, people tend to leave */ + /* the first with factory settings. */ static int ykn_parse_option(char *key, char *val) { @@ -30,7 +34,7 @@ static int ykn_parse_option(char *key, char *val) return 0; } -static DWORD ykn_check_atr_hb(LPTSTR str, DWORD size) +static DWORD ykn_check_atr_hb(BYTE *str, DWORD size) { if (size < strlen(NAMEPFX)) return SCARD_W_UNSUPPORTED_CARD; if (memcmp(str, NAMEPFX, strlen(NAMEPFX))) @@ -38,7 +42,7 @@ static DWORD ykn_check_atr_hb(LPTSTR str, DWORD size) return SCARD_S_SUCCESS; } -static DWORD ykn_prologue(SCARDHANDLE hCard,LPTSTR envp[]) +static DWORD ykn_prologue(SCARDHANDLE hCard) { BYTE buf[258]; DWORD rsize = sizeof(buf); @@ -52,8 +56,8 @@ static DWORD ykn_prologue(SCARDHANDLE hCard,LPTSTR envp[]) else return SCARD_W_CARD_NOT_AUTHENTICATED; } -static DWORD ykn_trancieve(SCARDHANDLE hCard,LPTSTR envp[], - LPTSTR send, DWORD sendsize, LPTSTR recv, LPDWORD recvsize_p) +static DWORD ykn_trancieve(SCARDHANDLE hCard, + BYTE *send, DWORD sendsize, BYTE *recv, LPDWORD recvsize_p) { DWORD rc; DWORD rsize = *recvsize_p + 2; @@ -74,7 +78,7 @@ static DWORD ykn_trancieve(SCARDHANDLE hCard,LPTSTR envp[], return SCARD_S_SUCCESS; } -static DWORD ykn_epilogue(SCARDHANDLE hCard,LPTSTR envp[]) +static DWORD ykn_epilogue(SCARDHANDLE hCard) { return SCardEndTransaction(hCard, SCARD_LEAVE_CARD); }