X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;ds=sidebyside;f=src%2Fcommon.h;h=c2a92d228dd497a2089353ca9919d1f920307b01;hb=4dfcd6c054a5e9e1a371c822a3be90564dd9b690;hp=73865ec87fba6681f0c101332e03c9b331b632a2;hpb=0d8e3249123ecf0175b60c7b43056ac811eb6921;p=chaz%2Ftar diff --git a/src/common.h b/src/common.h index 73865ec..c2a92d2 100644 --- a/src/common.h +++ b/src/common.h @@ -60,6 +60,7 @@ #define obstack_chunk_alloc xmalloc #define obstack_chunk_free free #include +#include #include @@ -70,9 +71,6 @@ /* Information gleaned from the command line. */ -/* Name of this program. */ -GLOBAL const char *program_name; - /* Main command option. */ enum subcommand @@ -400,6 +398,7 @@ extern char *volume_label; extern char *continued_file_name; extern uintmax_t continued_file_size; extern uintmax_t continued_file_offset; +extern off_t records_written; size_t available_space_after (union block *pointer); off_t current_block_ordinal (void); @@ -557,7 +556,8 @@ char const *tartime (struct timespec t, bool full_time); #define GID_FROM_HEADER(where) gid_from_header (where, sizeof (where)) #define MAJOR_FROM_HEADER(where) major_from_header (where, sizeof (where)) #define MINOR_FROM_HEADER(where) minor_from_header (where, sizeof (where)) -#define MODE_FROM_HEADER(where) mode_from_header (where, sizeof (where)) +#define MODE_FROM_HEADER(where, hbits) \ + mode_from_header (where, sizeof (where), hbits) #define OFF_FROM_HEADER(where) off_from_header (where, sizeof (where)) #define SIZE_FROM_HEADER(where) size_from_header (where, sizeof (where)) #define TIME_FROM_HEADER(where) time_from_header (where, sizeof (where)) @@ -567,7 +567,7 @@ char const *tartime (struct timespec t, bool full_time); gid_t gid_from_header (const char *buf, size_t size); major_t major_from_header (const char *buf, size_t size); minor_t minor_from_header (const char *buf, size_t size); -mode_t mode_from_header (const char *buf, size_t size); +mode_t mode_from_header (const char *buf, size_t size, unsigned *hbits); off_t off_from_header (const char *buf, size_t size); size_t size_from_header (const char *buf, size_t size); time_t time_from_header (const char *buf, size_t size); @@ -826,3 +826,11 @@ extern int warning_option; } \ while (0) +/* Module unlink.c */ + +void queue_deferred_unlink (const char *name, bool is_dir); +void finish_deferred_unlinks (void); + +/* Module exit.c */ +extern void (*fatal_exit_hook) (void); +