ef                429 ext/zip/lib/zip_dirent.c 	zip_uint8_t *ef = _zip_read_data(bufp ? &cur : NULL, fp, ef_len, 0, error);
ef                431 ext/zip/lib/zip_dirent.c 	if (ef == NULL)
ef                433 ext/zip/lib/zip_dirent.c 	if ((zde->extra_fields=_zip_ef_parse(ef, ef_len, local ? ZIP_EF_LOCAL : ZIP_EF_CENTRAL, error)) == NULL) {
ef                434 ext/zip/lib/zip_dirent.c 	    free(ef);
ef                437 ext/zip/lib/zip_dirent.c 	free(ef);
ef                462 ext/zip/lib/zip_dirent.c 	const zip_uint8_t *ef = _zip_ef_get_by_id(zde->extra_fields, &got_len, ZIP_EF_ZIP64, 0, local ? ZIP_EF_LOCAL : ZIP_EF_CENTRAL, error);
ef                464 ext/zip/lib/zip_dirent.c 	if (ef == NULL)
ef                480 ext/zip/lib/zip_dirent.c 	    zde->uncomp_size = _zip_read8(&ef);
ef                482 ext/zip/lib/zip_dirent.c 	    ef += 8;
ef                484 ext/zip/lib/zip_dirent.c 	    zde->comp_size = _zip_read8(&ef);
ef                487 ext/zip/lib/zip_dirent.c 		zde->offset = _zip_read8(&ef);
ef                489 ext/zip/lib/zip_dirent.c 		zde->disk_number = _zip_read4(&ef);
ef                518 ext/zip/lib/zip_dirent.c     const zip_uint8_t *ef = _zip_ef_get_by_id(de->extra_fields, &ef_len, id, 0, ZIP_EF_BOTH, NULL);
ef                520 ext/zip/lib/zip_dirent.c     if (ef == NULL || ef_len < 5 || ef[0] != 1)
ef                523 ext/zip/lib/zip_dirent.c     ef++;
ef                524 ext/zip/lib/zip_dirent.c     ef_crc = _zip_read4(&ef);
ef                527 ext/zip/lib/zip_dirent.c 	struct zip_string *ef_str = _zip_string_new(ef, ef_len-5, ZIP_ENCODING_UTF8_KNOWN, NULL);
ef                640 ext/zip/lib/zip_dirent.c     struct zip_extra_field *ef;
ef                645 ext/zip/lib/zip_dirent.c     ef = NULL;
ef                661 ext/zip/lib/zip_dirent.c 	    ef = _zip_ef_utf8(ZIP_EF_UTF_8_NAME, de->filename, error);
ef                662 ext/zip/lib/zip_dirent.c 	    if (ef == NULL)
ef                668 ext/zip/lib/zip_dirent.c 		_zip_ef_free(ef);
ef                671 ext/zip/lib/zip_dirent.c 	    ef2->next = ef;
ef                672 ext/zip/lib/zip_dirent.c 	    ef = ef2;
ef                696 ext/zip/lib/zip_dirent.c 	ef64->next = ef;
ef                697 ext/zip/lib/zip_dirent.c 	ef = ef64;
ef                727 ext/zip/lib/zip_dirent.c     _zip_write2(_zip_ef_size(de->extra_fields, flags) + _zip_ef_size(ef, ZIP_EF_BOTH), fp);
ef                743 ext/zip/lib/zip_dirent.c     if (ef)
ef                744 ext/zip/lib/zip_dirent.c 	_zip_ef_write(ef, ZIP_EF_BOTH, fp);
ef                753 ext/zip/lib/zip_dirent.c     _zip_ef_free(ef);
ef                794 ext/zip/lib/zip_dirent.c     struct zip_extra_field *ef;
ef                813 ext/zip/lib/zip_dirent.c     ef = _zip_ef_new(id, (zip_uint16_t)(p-data), data, ZIP_EF_BOTH);
ef                815 ext/zip/lib/zip_dirent.c     return ef;
ef                 45 ext/zip/lib/zip_extra_field.c _zip_ef_clone(const struct zip_extra_field *ef, struct zip_error *error)
ef                 51 ext/zip/lib/zip_extra_field.c     while (ef) {
ef                 52 ext/zip/lib/zip_extra_field.c         if ((def=_zip_ef_new(ef->id, ef->size, ef->data, ef->flags)) == NULL) {
ef                 64 ext/zip/lib/zip_extra_field.c 	ef = ef->next;
ef                 72 ext/zip/lib/zip_extra_field.c _zip_ef_delete_by_id(struct zip_extra_field *ef, zip_uint16_t id, zip_uint16_t id_idx, zip_flags_t flags)
ef                 78 ext/zip/lib/zip_extra_field.c     head = ef;
ef                 80 ext/zip/lib/zip_extra_field.c     for (; ef; ef=(prev ? prev->next : head)) {
ef                 81 ext/zip/lib/zip_extra_field.c 	if ((ef->flags & flags & ZIP_EF_BOTH) && ((ef->id == id) || (id == ZIP_EXTRA_FIELD_ALL))) {
ef                 83 ext/zip/lib/zip_extra_field.c 		ef->flags &= ~(flags & ZIP_EF_BOTH);
ef                 84 ext/zip/lib/zip_extra_field.c 		if ((ef->flags & ZIP_EF_BOTH) == 0) {
ef                 86 ext/zip/lib/zip_extra_field.c 			prev->next = ef->next;
ef                 88 ext/zip/lib/zip_extra_field.c 			head = ef->next;
ef                 89 ext/zip/lib/zip_extra_field.c 		    ef->next = NULL;
ef                 90 ext/zip/lib/zip_extra_field.c 		    _zip_ef_free(ef);
ef                101 ext/zip/lib/zip_extra_field.c 	prev = ef;
ef                111 ext/zip/lib/zip_extra_field.c _zip_ef_free(struct zip_extra_field *ef)
ef                115 ext/zip/lib/zip_extra_field.c     while (ef) {
ef                116 ext/zip/lib/zip_extra_field.c 	ef2 = ef->next;
ef                117 ext/zip/lib/zip_extra_field.c 	free(ef->data);
ef                118 ext/zip/lib/zip_extra_field.c 	free(ef);
ef                119 ext/zip/lib/zip_extra_field.c 	ef = ef2;
ef                126 ext/zip/lib/zip_extra_field.c _zip_ef_get_by_id(const struct zip_extra_field *ef, zip_uint16_t *lenp, zip_uint16_t id, zip_uint16_t id_idx, zip_flags_t flags, struct zip_error *error)
ef                133 ext/zip/lib/zip_extra_field.c     for (; ef; ef=ef->next) {
ef                134 ext/zip/lib/zip_extra_field.c 	if (ef->id == id && (ef->flags & flags & ZIP_EF_BOTH)) {
ef                141 ext/zip/lib/zip_extra_field.c 		*lenp = ef->size;
ef                142 ext/zip/lib/zip_extra_field.c 	    if (ef->size > 0)
ef                143 ext/zip/lib/zip_extra_field.c 		return ef->data;
ef                194 ext/zip/lib/zip_extra_field.c     struct zip_extra_field *ef;
ef                196 ext/zip/lib/zip_extra_field.c     if ((ef=(struct zip_extra_field *)malloc(sizeof(*ef))) == NULL)
ef                199 ext/zip/lib/zip_extra_field.c     ef->next = NULL;
ef                200 ext/zip/lib/zip_extra_field.c     ef->flags = flags;
ef                201 ext/zip/lib/zip_extra_field.c     ef->id = id;
ef                202 ext/zip/lib/zip_extra_field.c     ef->size = size;
ef                204 ext/zip/lib/zip_extra_field.c 	if ((ef->data=(zip_uint8_t *)_zip_memdup(data, size, NULL)) == NULL) {
ef                205 ext/zip/lib/zip_extra_field.c 	    free(ef);
ef                210 ext/zip/lib/zip_extra_field.c 	ef->data = NULL;
ef                212 ext/zip/lib/zip_extra_field.c     return ef;
ef                220 ext/zip/lib/zip_extra_field.c     struct zip_extra_field *ef, *ef2, *ef_head;
ef                248 ext/zip/lib/zip_extra_field.c 	    ef->next = ef2;
ef                249 ext/zip/lib/zip_extra_field.c 	    ef = ef2;
ef                252 ext/zip/lib/zip_extra_field.c 	    ef_head = ef = ef2;
ef                261 ext/zip/lib/zip_extra_field.c _zip_ef_remove_internal(struct zip_extra_field *ef)
ef                266 ext/zip/lib/zip_extra_field.c     ef_head = ef;
ef                269 ext/zip/lib/zip_extra_field.c     while (ef) {
ef                270 ext/zip/lib/zip_extra_field.c         if (ZIP_EF_IS_INTERNAL(ef->id)) {
ef                271 ext/zip/lib/zip_extra_field.c             next = ef->next;
ef                272 ext/zip/lib/zip_extra_field.c             if (ef_head == ef)
ef                274 ext/zip/lib/zip_extra_field.c             ef->next = NULL;
ef                275 ext/zip/lib/zip_extra_field.c             _zip_ef_free(ef);
ef                278 ext/zip/lib/zip_extra_field.c             ef = next;
ef                281 ext/zip/lib/zip_extra_field.c             prev = ef;
ef                282 ext/zip/lib/zip_extra_field.c             ef = ef->next;
ef                291 ext/zip/lib/zip_extra_field.c _zip_ef_size(const struct zip_extra_field *ef, zip_flags_t flags)
ef                296 ext/zip/lib/zip_extra_field.c     for (; ef; ef=ef->next) {
ef                297 ext/zip/lib/zip_extra_field.c 	if (ef->flags & flags & ZIP_EF_BOTH)
ef                298 ext/zip/lib/zip_extra_field.c 	    size += 4+ef->size;
ef                307 ext/zip/lib/zip_extra_field.c _zip_ef_write(const struct zip_extra_field *ef, zip_flags_t flags, FILE *f)
ef                309 ext/zip/lib/zip_extra_field.c     for (; ef; ef=ef->next) {
ef                310 ext/zip/lib/zip_extra_field.c 	if (ef->flags & flags & ZIP_EF_BOTH) {
ef                311 ext/zip/lib/zip_extra_field.c 	    _zip_write2(ef->id, f);
ef                312 ext/zip/lib/zip_extra_field.c 	    _zip_write2(ef->size, f);
ef                313 ext/zip/lib/zip_extra_field.c 	    if (ef->size > 0)
ef                314 ext/zip/lib/zip_extra_field.c 		fwrite(ef->data, ef->size, 1, f);
ef                355 ext/zip/lib/zip_extra_field.c 	struct zip_extra_field *ef;
ef                368 ext/zip/lib/zip_extra_field.c 	if ((ef=_zip_ef_parse(ef_raw, ef_len, ZIP_EF_LOCAL, &za->error)) == NULL) {
ef                374 ext/zip/lib/zip_extra_field.c         ef = _zip_ef_remove_internal(ef);
ef                375 ext/zip/lib/zip_extra_field.c 	e->orig->extra_fields = _zip_ef_merge(e->orig->extra_fields, ef);
ef                114 ext/zip/lib/zip_extra_field_api.c     struct zip_extra_field *ef;
ef                130 ext/zip/lib/zip_extra_field_api.c     for (ef=de->extra_fields; ef; ef=ef->next) {
ef                131 ext/zip/lib/zip_extra_field_api.c 	if (ef->flags & flags & ZIP_EF_BOTH) {
ef                138 ext/zip/lib/zip_extra_field_api.c 		*idp = ef->id;
ef                140 ext/zip/lib/zip_extra_field_api.c 		*lenp = ef->size;
ef                141 ext/zip/lib/zip_extra_field_api.c 	    if (ef->size > 0)
ef                142 ext/zip/lib/zip_extra_field_api.c 		return ef->data;
ef                181 ext/zip/lib/zip_extra_field_api.c     struct zip_extra_field *ef;
ef                197 ext/zip/lib/zip_extra_field_api.c     for (ef=de->extra_fields; ef; ef=ef->next)
ef                198 ext/zip/lib/zip_extra_field_api.c 	if (ef->flags & flags & ZIP_EF_BOTH)
ef                210 ext/zip/lib/zip_extra_field_api.c     struct zip_extra_field *ef;
ef                226 ext/zip/lib/zip_extra_field_api.c     for (ef=de->extra_fields; ef; ef=ef->next)
ef                227 ext/zip/lib/zip_extra_field_api.c 	if (ef->id == ef_id && (ef->flags & flags & ZIP_EF_BOTH))
ef                240 ext/zip/lib/zip_extra_field_api.c     struct zip_extra_field *ef, *ef_prev, *ef_new;
ef                266 ext/zip/lib/zip_extra_field_api.c     ef = de->extra_fields;
ef                271 ext/zip/lib/zip_extra_field_api.c     for (; ef; ef=ef->next) {
ef                272 ext/zip/lib/zip_extra_field_api.c 	if (ef->id == ef_id && (ef->flags & flags & ZIP_EF_BOTH)) {
ef                279 ext/zip/lib/zip_extra_field_api.c 	ef_prev = ef;
ef                298 ext/zip/lib/zip_extra_field_api.c 	new_len -= ef->size + 4;
ef                312 ext/zip/lib/zip_extra_field_api.c 	if ((ef->flags & ZIP_EF_BOTH) == (flags & ZIP_EF_BOTH)) {
ef                313 ext/zip/lib/zip_extra_field_api.c 	    ef_new->next = ef->next;
ef                314 ext/zip/lib/zip_extra_field_api.c 	    ef->next = NULL;
ef                315 ext/zip/lib/zip_extra_field_api.c 	    _zip_ef_free(ef);
ef                322 ext/zip/lib/zip_extra_field_api.c 	    ef->flags &= ~(flags & ZIP_EF_BOTH);
ef                323 ext/zip/lib/zip_extra_field_api.c 	    ef_new->next = ef->next;
ef                324 ext/zip/lib/zip_extra_field_api.c 	    ef->next = ef_new;