* Stelian Pop <stelian@popies.net>, 1999-2000
* Stelian Pop <stelian@popies.net> - AlcĂ´ve <www.alcove.com>, 2000-2002
*
- * $Id: dumprestore.h,v 1.15 2002/01/16 09:32:14 stelian Exp $
+ * $Id: dumprestore.h,v 1.17 2002/04/04 08:20:23 stelian Exp $
*/
/*
#define NTREC 10
#define HIGHDENSITYTREC 32
#define TP_NINDIR (TP_BSIZE/2)
+#define TP_NINOS (TP_NINDIR / sizeof (int32_t))
#define LBLSIZE 16
#define NAMELEN 64
typedef u_int32_t dump_ino_t;
+union u_data {
+ char s_addrs[TP_NINDIR]; /* 1 => data; 0 => hole in inode */
+ int32_t s_inos[TP_NINOS]; /* table of first inode on each volume */
+} u_data;
+
union u_spcl {
char dummy[TP_BSIZE];
struct s_spcl {
struct dinode c_dinode; /* ownership and mode of inode */
#endif
int32_t c_count; /* number of valid c_addr entries */
- char c_addr[TP_NINDIR]; /* 1 => data; 0 => hole in inode */
+ union u_data c_data; /* see above */
char c_label[LBLSIZE]; /* dump label */
int32_t c_level; /* level of this dump */
char c_filesys[NAMELEN]; /* name of dumpped file system */
} s_spcl;
} u_spcl;
#define spcl u_spcl.s_spcl
+#define c_addr c_data.s_addrs
+#define c_inos c_data.s_inos
+
/*
* special record types
*/
#define DR_NEWHEADER 0x0001 /* new format tape header */
#define DR_NEWINODEFMT 0x0002 /* new format inodes on tape */
#define DR_COMPRESSED 0x0080 /* dump tape is compressed */
+#define DR_METAONLY 0x0100 /* only the metadata of the inode has
+ been dumped */
+#define DR_INODEINFO 0x0002 /* TS_END header contains c_inos information */
+
/*
* compression flags for the tapebuf header.