diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..0cbbd11
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,56 @@
+# Object files
+*.o
+*.lo
+
+# Libraries
+*.lib
+*.a
+*.la
+
+# Shared objects (inc. Windows DLLs)
+*.dll
+*.so
+*.so.*
+*.dylib
+
+# Executables
+*.exe
+*.out
+*.app
+
+# archives
+pcsc-*.tgz
+
+# autotools
+.deps
+.libs
+config.cache
+config.guess
+config.h
+config.h.in
+config.log
+config.nice
+config.status
+config.sub
+configure
+configure.in
+conftest
+conftest.c
+Makefile
+Makefile.fragments
+Makefile.global
+Makefile.objects
+acinclude.m4
+aclocal.m4
+autom4te.cache
+build
+install-sh
+libtool
+ltmain.sh
+ltmain.sh.backup
+missing
+mkinstalldirs
+modules
+run-tests.php
+run-tests.log
+tmp-php.ini
diff --git a/package.xml b/package.xml
index 59a8d10..c258f20 100644
--- a/package.xml
+++ b/package.xml
@@ -40,6 +40,9 @@ http://pear.php.net/dtd/package-2.0.xsd">
+
+
+
diff --git a/pcsc.c b/pcsc.c
index 3b6f788..a0cbb9c 100644
--- a/pcsc.c
+++ b/pcsc.c
@@ -36,59 +36,11 @@ ZEND_DECLARE_MODULE_GLOBALS(pcsc);
#define TRUE 1
#endif
-/* arg info for scard_connect (accepts an optional compile-time reference parameter) */
-ZEND_BEGIN_ARG_INFO_EX(php_pcsc_scard_connect_arginfo, 0, 0, 2)
- ZEND_ARG_INFO(0, context)
- ZEND_ARG_INFO(0, reader_name)
- ZEND_ARG_INFO(0, preferred_protocol)
- ZEND_ARG_INFO(1, active_protocol)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(php_pcsc_scard_void, 0, 0, 0)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(php_pcsc_scard_context, 0, 0, 1)
- ZEND_ARG_INFO(0, context)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(php_pcsc_scard_disconnect, 0, 0, 1)
- ZEND_ARG_INFO(0, card)
- ZEND_ARG_INFO(0, disposition)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(php_pcsc_scard_transmit, 0, 0, 2)
- ZEND_ARG_INFO(0, card)
- ZEND_ARG_INFO(0, command)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(php_pcsc_scard_card, 0, 0, 1)
- ZEND_ARG_INFO(0, card)
-ZEND_END_ARG_INFO()
-
-ZEND_BEGIN_ARG_INFO_EX(php_pcsc_scard_errstr, 0, 0, 1)
- ZEND_ARG_INFO(0, errno)
-ZEND_END_ARG_INFO()
-
-/* {{{ pcsc_functions[]
- *
- * Every user visible function must have an entry in pcsc_functions[].
- */
-zend_function_entry pcsc_functions[] = {
- PHP_FE(scard_establish_context, php_pcsc_scard_void)
- PHP_FE(scard_release_context, php_pcsc_scard_context)
- PHP_FE(scard_is_valid_context, php_pcsc_scard_context)
- PHP_FE(scard_list_readers, php_pcsc_scard_context)
- PHP_FE(scard_connect, php_pcsc_scard_connect_arginfo)
- //PHP_FE(scard_reconnect, NULL)
- PHP_FE(scard_disconnect, php_pcsc_scard_disconnect)
- PHP_FE(scard_transmit, php_pcsc_scard_transmit)
- PHP_FE(scard_status, php_pcsc_scard_card)
- //PHP_FE(scard_get_status_change, NULL)
- PHP_FE(scard_last_errno, php_pcsc_scard_void)
- PHP_FE(scard_errstr, php_pcsc_scard_errstr)
- PHP_FE_END
-};
-/* }}} */
+#if PHP_VERSION_ID < 80000
+#include "pcsc_legacy_arginfo.h"
+#else
+#include "pcsc_arginfo.h"
+#endif
/* {{{ pcsc_module_entry
*/
@@ -97,7 +49,7 @@ zend_module_entry pcsc_module_entry = {
STANDARD_MODULE_HEADER,
#endif
"PC/SC",
- pcsc_functions,
+ ext_functions,
PHP_MINIT(pcsc),
PHP_MSHUTDOWN(pcsc),
NULL,
diff --git a/pcsc.stub.php b/pcsc.stub.php
new file mode 100644
index 0000000..1a973c3
--- /dev/null
+++ b/pcsc.stub.php
@@ -0,0 +1,55 @@
+