Add smartcard support for mac os x

git-svn-id: svn://svn.code.sf.net/p/rdesktop/code/trunk/rdesktop@1310 423420c4-83ab-492f-b58f-81f9feb106b5
This commit is contained in:
Michael Gernoth 2006-11-01 21:23:08 +00:00
parent b3eadf86a3
commit ae67d3e759
4 changed files with 30 additions and 10 deletions

View File

@ -83,14 +83,26 @@ AC_ARG_ENABLE(smartcard,
[ --enable-smartcard Enables smart-card support.
],
[
if test -n "$PKG_CONFIG"; then
PKG_CHECK_MODULES(PCSCLITE, libpcsclite, [WITH_SCARD=1], [WITH_SCARD=0])
if test x"$WITH_SCARD" = "x1"; then
SCARDOBJ="scard.o"
CFLAGS="$CFLAGS $PCSCLITE_CFLAGS"
LIBS="$LIBS $PCSCLITE_LIBS"
AC_DEFINE(WITH_SCARD)
fi
case "$OSTYPE" in
darwin*)
AC_CHECK_HEADER(PCSC/pcsclite.h, [WITH_SCARD=1], [WITH_SCARD=0])
AC_DEFINE(PCSC_OSX)
AC_DEFINE(WITH_PCSC120)
PCSCLITE_CFLAGS=""
PCSCLITE_LIBS="-framework PCSC"
;;
*)
if test -n "$PKG_CONFIG"; then
PKG_CHECK_MODULES(PCSCLITE, libpcsclite, [WITH_SCARD=1], [WITH_SCARD=0])
fi
;;
esac
if test x"$WITH_SCARD" = "x1"; then
SCARDOBJ="scard.o"
CFLAGS="$CFLAGS $PCSCLITE_CFLAGS"
LIBS="$LIBS $PCSCLITE_LIBS"
AC_DEFINE(WITH_SCARD)
fi
])

View File

@ -13,8 +13,13 @@
#include <sys/types.h>
#include <time.h>
#ifndef MAKE_PROTO
#ifdef PCSC_OSX
#include <PCSC/pcsclite.h>
#include <PCSC/winscard.h>
#else
#include <pcsclite.h>
#include <winscard.h>
#endif /* PCSC_OSX */
#include "scard.h"
/* variable segment */
@ -2079,7 +2084,7 @@ TS_SCardControl(STREAM in, STREAM out)
MYPCSC_SCARDHANDLE myHCard;
SERVER_DWORD map[3];
SERVER_DWORD dwControlCode;
char *pInBuffer, *pOutBuffer;
unsigned char *pInBuffer, *pOutBuffer;
SERVER_DWORD nInBufferSize, nOutBufferSize, nOutBufferRealSize, nBytesReturned;
MYPCSC_DWORD sc_nBytesReturned;
PMEM_HANDLE lcHandle = NULL;

View File

@ -6,7 +6,6 @@
/************************************/
#include <pthread.h>
#include <pcsclite.h>
#include "proto.h"
/*************************************************************************/

View File

@ -19,7 +19,11 @@
*/
#ifdef WITH_SCARD
#ifdef PCSC_OSX
#include <PCSC/wintypes.h>
#else
#include <wintypes.h>
#endif /* PCSC_OSX */
#else
typedef int BOOL;
#endif