diff options
Diffstat (limited to 'pcsc-build.patch')
| -rw-r--r-- | pcsc-build.patch | 287 | 
1 files changed, 287 insertions, 0 deletions
diff --git a/pcsc-build.patch b/pcsc-build.patch new file mode 100644 index 0000000..813669d --- /dev/null +++ b/pcsc-build.patch @@ -0,0 +1,287 @@ +--- pecl/pcsc/trunk/config.m4	2014/05/04 14:56:27	333470 ++++ pecl/pcsc/trunk/config.m4	2014/05/04 17:05:12	333471 +@@ -29,7 +29,7 @@ +   AC_MSG_RESULT($PCSC_DIR) +   PHP_ADD_INCLUDE($PCSC_DIR/include/PCSC/) +   dnl PHP_EVAL_LIBLINE($PCSC_LIBS, PCSC_SHARED_LIBADD) +-  PHP_ADD_LIBRARY_WITH_PATH(pcsclite, "$PCSC_DIR/lib/", PCSC_SHARED_LIBADD) ++  PHP_ADD_LIBRARY_WITH_PATH(pcsclite, "$PCSC_DIR/$PHP_LIBDIR", PCSC_SHARED_LIBADD) +    +   dnl Finally, tell the build system about the extension and what files are needed +   PHP_NEW_EXTENSION(pcsc, pcsc.c, $ext_shared) +--- pecl/pcsc/trunk/config.m4	2014/05/04 17:05:12	333471 ++++ pecl/pcsc/trunk/config.m4	2014/05/04 17:20:35	333472 +@@ -33,7 +33,7 @@ +    +   dnl Finally, tell the build system about the extension and what files are needed +   PHP_NEW_EXTENSION(pcsc, pcsc.c, $ext_shared) +-  PHP_INSTALL_HEADERS([php_pcsc.h]) ++  PHP_INSTALL_HEADERS([ext/pcsc], [php_pcsc.h]) +   PHP_SUBST(PCSC_SHARED_LIBADD) + fi +  +--- pecl/pcsc/trunk/pcsc.c	2014/05/04 17:20:35	333472 ++++ pecl/pcsc/trunk/pcsc.c	2014/05/04 17:50:17	333473 +@@ -135,71 +135,119 @@ + PHP_MINIT_FUNCTION(pcsc) + { +   /* Return Codes */ ++#ifdef SCARD_E_BAD_SEEK +   REGISTER_PCSC_CONSTANT(SCARD_E_BAD_SEEK); ++#endif +   REGISTER_PCSC_CONSTANT(SCARD_E_CANCELLED); +   REGISTER_PCSC_CONSTANT(SCARD_E_CANT_DISPOSE); +   REGISTER_PCSC_CONSTANT(SCARD_E_CARD_UNSUPPORTED); ++#ifdef SCARD_E_CERTIFICATE_UNAVAILABLE +   REGISTER_PCSC_CONSTANT(SCARD_E_CERTIFICATE_UNAVAILABLE); ++#endif ++#ifdef SCARD_E_COMM_DATA_LOST +   REGISTER_PCSC_CONSTANT(SCARD_E_COMM_DATA_LOST); ++#endif ++#ifdef SCARD_E_DIR_NOT_FOUND +   REGISTER_PCSC_CONSTANT(SCARD_E_DIR_NOT_FOUND); ++#endif +   REGISTER_PCSC_CONSTANT(SCARD_E_DUPLICATE_READER); ++#ifdef SCARD_E_FILE_NOT_FOUND +   REGISTER_PCSC_CONSTANT(SCARD_E_FILE_NOT_FOUND); ++#endif ++#ifdef SCARD_E_ICC_CREATEORDER +   REGISTER_PCSC_CONSTANT(SCARD_E_ICC_CREATEORDER); ++#endif ++#ifdef SCARD_E_ICC_INSTALLATION +   REGISTER_PCSC_CONSTANT(SCARD_E_ICC_INSTALLATION); ++#endif +   REGISTER_PCSC_CONSTANT(SCARD_E_INSUFFICIENT_BUFFER); +   REGISTER_PCSC_CONSTANT(SCARD_E_INVALID_ATR); ++#ifdef SCARD_E_INVALID_CHV +   REGISTER_PCSC_CONSTANT(SCARD_E_INVALID_CHV); ++#endif +   REGISTER_PCSC_CONSTANT(SCARD_E_INVALID_HANDLE); +   REGISTER_PCSC_CONSTANT(SCARD_E_INVALID_PARAMETER); +   REGISTER_PCSC_CONSTANT(SCARD_E_INVALID_TARGET); +   REGISTER_PCSC_CONSTANT(SCARD_E_INVALID_VALUE); ++#ifdef SCARD_E_NO_ACCESS +   REGISTER_PCSC_CONSTANT(SCARD_E_NO_ACCESS); ++#endif ++#ifdef SCARD_E_NO_DIR +   REGISTER_PCSC_CONSTANT(SCARD_E_NO_DIR); ++#endif ++#ifdef SCARD_E_NO_FILE +   REGISTER_PCSC_CONSTANT(SCARD_E_NO_FILE); ++#endif ++#ifdef SCARD_E_NO_KEY_CONTAINER +   REGISTER_PCSC_CONSTANT(SCARD_E_NO_KEY_CONTAINER); ++#endif +   REGISTER_PCSC_CONSTANT(SCARD_E_NO_MEMORY); +   REGISTER_PCSC_CONSTANT(SCARD_E_NO_READERS_AVAILABLE); +   REGISTER_PCSC_CONSTANT(SCARD_E_NO_SERVICE); +   REGISTER_PCSC_CONSTANT(SCARD_E_NO_SMARTCARD); ++#ifdef SCARD_E_NO_SUCH_CERTIFICATE +   REGISTER_PCSC_CONSTANT(SCARD_E_NO_SUCH_CERTIFICATE); ++#endif +   REGISTER_PCSC_CONSTANT(SCARD_E_NOT_READY); +   REGISTER_PCSC_CONSTANT(SCARD_E_NOT_TRANSACTED); +   REGISTER_PCSC_CONSTANT(SCARD_E_PCI_TOO_SMALL); +   REGISTER_PCSC_CONSTANT(SCARD_E_PROTO_MISMATCH); +   REGISTER_PCSC_CONSTANT(SCARD_E_READER_UNAVAILABLE); +   REGISTER_PCSC_CONSTANT(SCARD_E_READER_UNSUPPORTED); ++#ifdef SCARD_E_SERVER_TOO_BUSY +   REGISTER_PCSC_CONSTANT(SCARD_E_SERVER_TOO_BUSY); ++#endif +   REGISTER_PCSC_CONSTANT(SCARD_E_SERVICE_STOPPED); +   REGISTER_PCSC_CONSTANT(SCARD_E_SHARING_VIOLATION); +   REGISTER_PCSC_CONSTANT(SCARD_E_SYSTEM_CANCELLED); +   REGISTER_PCSC_CONSTANT(SCARD_E_TIMEOUT); ++#ifdef SCARD_E_UNEXPECTED +   REGISTER_PCSC_CONSTANT(SCARD_E_UNEXPECTED); ++#endif +   REGISTER_PCSC_CONSTANT(SCARD_E_UNKNOWN_CARD); +   REGISTER_PCSC_CONSTANT(SCARD_E_UNKNOWN_READER); ++#ifdef SCARD_E_UNKNOWN_RES_MNG +   REGISTER_PCSC_CONSTANT(SCARD_E_UNKNOWN_RES_MNG); ++#endif +   REGISTER_PCSC_CONSTANT(SCARD_E_UNSUPPORTED_FEATURE); ++#ifdef SCARD_E_WRITE_TOO_MANY +   REGISTER_PCSC_CONSTANT(SCARD_E_WRITE_TOO_MANY); ++#endif +    +   REGISTER_PCSC_CONSTANT(SCARD_F_COMM_ERROR); +   REGISTER_PCSC_CONSTANT(SCARD_F_INTERNAL_ERROR); +   REGISTER_PCSC_CONSTANT(SCARD_F_UNKNOWN_ERROR); +   REGISTER_PCSC_CONSTANT(SCARD_F_WAITED_TOO_LONG); +    ++#ifdef SCARD_P_SHUTDOWN +   REGISTER_PCSC_CONSTANT(SCARD_P_SHUTDOWN); ++#endif +    +   REGISTER_PCSC_CONSTANT(SCARD_S_SUCCESS); +    ++#ifdef SCARD_W_CANCELLED_BY_USER +   REGISTER_PCSC_CONSTANT(SCARD_W_CANCELLED_BY_USER); ++#endif ++#ifdef SCARD_W_CARD_NOT_AUTHENTICATED +   REGISTER_PCSC_CONSTANT(SCARD_W_CARD_NOT_AUTHENTICATED); ++#endif ++#ifdef SCARD_W_CHV_BLOCKED +   REGISTER_PCSC_CONSTANT(SCARD_W_CHV_BLOCKED); ++#endif ++#ifdef SCARD_W_EOF +   REGISTER_PCSC_CONSTANT(SCARD_W_EOF); ++#endif +   REGISTER_PCSC_CONSTANT(SCARD_W_REMOVED_CARD); +   REGISTER_PCSC_CONSTANT(SCARD_W_RESET_CARD); ++#ifdef SCARD_W_SECURITY_VIOLATION +   REGISTER_PCSC_CONSTANT(SCARD_W_SECURITY_VIOLATION); ++#endif +   REGISTER_PCSC_CONSTANT(SCARD_W_UNPOWERED_CARD); +   REGISTER_PCSC_CONSTANT(SCARD_W_UNRESPONSIVE_CARD); +   REGISTER_PCSC_CONSTANT(SCARD_W_UNSUPPORTED_CARD); ++#ifdef SCARD_W_WRONG_CHV +   REGISTER_PCSC_CONSTANT(SCARD_W_WRONG_CHV); ++#endif +  +   /* Protocols */ +   REGISTER_PCSC_CONSTANT(SCARD_PROTOCOL_RAW); +@@ -256,48 +304,80 @@ + /* map error codes to string */ + static char* php_pcsc_error_to_string(DWORD dwRC) { + 	switch(dwRC) { ++#ifdef SCARD_E_BAD_SEEK + 		case SCARD_E_BAD_SEEK: return "SCARD_E_BAD_SEEK"; ++#endif + 		case SCARD_E_CANCELLED: return "SCARD_E_CANCELLED"; + 		case SCARD_E_CANT_DISPOSE: return "SCARD_E_CANT_DISPOSE"; + 		case SCARD_E_CARD_UNSUPPORTED: return "SCARD_E_CARD_UNSUPPORTED"; ++#ifdef SCARD_E_CERTIFICATE_UNAVAILABLE + 		case SCARD_E_CERTIFICATE_UNAVAILABLE: return "SCARD_E_CERTIFICATE_UNAVAILABLE"; ++#endif ++#ifdef SCARD_E_COMM_DATA_LOST + 		case SCARD_E_COMM_DATA_LOST: return "SCARD_E_COMM_DATA_LOST"; ++#endif ++#ifdef SCARD_E_DIR_NOT_FOUND + 		case SCARD_E_DIR_NOT_FOUND: return "SCARD_E_DIR_NOT_FOUND"; ++#endif + 		case SCARD_E_DUPLICATE_READER: return "SCARD_E_DUPLICATE_READER"; ++#ifdef SCARD_E_FILE_NOT_FOUND + 		case SCARD_E_FILE_NOT_FOUND: return "SCARD_E_FILE_NOT_FOUND"; ++#endif ++#ifdef SCARD_E_ICC_CREATEORDER + 		case SCARD_E_ICC_CREATEORDER: return "SCARD_E_ICC_CREATEORDER"; ++#endif ++#ifdef SCARD_E_ICC_INSTALLATION + 		case SCARD_E_ICC_INSTALLATION: return "SCARD_E_ICC_INSTALLATION"; ++#endif + 		case SCARD_E_INSUFFICIENT_BUFFER: return "SCARD_E_INSUFFICIENT_BUFFER"; + 		case SCARD_E_INVALID_ATR: return "SCARD_E_INVALID_ATR"; ++#ifdef SCARD_E_INVALID_CHV + 		case SCARD_E_INVALID_CHV: return "SCARD_E_INVALID_CHV"; ++#endif + 		case SCARD_E_INVALID_HANDLE: return "SCARD_E_INVALID_HANDLE"; + 		case SCARD_E_INVALID_PARAMETER: return "SCARD_E_INVALID_PARAMETER"; + 		case SCARD_E_INVALID_TARGET: return "SCARD_E_INVALID_TARGET"; + 		case SCARD_E_INVALID_VALUE: return "SCARD_E_INVALID_VALUE"; ++#ifdef SCARD_E_NO_ACCESS + 		case SCARD_E_NO_ACCESS: return "SCARD_E_NO_ACCESS"; ++#endif ++#ifdef SCARD_E_NO_DIR + 		case SCARD_E_NO_DIR: return "SCARD_E_NO_DIR"; ++#endif ++#ifdef SCARD_E_NO_FILE + 		case SCARD_E_NO_FILE: return "SCARD_E_NO_FILE"; ++#endif ++#ifdef SCARD_E_NO_KEY_CONTAINER + 		case SCARD_E_NO_KEY_CONTAINER: return "SCARD_E_NO_KEY_CONTAINER"; ++#endif + 		case SCARD_E_NO_MEMORY: return "SCARD_E_NO_MEMORY"; + 		case SCARD_E_NO_READERS_AVAILABLE: return "SCARD_E_NO_READERS_AVAILABLE"; + 		case SCARD_E_NO_SERVICE: return "SCARD_E_NO_SERVICE"; + 		case SCARD_E_NO_SMARTCARD: return "SCARD_E_NO_SMARTCARD"; ++#ifdef SCARD_E_NO_ACCESS + 		case SCARD_E_NO_SUCH_CERTIFICATE: return "SCARD_E_NO_SUCH_CERTIFICATE"; ++#endif + 		case SCARD_E_NOT_READY: return "SCARD_E_NOT_READY"; + 		case SCARD_E_NOT_TRANSACTED: return "SCARD_E_NOT_TRANSACTED"; + 		case SCARD_E_PCI_TOO_SMALL: return "SCARD_E_PCI_TOO_SMALL"; + 		case SCARD_E_PROTO_MISMATCH: return "SCARD_E_PROTO_MISMATCH"; + 		case SCARD_E_READER_UNAVAILABLE: return "SCARD_E_READER_UNAVAILABLE"; + 		case SCARD_E_READER_UNSUPPORTED: return "SCARD_E_READER_UNSUPPORTED"; ++#ifdef SCARD_E_SERVER_TOO_BUSY + 		case SCARD_E_SERVER_TOO_BUSY: return "SCARD_E_SERVER_TOO_BUSY"; ++#endif + 		case SCARD_E_SERVICE_STOPPED: return "SCARD_E_SERVICE_STOPPED"; + 		case SCARD_E_SHARING_VIOLATION: return "SCARD_E_SHARING_VIOLATION"; + 		case SCARD_E_SYSTEM_CANCELLED: return "SCARD_E_SYSTEM_CANCELLED"; + 		case SCARD_E_TIMEOUT: return "SCARD_E_TIMEOUT"; +-		case SCARD_E_UNEXPECTED: return "SCARD_E_UNEXPECTED"; ++#ifdef SCARD_E_SERVER_TOO_BUSY ++		case SCARD_E_SERVER_TOO_BUSY: return "SCARD_E_UNEXPECTED"; ++#endif + 		case SCARD_E_UNKNOWN_CARD: return "SCARD_E_UNKNOWN_CARD"; + 		case SCARD_E_UNKNOWN_READER: return "SCARD_E_UNKNOWN_READER"; ++#ifdef SCARD_E_UNKNOWN_RES_MNG + 		case SCARD_E_UNKNOWN_RES_MNG: return "SCARD_E_UNKNOWN_RES_MNG"; ++#endif + /* apparently E_UNEXPECTED and E_UNSUPPORTED are defined  +    by a buggy header file on Linux, causing a "double used constant" +    error. Just leave this out on Linux, then. +@@ -305,14 +385,20 @@ + #ifdef PHP_WIN32 +                 case SCARD_E_UNSUPPORTED_FEATURE: return "SCARD_E_UNSUPPORTED_FEATURE"; + #endif ++#ifdef SCARD_E_WRITE_TOO_MANY + 		case SCARD_E_WRITE_TOO_MANY: return "SCARD_E_WRITE_TOO_MANY"; ++#endif + 		case SCARD_F_COMM_ERROR: return "SCARD_E_WRITE_TOO_MANY"; + 		case SCARD_F_INTERNAL_ERROR: return "SCARD_F_INTERNAL_ERROR"; + 		case SCARD_F_UNKNOWN_ERROR: return "SCARD_F_UNKNOWN_ERROR"; + 		case SCARD_F_WAITED_TOO_LONG: return "SCARD_F_WAITED_TOO_LONG"; ++#ifdef SCARD_P_SHUTDOWN + 		case SCARD_P_SHUTDOWN: return "SCARD_P_SHUTDOWN"; ++#endif + 		case SCARD_S_SUCCESS: return "SCARD_S_SUCCESS"; ++#ifdef SCARD_W_CANCELLED_BY_USER + 		case SCARD_W_CANCELLED_BY_USER: return "SCARD_W_CANCELLED_BY_USER"; ++#endif + #ifdef SCARD_W_CACHE_ITEM_NOT_FOUND + 		case SCARD_W_CACHE_ITEM_NOT_FOUND: return "SCARD_W_CACHE_ITEM_NOT_FOUND"; + #endif +@@ -322,16 +408,26 @@ + #ifdef SCARD_W_CACHE_ITEM_TOO_BIG + 		case SCARD_W_CACHE_ITEM_TOO_BIG: return "SCARD_W_CACHE_ITEM_TOO_BIG"; + #endif ++#ifdef SCARD_W_CARD_NOT_AUTHENTICATED + 		case SCARD_W_CARD_NOT_AUTHENTICATED: return "SCARD_W_CARD_NOT_AUTHENTICATED"; ++#endif ++#ifdef SCARD_W_CHV_BLOCKED + 		case SCARD_W_CHV_BLOCKED: return "SCARD_W_CHV_BLOCKED"; ++#endif ++#ifdef SCARD_W_EOF + 		case SCARD_W_EOF: return "SCARD_W_EOF"; ++#endif + 		case SCARD_W_REMOVED_CARD: return "SCARD_W_REMOVED_CARD"; + 		case SCARD_W_RESET_CARD: return "SCARD_W_RESET_CARD"; ++#ifdef SCARD_W_SECURITY_VIOLATION + 		case SCARD_W_SECURITY_VIOLATION: return "SCARD_W_SECURITY_VIOLATION"; ++#endif + 		case SCARD_W_UNPOWERED_CARD: return "SCARD_W_UNPOWERED_CARD"; + 		case SCARD_W_UNRESPONSIVE_CARD: return "SCARD_W_UNRESPONSIVE_CARD"; + 		case SCARD_W_UNSUPPORTED_CARD: return "SCARD_W_UNSUPPORTED_CARD"; ++#ifdef SCARD_W_WRONG_CHV + 		case SCARD_W_WRONG_CHV: return "SCARD_W_WRONG_CHV"; ++#endif + 		default: return "Unknown"; + 	} + } +--- pecl/pcsc/trunk/pcsc.c	2014/05/04 17:50:17	333473 ++++ pecl/pcsc/trunk/pcsc.c	2014/05/04 17:53:25	333474 +@@ -370,8 +370,8 @@ + 		case SCARD_E_SHARING_VIOLATION: return "SCARD_E_SHARING_VIOLATION"; + 		case SCARD_E_SYSTEM_CANCELLED: return "SCARD_E_SYSTEM_CANCELLED"; + 		case SCARD_E_TIMEOUT: return "SCARD_E_TIMEOUT"; +-#ifdef SCARD_E_SERVER_TOO_BUSY +-		case SCARD_E_SERVER_TOO_BUSY: return "SCARD_E_UNEXPECTED"; ++#ifdef SCARD_E_UNEXPECTED ++		case SCARD_E_UNEXPECTED: return "SCARD_E_UNEXPECTED"; + #endif + 		case SCARD_E_UNKNOWN_CARD: return "SCARD_E_UNKNOWN_CARD"; + 		case SCARD_E_UNKNOWN_READER: return "SCARD_E_UNKNOWN_READER";  | 
