* Ported to Linux's Second Extended File System as part of the
* dump and restore backup suit
* Remy Card <card@Linux.EU.Org>, 1994-1997
- * Stelian Pop <pop@cybercable.fr>, 1999-2000
+ * Stelian Pop <pop@noos.fr>, 1999-2000
+ * Stelian Pop <pop@noos.fr> - AlcĂ´ve <www.alcove.fr>, 2000
*
+ * $Id: dumprestore.h,v 1.13 2001/05/12 11:36:12 stelian Exp $
*/
/*
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
- *
- * $Id: dumprestore.h,v 1.6 2000/01/21 10:17:41 stelian Exp $
*/
#ifndef _PROTOCOLS_DUMPRESTORE_H_
#define _PROTOCOLS_DUMPRESTORE_H_
+#include <config.h>
+
/*
* TP_BSIZE is the size of file blocks on the dump tapes.
* Note that TP_BSIZE must be a multiple of DEV_BSIZE.
#define NFS_MAGIC (int)60012
#define CHECKSUM (int)84446
+typedef u_int32_t dump_ino_t;
+
union u_spcl {
char dummy[TP_BSIZE];
struct s_spcl {
int32_t c_ddate; /* date of previous dump */
int32_t c_volume; /* dump volume number */
daddr_t c_tapea; /* logical block of this record */
- ino_t c_inumber; /* number of inode */
+ dump_ino_t c_inumber; /* number of inode */
int32_t c_magic; /* magic number (see above) */
int32_t c_checksum; /* record checksum */
#ifdef __linux__
char c_host[NAMELEN]; /* name of dumpped host */
int32_t c_flags; /* additional information */
int32_t c_firstrec; /* first record on volume */
- int32_t c_spare[32]; /* reserved for future uses */
+ int32_t c_ntrec; /* blocksize on volume */
+ int32_t c_spare[31]; /* reserved for future uses */
} s_spcl;
} u_spcl;
#define spcl u_spcl.s_spcl
*/
#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 */
+
+/* used for compressed dump tapes */
+struct tapebuf {
+ unsigned int compressed:1;
+ unsigned int flags:3;
+ unsigned int length:28;
+ char buf[0]; /* the data */
+};
#endif /* !_DUMPRESTORE_H_ */