summaryrefslogtreecommitdiffstats
path: root/pcsc-build.patch
diff options
context:
space:
mode:
Diffstat (limited to 'pcsc-build.patch')
-rw-r--r--pcsc-build.patch287
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";