Rizin
unix-like reverse engineering framework and cli tools
zip_new.c File Reference
#include <stdlib.h>
#include "zipint.h"

Go to the source code of this file.

Functions

zip_t_zip_new (zip_error_t *error)
 

Function Documentation

◆ _zip_new()

zip_t* _zip_new ( zip_error_t error)

Definition at line 45 of file zip_new.c.

45  {
46  zip_t *za;
47 
48  za = (zip_t *)malloc(sizeof(struct zip));
49  if (!za) {
51  return NULL;
52  }
53 
54  if ((za->names = _zip_hash_new(error)) == NULL) {
55  free(za);
56  return NULL;
57  }
58 
59  za->src = NULL;
60  za->open_flags = 0;
62  za->flags = za->ch_flags = 0;
65  za->comment_changed = 0;
66  za->nentry = za->nentry_alloc = 0;
67  za->entry = NULL;
69  za->open_source = NULL;
70  za->progress = NULL;
71 
72  return za;
73 }
#define NULL
Definition: cris-opc.c:27
RZ_API void Ht_() free(HtName_(Ht) *ht)
Definition: ht_inc.c:130
ZIP_EXTERN void zip_error_set(zip_error_t *_Nullable, int, int)
Definition: zip_error.c:126
#define ZIP_ER_MEMORY
Definition: zip.h:119
ZIP_EXTERN void zip_error_init(zip_error_t *_Nonnull)
Definition: zip_error.c:59
void * malloc(size_t size)
Definition: malloc.c:123
Definition: zipint.h:278
zip_source_t ** open_source
Definition: zipint.h:298
unsigned int flags
Definition: zipint.h:283
unsigned int ch_flags
Definition: zipint.h:284
zip_error_t error
Definition: zipint.h:281
zip_string_t * comment_changes
Definition: zipint.h:289
zip_source_t * src
Definition: zipint.h:279
unsigned int nopen_source
Definition: zipint.h:296
zip_entry_t * entry
Definition: zipint.h:294
zip_uint64_t nentry_alloc
Definition: zipint.h:293
zip_uint64_t nentry
Definition: zipint.h:292
unsigned int open_flags
Definition: zipint.h:280
zip_string_t * comment_orig
Definition: zipint.h:288
bool comment_changed
Definition: zipint.h:290
unsigned int nopen_source_alloc
Definition: zipint.h:297
zip_hash_t * names
Definition: zipint.h:300
char * default_password
Definition: zipint.h:286
zip_progress_t * progress
Definition: zipint.h:302
void error(const char *msg)
Definition: untgz.c:593
zip_hash_t * _zip_hash_new(zip_error_t *error)
Definition: zip_hash.c:167
zip_t * za
Definition: ziptool.c:79

References _zip_hash_new(), zip::ch_flags, zip::comment_changed, zip::comment_changes, zip::comment_orig, zip::default_password, zip::entry, zip::error, error(), zip::flags, free(), malloc(), zip::names, zip::nentry, zip::nentry_alloc, zip::nopen_source, zip::nopen_source_alloc, NULL, zip::open_flags, zip::open_source, zip::progress, zip::src, za, ZIP_ER_MEMORY, zip_error_init(), and zip_error_set().

Referenced by _zip_allocate_new().