/* Common declarations for the tar program.
Copyright (C) 1988, 1992, 1993, 1994, 1996, 1997, 1999, 2000, 2001,
- 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation,
+ 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation,
Inc.
This program is free software; you can redistribute it and/or modify it
/* Display file times in UTC */
GLOBAL bool utc_option;
+/* Output file timestamps to the full resolution */
+GLOBAL bool full_time_option;
/* This variable tells how to interpret newer_mtime_option, below. If zero,
files get archived if their mtime is not less than newer_mtime_option.
int matching_flags; /* wildcard flags if name is a pattern */
bool cmdline; /* true if this name was given in the
command line */
-
+
int change_dir; /* Number of the directory to change to.
Set with the -C option. */
uintmax_t found_count; /* number of times a matching file has
been found */
-
+
/* The following members are used for incremental dumps only,
if this struct name represents a directory;
see incremen.c */
const char *message);
enum exclusion_tag_type check_exclusion_tags (const char *dirname,
const char **tag_file_name);
-
+
#define GID_TO_CHARS(val, where) gid_to_chars (val, where, sizeof (where))
#define MAJOR_TO_CHARS(val, where) major_to_chars (val, where, sizeof (where))
#define MINOR_TO_CHARS(val, where) minor_to_chars (val, where, sizeof (where))
HEADER_FAILURE /* ill-formed header, or bad checksum */
};
+/* Operation mode for read_header: */
+
+enum read_header_mode
+{
+ read_header_auto, /* process extended headers automatically */
+ read_header_x_raw, /* return raw extended headers (return
+ HEADER_SUCCESS_EXTENDED) */
+ read_header_x_global /* when POSIX global extended header is read,
+ decode it and return
+ HEADER_SUCCESS_EXTENDED */
+};
extern union block *current_header;
extern enum archive_format current_format;
extern size_t recent_long_name_blocks;
void read_and (void (*do_something) (void));
enum read_header read_header (union block **return_block,
struct tar_stat_info *info,
- bool raw_extended_headers);
+ enum read_header_mode m);
enum read_header tar_checksum (union block *header, bool silent);
void skip_file (off_t size);
void skip_member (void);
void remname (struct name *name);
bool name_match (const char *name);
void names_notfound (void);
+void label_notfound (void);
void collect_and_sort_names (void);
struct name *name_scan (const char *name);
struct name const *name_from_list (void);
/* Module exit.c */
extern void (*fatal_exit_hook) (void);
-