PUSH_AND_SET_FUNCTION_VISIBILITY_TO_HIDDEN
-#define ARCHIVE_PRESERVE_DATE 1
-#define ARCHIVE_CREATE_LEADING_DIRS 2
-#define ARCHIVE_EXTRACT_UNCONDITIONAL 4
-#define ARCHIVE_EXTRACT_QUIET 8
-#define ARCHIVE_EXTRACT_NEWER 16
-#define ARCHIVE_NOPRESERVE_OWN 32
-#define ARCHIVE_NOPRESERVE_PERM 64
-#define ARCHIVE_NUMERIC_OWNER 128
+#define ARCHIVE_RESTORE_DATE (1 << 0)
+#define ARCHIVE_CREATE_LEADING_DIRS (1 << 1)
+#define ARCHIVE_UNLINK_OLD (1 << 2)
+#define ARCHIVE_EXTRACT_QUIET (1 << 3)
+#define ARCHIVE_EXTRACT_NEWER (1 << 4)
+#define ARCHIVE_DONT_RESTORE_OWNER (1 << 5)
+#define ARCHIVE_DONT_RESTORE_PERM (1 << 6)
+#define ARCHIVE_NUMERIC_OWNER (1 << 7)
typedef struct file_header_t {
char *name;
/* Count the number of bytes processed */
off_t offset;
- /* Function that skips data: read_by_char or read_by_skip */
- void FAST_FUNC (*seek)(const struct archive_handle_t *archive_handle, const unsigned amount);
+ /* Function that skips data */
+ void FAST_FUNC (*seek)(int fd, off_t amount);
/* Temporary storage */
char *buffer;
extern char get_header_tar_bz2(archive_handle_t *archive_handle) FAST_FUNC;
extern char get_header_tar_lzma(archive_handle_t *archive_handle) FAST_FUNC;
-extern void seek_by_jump(const archive_handle_t *archive_handle, unsigned amount) FAST_FUNC;
-extern void seek_by_read(const archive_handle_t *archive_handle, unsigned amount) FAST_FUNC;
+extern void seek_by_jump(int fd, off_t amount) FAST_FUNC;
+extern void seek_by_read(int fd, off_t amount) FAST_FUNC;
extern void data_align(archive_handle_t *archive_handle, unsigned boundary) FAST_FUNC;
extern const llist_t *find_list_entry(const llist_t *list, const char *filename) FAST_FUNC;