Something went wrong. Try again.
(I'm so sorry!) Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
Something went wrong. Try again.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748/* SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause) */
#ifndef __LIBBPF_ZIP_H#define __LIBBPF_ZIP_H
#include <linux/types.h>
/* Represents an open zip archive. * Only basic ZIP files are supported, in particular the following are not * supported: * - encryption * - streaming * - multi-part ZIP files * - ZIP64 */struct zip_archive;
/* Carries information on name, compression method, and data corresponding to a * file in a zip archive. */struct zip_entry { /* Compression method as defined in pkzip spec. 0 means data is uncompressed. */ __u16 compression;
/* Non-null terminated name of the file. */ const char *name; /* Length of the file name. */ __u16 name_length;
/* Pointer to the file data. */ const void *data; /* Length of the file data. */ __u32 data_length; /* Offset of the file data within the archive. */ __u32 data_offset;};
/* Open a zip archive. Returns NULL in case of an error. */struct zip_archive *zip_archive_open(const char *path);
/* Close a zip archive and release resources. */void zip_archive_close(struct zip_archive *archive);
/* Look up an entry corresponding to a file in given zip archive. */int zip_archive_find_entry(struct zip_archive *archive, const char *name, struct zip_entry *out);
#endif