255
255
zzip_strings_t* ext, zzip_plugin_io_t io);
258
ZZIP_DIR * zzip_dir_open_ext_io(zzip_char_t* filename,
258
ZZIP_DIR * zzip_dir_open_ext_io(zzip_char_t* filename,
259
259
zzip_error_t* errcode_p,
260
260
zzip_strings_t* ext, zzip_plugin_io_t io);
262
#if defined _ZZIP_WRITE_SOURCE
263
/* ........................................................................
264
* write support is not yet implemented
267
#define ZZIP_NO_CREAT 1
269
ZZIP_DIR* zzip_dir_creat_ext_io(zzip_char_t* name, int o_mode,
270
zzip_strings_t* ext, zzip_plugin_io_t io);
271
ZZIP_DIR* zzip_dir_creat(zzip_char_t* name, int o_mode);
272
int zzip_file_mkdir(ZZIP_DIR* dir, zzip_char_t* name, int o_mode);
273
ZZIP_FILE* zzip_file_creat(ZZIP_DIR* dir, zzip_char_t* name, int o_mode);
274
zzip_ssize_t zzip_file_write(ZZIP_FILE* file,
275
const void* ptr, zzip_size_t len);
277
ZZIP_DIR* zzip_createdir(zzip_char_t* name, int o_mode);
278
zzip_ssize_t zzip_write(ZZIP_FILE* file, const void* ptr, zzip_size_t len);
279
zzip_size_t zzip_fwrite(const void* ptr, zzip_size_t len,
280
zzip_size_t multiply, ZZIP_FILE* file);
281
#ifndef zzip_savefile
282
#define zzip_savefile 0
283
#define zzip_savefile_is_null
286
#ifdef _ZZIP_NO_INLINE
287
#define zzip_mkdir(_name_,_mode_) \
288
zzip_file_mkdir((zzip_savefile),(_name_),(_mode_))
289
#define zzip_creat(_name_,_mode_) \
290
zzip_file_creat((zzip_savefile),(_name_),(_mode_))
291
#define zzip_sync() \
292
{ zzip_closedir((zzip_savefile)); (zzip_savefile) = 0; }
293
#define zzip_start(_name_,_mode_,_ext_) \
294
{ if ((zzip_savefile)) zzip_closedir((zzip_savefile));
295
zzip_savefile = zzip_dir_creat(_name_, _mode_,_ext_); }
299
_zzip_inline static int zzip_mkdir(zzip_char_t* name, int o_mode)
300
{ return zzip_file_mkdir(zzip_savefile, name, o_mode); }
301
_zzip_inline static ZZIP_FILE* zzip_creat(zzip_char_t* name, int o_mode)
302
{ return zzip_file_creat(zzip_savefile, name, o_mode); }
304
#ifndef zzip_savefile_is_null
305
_zzip_inline static void zzip_sync(void)
306
{ zzip_closedir(zzip_savefile); zzip_savefile = 0; }
307
_zzip_inline static void zzip_mkfifo(zzip_char_t* name, int o_mode)
308
{ if ((zzip_savefile)) zzip_closedir (zzip_savefile);
309
zzip_savefile = zzip_createdir(_name_,_mode_); }
311
_zzip_inline static void zzip_sync(void) {}
312
_zzip_inline static void zzip_mkfifo(zzip_char_t* name, int o_mode) {}
314
#endif /* _ZZIP_NO_INLINE */
315
#endif /* _ZZIP_WRITE_SOURCE */
262
317
#ifdef __cplusplus
266
321
#endif /* _ZZIPLIB_H */
325
* c-file-style: "stroustrup"