]> Dogcows Code - chaz/tar/blobdiff - src/common.h
(read_header_primitive): New function
[chaz/tar] / src / common.h
index 9de22c672efe3cf852bf93744eabe247997123f5..4bbab6d37ba37b4eaaf66d068dc6e0be47b65ed5 100644 (file)
@@ -1,7 +1,7 @@
 /* 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
@@ -303,7 +303,7 @@ struct name
     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 */
@@ -327,13 +327,13 @@ GLOBAL bool test_label_option; /* Test archive volume label and exit */
 
 /* 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.  */
@@ -443,6 +443,7 @@ void verify_volume (void);
 void extr_init (void);
 void extract_archive (void);
 void extract_finish (void);
+bool rename_directory (char *src, char *dst);
 
 /* Module delete.c.  */
 
@@ -451,6 +452,7 @@ void delete_archive_members (void);
 /* Module incremen.c.  */
 
 char *get_directory_contents (char *, dev_t);
+const char *append_incremental_renames (const char *dump);
 void read_directory_file (void);
 void write_directory_file (void);
 void purge_directory (char const *);
@@ -458,7 +460,7 @@ void list_dumpdir (char *buffer, size_t size);
 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.  */
 
@@ -513,6 +515,8 @@ void list_archive (void);
 void print_for_mkdir (char *, int, mode_t);
 void print_header (struct tar_stat_info *, off_t);
 void read_and (void (*) (void));
+enum read_header read_header_primitive (bool raw_extended_headers,
+                                       struct tar_stat_info *info);
 enum read_header read_header (bool);
 enum read_header tar_checksum (union block *header, bool silent);
 void skip_file (off_t);
@@ -577,7 +581,7 @@ void xpipe (int[2]);
 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;
@@ -597,7 +601,7 @@ struct name *addname (char const *, int);
 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 *);
@@ -658,7 +662,7 @@ void xheader_string_end (char const *keyword);
 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);
This page took 0.02234 seconds and 4 git commands to generate.