summaryrefslogtreecommitdiff
path: root/ext/zip/php_zip.h
diff options
context:
space:
mode:
authorSVN Migration <svn@php.net>2006-07-24 16:58:59 +0000
committerSVN Migration <svn@php.net>2006-07-24 16:58:59 +0000
commit664d102aa65af165bf25163b220424e67241369c (patch)
treeb646eb8123fe74905c50450b3971826383c41b75 /ext/zip/php_zip.h
parent467e129ce5aae75bc23ad69f7c4f66985382bd5a (diff)
downloadphp-git-664d102aa65af165bf25163b220424e67241369c.tar.gz
This commit was manufactured by cvs2svn to create branch 'PHP_5_2'.
Diffstat (limited to 'ext/zip/php_zip.h')
-rw-r--r--ext/zip/php_zip.h101
1 files changed, 101 insertions, 0 deletions
diff --git a/ext/zip/php_zip.h b/ext/zip/php_zip.h
new file mode 100644
index 0000000000..2b194f7583
--- /dev/null
+++ b/ext/zip/php_zip.h
@@ -0,0 +1,101 @@
+/*
+ +----------------------------------------------------------------------+
+ | PHP Version 5 |
+ +----------------------------------------------------------------------+
+ | Copyright (c) 1997-2006 The PHP Group |
+ +----------------------------------------------------------------------+
+ | This source file is subject to version 3.01 of the PHP license, |
+ | that is bundled with this package in the file LICENSE, and is |
+ | available through the world-wide-web at the following url: |
+ | http://www.php.net/license/3_01.txt. |
+ | If you did not receive a copy of the PHP license and are unable to |
+ | obtain it through the world-wide-web, please send a note to |
+ | license@php.net so we can mail you a copy immediately. |
+ +----------------------------------------------------------------------+
+ | Author: Pierre-Alain Joye <pajoye@php.net> |
+ +----------------------------------------------------------------------+
+*/
+
+/* $Id$ */
+
+#ifndef PHP_ZIP_H
+#define PHP_ZIP_H
+
+extern zend_module_entry zip_module_entry;
+#define phpext_zip_ptr &zip_module_entry
+
+#ifdef PHP_WIN32
+#define PHP_ZIP_API __declspec(dllexport)
+#else
+#define PHP_ZIP_API
+#endif
+
+#ifdef ZTS
+#include "TSRM.h"
+#endif
+
+#include "lib/zip.h"
+
+#ifndef ZEND_ENGINE_2_1
+# if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION > 0)
+# define ZEND_ENGINE_2_1
+# endif
+#endif
+
+typedef struct _ze_zip_rsrc {
+ struct zip *za;
+ int index_current;
+ int num_files;
+} zip_rsrc;
+
+typedef zip_rsrc * zip_rsrc_ptr;
+
+typedef struct _ze_zip_read_rsrc {
+ struct zip_file *zf;
+ struct zip_stat sb;
+} zip_read_rsrc;
+
+#ifdef ZEND_ENGINE_2_1
+#define ZIPARCHIVE_ME(name, arg_info, flags) ZEND_FENTRY(name, c_ziparchive_ ##name, arg_info, flags)
+#define ZIPARCHIVE_METHOD(name) ZEND_NAMED_FUNCTION(c_ziparchive_##name)
+
+/* Extends zend object */
+typedef struct _ze_zip_object {
+ zend_object zo;
+ struct zip *za;
+ int buffers_cnt;
+ char **buffers;
+ HashTable *prop_handler;
+ char *filename;
+ int filename_len;
+} ze_zip_object;
+
+zend_class_entry *zip_class_entry_ce;
+
+php_stream *php_stream_zip_opener(php_stream_wrapper *wrapper, char *path, char *mode, int options, char **opened_path, php_stream_context *context STREAMS_DC TSRMLS_DC);
+php_stream *php_stream_zip_open(char *filename, char *path, char *mode STREAMS_DC TSRMLS_DC);
+
+extern php_stream_wrapper php_stream_zip_wrapper;
+#endif
+
+PHP_FUNCTION(zip_open);
+PHP_FUNCTION(zip_read);
+PHP_FUNCTION(zip_close);
+PHP_FUNCTION(zip_entry_read);
+PHP_FUNCTION(zip_entry_filesize);
+PHP_FUNCTION(zip_entry_name);
+PHP_FUNCTION(zip_entry_compressedsize);
+PHP_FUNCTION(zip_entry_compressionmethod);
+PHP_FUNCTION(zip_entry_open);
+PHP_FUNCTION(zip_entry_close);
+
+#endif /* PHP_ZIP_H */
+
+/*
+ * Local variables:
+ * tab-width: 4
+ * c-basic-offset: 4
+ * End:
+ * vim600: noet sw=4 ts=4 fdm=marker
+ * vim<600: noet sw=4 ts=4
+ */