/* Common declarations for the tar program.
Copyright (C) 1988, 1992, 1993, 1994, 1996, 1997, 1999, 2000, 2001,
- 2003, 2004, 2005 Free Software Foundation, Inc.
+ 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
size_t length; /* cached strlen(name) */
uintmax_t found_count; /* number of times a matching file has
been found */
- int isdir;
+ int explicit; /* was explicitely given in the command line */
char firstch; /* first char is literally matched */
char regexp; /* this name is a regexp, not literal */
int change_dir; /* set with the -C option */
/* When creating archive in verbose mode, list member names as stored in the
archive */
-GLOBAL bool show_stored_names_option;
+GLOBAL bool show_stored_names_option;
/* Delay setting modification times and permissions of extracted directories
until the end of extraction. This variable helps correctly restore directory
timestamps from archives with an unusual member order. It is automatically
set for incremental archives. */
-GLOBAL bool delay_directory_restore_option;
+GLOBAL bool delay_directory_restore_option;
\f
/* Declarations for each module. */
void update_parent_directory (const char *name);
size_t dumpdir_size (const char *p);
-void get_gnu_dumpdir (void);
+bool is_dumpdir (struct tar_stat_info *stat_info);
/* Module list.c. */
void *page_aligned_alloc (void **, size_t);
int set_file_atime (int fd, char const *file,
struct timespec const timespec[2]);
-
+
/* Module names.c. */
extern struct name *gnu_list_name;
int name_match (const char *);
void names_notfound (void);
void collect_and_sort_names (void);
-struct name *name_scan (const char *);
+struct name *name_scan (const char *, bool);
char *name_from_list (void);
void blank_name_list (void);
char *new_name (const char *, const char *);
bool xheader_keyword_deleted_p (const char *kw);
char *xheader_format_name (struct tar_stat_info *st, const char *fmt,
size_t n);
-
+
/* Module system.c */
void sys_detect_dev_null_output (void);