20
20
3. The names of the authors may not be used to endorse or promote
21
21
products derived from this software without specific prior
22
22
written permission.
23
-
23
+
24
24
THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS
25
25
OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
26
26
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
35
35
*/
36
36
37
37
38
- #include "main/php.h"
39
38
39
+ #include "main/php.h"
40
+
40
41
#ifdef PHP_WIN32
41
42
#ifdef PHP_ZIP_EXPORTS
42
43
# define ZIP_EXTERN __declspec(dllexport) _stdcall
48
49
#else
49
50
# define ZIP_EXTERN
50
51
#endif
52
+
51
53
52
54
53
- #ifndef ZIP_EXTERN
54
- #ifdef _WIN32
55
- #define ZIP_EXTERN __declspec(dllimport)
56
- #elif defined(__GNUC__ ) && __GNUC__ >= 4
57
- #define ZIP_EXTERN __attribute__ ((visibility ("default")))
58
- #else
59
- #define ZIP_EXTERN
55
+ #ifdef __cplusplus
56
+ extern "C" {
60
57
#endif
61
- #endif
62
-
63
-
64
58
65
- BEGIN_EXTERN_C ()
66
-
67
- #include "zipconf.h"
59
+ #include <zipconf.h>
68
60
69
61
#include <sys/types.h>
70
62
#include <stdio.h>
@@ -77,6 +69,7 @@ BEGIN_EXTERN_C()
77
69
#define ZIP_CHECKCONS 4
78
70
#define ZIP_TRUNCATE 8
79
71
72
+
80
73
/* flags for zip_name_locate, zip_fopen, zip_stat, ... */
81
74
82
75
#define ZIP_FL_NOCASE 1u /* ignore case on name lookup */
@@ -190,6 +183,29 @@ BEGIN_EXTERN_C()
190
183
#endif
191
184
#define ZIP_EM_UNKNOWN 0xffff /* unknown algorithm */
192
185
186
+ #define ZIP_OPSYS_DOS 0x00u
187
+ #define ZIP_OPSYS_AMIGA 0x01u
188
+ #define ZIP_OPSYS_OPENVMS 0x02u
189
+ #define ZIP_OPSYS_UNIX 0x03u
190
+ #define ZIP_OPSYS_VM_CMS 0x04u
191
+ #define ZIP_OPSYS_ATARI_ST 0x05u
192
+ #define ZIP_OPSYS_OS_2 0x06u
193
+ #define ZIP_OPSYS_MACINTOSH 0x07u
194
+ #define ZIP_OPSYS_Z_SYSTEM 0x08u
195
+ #define ZIP_OPSYS_CPM 0x09u
196
+ #define ZIP_OPSYS_WINDOWS_NTFS 0x0au
197
+ #define ZIP_OPSYS_MVS 0x0bu
198
+ #define ZIP_OPSYS_VSE 0x0cu
199
+ #define ZIP_OPSYS_ACORN_RISC 0x0du
200
+ #define ZIP_OPSYS_VFAT 0x0eu
201
+ #define ZIP_OPSYS_ALTERNATE_MVS 0x0fu
202
+ #define ZIP_OPSYS_BEOS 0x10u
203
+ #define ZIP_OPSYS_TANDEM 0x11u
204
+ #define ZIP_OPSYS_OS_400 0x12u
205
+ #define ZIP_OPSYS_OS_X 0x13u
206
+
207
+ #define ZIP_OPSYS_DEFAULT ZIP_OPSYS_UNIX
208
+
193
209
194
210
195
211
enum zip_source_cmd {
@@ -248,21 +264,32 @@ ZIP_EXTERN int zip_set_file_comment(struct zip *, zip_uint64_t, const char *, in
248
264
#endif
249
265
250
266
ZIP_EXTERN int zip_archive_set_tempdir (struct zip * , const char * );
251
- ZIP_EXTERN zip_int64_t zip_file_add (struct zip * , const char * , struct zip_source * , zip_flags_t );
252
- ZIP_EXTERN zip_int64_t zip_dir_add (struct zip * , const char * , zip_flags_t );
253
267
ZIP_EXTERN int zip_close (struct zip * );
254
- ZIP_EXTERN void zip_discard (struct zip * );
255
268
ZIP_EXTERN int zip_delete (struct zip * , zip_uint64_t );
256
- ZIP_EXTERN int zip_file_extra_field_delete (struct zip * , zip_uint64_t , zip_uint16_t , zip_flags_t );
257
- ZIP_EXTERN int zip_file_extra_field_delete_by_id (struct zip * , zip_uint64_t , zip_uint16_t , zip_uint16_t , zip_flags_t );
269
+ ZIP_EXTERN zip_int64_t zip_dir_add (struct zip * , const char * , zip_flags_t );
270
+ ZIP_EXTERN void zip_discard (struct zip * );
258
271
ZIP_EXTERN void zip_error_clear (struct zip * );
259
272
ZIP_EXTERN void zip_error_get (struct zip * , int * , int * );
260
273
ZIP_EXTERN int zip_error_get_sys_type (int );
261
274
ZIP_EXTERN int zip_error_to_str (char * , zip_uint64_t , int , int );
262
275
ZIP_EXTERN int zip_fclose (struct zip_file * );
263
276
ZIP_EXTERN struct zip * zip_fdopen (int , int , int * );
277
+ ZIP_EXTERN zip_int64_t zip_file_add (struct zip * , const char * , struct zip_source * , zip_flags_t );
264
278
ZIP_EXTERN void zip_file_error_clear (struct zip_file * );
265
279
ZIP_EXTERN void zip_file_error_get (struct zip_file * , int * , int * );
280
+ ZIP_EXTERN int zip_file_extra_field_delete (struct zip * , zip_uint64_t , zip_uint16_t , zip_flags_t );
281
+ ZIP_EXTERN int zip_file_extra_field_delete_by_id (struct zip * , zip_uint64_t , zip_uint16_t , zip_uint16_t , zip_flags_t );
282
+ ZIP_EXTERN int zip_file_extra_field_set (struct zip * , zip_uint64_t , zip_uint16_t , zip_uint16_t , const zip_uint8_t * , zip_uint16_t , zip_flags_t );
283
+ ZIP_EXTERN zip_int16_t zip_file_extra_fields_count (struct zip * , zip_uint64_t , zip_flags_t );
284
+ ZIP_EXTERN zip_int16_t zip_file_extra_fields_count_by_id (struct zip * , zip_uint64_t , zip_uint16_t , zip_flags_t );
285
+ ZIP_EXTERN const zip_uint8_t * zip_file_extra_field_get (struct zip * , zip_uint64_t , zip_uint16_t , zip_uint16_t * , zip_uint16_t * , zip_flags_t );
286
+ ZIP_EXTERN const zip_uint8_t * zip_file_extra_field_get_by_id (struct zip * , zip_uint64_t , zip_uint16_t , zip_uint16_t , zip_uint16_t * , zip_flags_t );
287
+ ZIP_EXTERN const char * zip_file_get_comment (struct zip * , zip_uint64_t , zip_uint32_t * , zip_flags_t );
288
+ ZIP_EXTERN int zip_file_get_external_attributes (struct zip * , zip_uint64_t , zip_flags_t , zip_uint8_t * , zip_uint32_t * );
289
+ ZIP_EXTERN int zip_file_rename (struct zip * , zip_uint64_t , const char * , zip_flags_t );
290
+ ZIP_EXTERN int zip_file_replace (struct zip * , zip_uint64_t , struct zip_source * , zip_flags_t );
291
+ ZIP_EXTERN int zip_file_set_comment (struct zip * , zip_uint64_t , const char * , zip_uint16_t , zip_flags_t );
292
+ ZIP_EXTERN int zip_file_set_external_attributes (struct zip * , zip_uint64_t , zip_flags_t , zip_uint8_t , zip_uint32_t );
266
293
ZIP_EXTERN const char * zip_file_strerror (struct zip_file * );
267
294
ZIP_EXTERN struct zip_file * zip_fopen (struct zip * , const char * , zip_flags_t );
268
295
ZIP_EXTERN struct zip_file * zip_fopen_encrypted (struct zip * , const char * , zip_flags_t , const char * );
@@ -271,23 +298,14 @@ ZIP_EXTERN struct zip_file *zip_fopen_index_encrypted(struct zip *, zip_uint64_t
271
298
ZIP_EXTERN zip_int64_t zip_fread (struct zip_file * , void * , zip_uint64_t );
272
299
ZIP_EXTERN const char * zip_get_archive_comment (struct zip * , int * , zip_flags_t );
273
300
ZIP_EXTERN int zip_get_archive_flag (struct zip * , zip_flags_t , zip_flags_t );
274
- ZIP_EXTERN const char * zip_file_get_comment (struct zip * , zip_uint64_t , zip_uint32_t * , zip_flags_t );
275
- ZIP_EXTERN const zip_uint8_t * zip_file_extra_field_get (struct zip * , zip_uint64_t , zip_uint16_t , zip_uint16_t * , zip_uint16_t * , zip_flags_t );
276
- ZIP_EXTERN const zip_uint8_t * zip_file_extra_field_get_by_id (struct zip * , zip_uint64_t , zip_uint16_t , zip_uint16_t , zip_uint16_t * , zip_flags_t );
277
- ZIP_EXTERN zip_int16_t zip_file_extra_fields_count (struct zip * , zip_uint64_t , zip_flags_t );
278
- ZIP_EXTERN zip_int16_t zip_file_extra_fields_count_by_id (struct zip * , zip_uint64_t , zip_uint16_t , zip_flags_t );
279
301
ZIP_EXTERN const char * zip_get_name (struct zip * , zip_uint64_t , zip_flags_t );
280
302
ZIP_EXTERN zip_int64_t zip_get_num_entries (struct zip * , zip_flags_t );
281
303
ZIP_EXTERN zip_int64_t zip_name_locate (struct zip * , const char * , zip_flags_t );
282
304
ZIP_EXTERN struct zip * zip_open (const char * , int , int * );
283
- ZIP_EXTERN int zip_file_rename (struct zip * , zip_uint64_t , const char * , zip_flags_t );
284
- ZIP_EXTERN int zip_file_replace (struct zip * , zip_uint64_t , struct zip_source * , zip_flags_t );
285
305
ZIP_EXTERN int zip_set_archive_comment (struct zip * , const char * , zip_uint16_t );
286
306
ZIP_EXTERN int zip_set_archive_flag (struct zip * , zip_flags_t , int );
287
307
ZIP_EXTERN int zip_set_default_password (struct zip * , const char * );
288
- ZIP_EXTERN int zip_file_set_comment (struct zip * , zip_uint64_t , const char * , zip_uint16_t , zip_flags_t );
289
308
ZIP_EXTERN int zip_set_file_compression (struct zip * , zip_uint64_t , zip_int32_t , zip_uint32_t );
290
- ZIP_EXTERN int zip_file_extra_field_set (struct zip * , zip_uint64_t , zip_uint16_t , zip_uint16_t , const zip_uint8_t * , zip_uint16_t , zip_flags_t );
291
309
ZIP_EXTERN struct zip_source * zip_source_buffer (struct zip * , const void * , zip_uint64_t , int );
292
310
ZIP_EXTERN struct zip_source * zip_source_file (struct zip * , const char * , zip_uint64_t , zip_int64_t );
293
311
ZIP_EXTERN struct zip_source * zip_source_filep (struct zip * , FILE * , zip_uint64_t , zip_int64_t );
@@ -302,6 +320,8 @@ ZIP_EXTERN int zip_unchange(struct zip *, zip_uint64_t);
302
320
ZIP_EXTERN int zip_unchange_all (struct zip * );
303
321
ZIP_EXTERN int zip_unchange_archive (struct zip * );
304
322
323
+ #ifdef __cplusplus
324
+ }
325
+ #endif
305
326
306
- END_EXTERN_C ();
307
327
#endif /* _HAD_ZIP_H */
0 commit comments