X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;ds=inline;f=src%2Fcommon.h;h=152ff180ed0e2e7aa5cb44d10ac865ede664243a;hb=44283eb6cab1d0faf5e446b092f0d5c03ee50b69;hp=abcdbbca94541f3eeef89a56a129c0e164108b29;hpb=a65779d55837d7164425f4fd3b9cefe88d250706;p=chaz%2Ftar diff --git a/src/common.h b/src/common.h index abcdbbc..152ff18 100644 --- a/src/common.h +++ b/src/common.h @@ -331,6 +331,10 @@ struct name GLOBAL dev_t ar_dev; GLOBAL ino_t ar_ino; +GLOBAL bool seekable_archive; + +GLOBAL dev_t root_device; + /* Declarations for each module. */ @@ -370,6 +374,8 @@ void clear_read_error_count (void); void xclose (int fd); void archive_write_error (ssize_t) __attribute__ ((noreturn)); void archive_read_error (void); +off_t seek_archive (off_t size); +void set_start_time (void); /* Module create.c. */ @@ -440,7 +446,7 @@ void delete_archive_members (void); char *get_directory_contents (char *, dev_t); void read_directory_file (void); void write_directory_file (void); -void gnu_restore (char const *); +void purge_directory (char const *); /* Module list.c. */ @@ -581,6 +587,8 @@ void write_fatal_details (char const *, ssize_t, size_t) pid_t xfork (void); void xpipe (int[2]); +void *page_aligned_alloc (void **, size_t); + /* Module names.c. */ extern struct name *gnu_list_name; @@ -613,9 +621,12 @@ bool excluded_name (char const *); void add_avoided_name (char const *); bool is_avoided_name (char const *); +bool is_individual_file (char const *); bool contains_dot_dot (char const *); +bool removed_prefixes_p (void); + #define ISFOUND(c) ((occurrence_option == 0) ? (c)->found_count : \ (c)->found_count == occurrence_option) #define WASFOUND(c) ((occurrence_option == 0) ? (c)->found_count : \