diff options
author | Sergey Poznyakoff <gray@gnu.org.ua> | 2014-12-01 15:02:38 +0200 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2014-12-01 15:02:38 +0200 |
commit | 3945f9db44c935608caa5f084fd7f67ae59ee9e1 (patch) | |
tree | 40dc48c8b3a8872bb8aaafdc9af1133a11d4e460 /src/extern.h | |
parent | 4900a5e7be9ad90fda7c4743fd31613ceb0eda05 (diff) | |
download | cpio-3945f9db44c935608caa5f084fd7f67ae59ee9e1.tar.gz cpio-3945f9db44c935608caa5f084fd7f67ae59ee9e1.tar.bz2 |
New options to create device and inode-independent archives.
* src/util.c (inode_val): New member trans_inode
(find_inode_val): New function.
(find_inode_file): Rewrite using the above.
(add_inode): Initialize the trans_inode member
depending on the value of renumber_inodes_option.
(get_inode_and_dev): New function.
(stat_to_cpio): Use get_inode_and_dev.
(arf_stores_inode_p): New function.
* src/extern.h (renumber_inodes_option)
(ignore_devno_option): New externs.
* src/global.c (renumber_inodes_option)
(ignore_devno_option): New variables.
* src/main.c: Add new options.
* NEWS: Document changes.
* doc/cpio.1: Document new options.
* doc/cpio.texi: Likewise.
Diffstat (limited to 'src/extern.h')
-rw-r--r-- | src/extern.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/extern.h b/src/extern.h index 92117cd..da16794 100644 --- a/src/extern.h +++ b/src/extern.h @@ -56,6 +56,8 @@ extern int only_verify_crc_flag; extern int no_abs_paths_flag; extern unsigned int warn_option; extern mode_t newdir_umask; +extern int renumber_inodes_option; +extern int ignore_devno_option; /* Values for warn_option */ #define CPIO_WARN_NONE 0 @@ -171,8 +173,8 @@ void create_all_directories (char *name); void prepare_append (int out_file_des); char *find_inode_file (ino_t node_num, unsigned long major_num, unsigned long minor_num); -void add_inode (ino_t node_num, char *file_name, - unsigned long major_num, unsigned long minor_num); +struct inode_val *add_inode (ino_t node_num, char *file_name, + unsigned long major_num, unsigned long minor_num); int open_archive (char *file); void tape_offline (int tape_des); void get_next_reel (int tape_des); @@ -218,3 +220,5 @@ void delay_set_stat (char const *file_name, struct stat *st, int repair_delayed_set_stat (struct cpio_file_stat *file_hdr); void apply_delayed_set_stat (void); +int arf_stores_inode_p (enum archive_format arf); + |