Don't use ino_t in dumprestore protocol definition.

Since ino_t size is about to change to 64-bits, replace ino_t used in
dump protocol definition with 32-bit dump_ino_t to preserve backward
compatibility.  At some point, it may be necessary to use spare fields
in struct in order to fully support 64-bit inode numbers.

Sponsored by:	Google Summer of Code 2011
This commit is contained in:
Gleb Kurtsou 2012-05-18 10:01:31 +00:00
parent f931cd70af
commit 788cefe2cb
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=235601

View file

@ -65,6 +65,15 @@
#endif
#define CHECKSUM (int)84446
/*
* Since ino_t size is changing to 64-bits, yet we desire this structure to
* remain compatible with exiting dump formats, we do NOT use ino_t here,
* but rather define a 32-bit type in its place. At some point, it may be
* necessary to use some of the c_spare[] in order to fully support 64-bit
* inode numbers.
*/
typedef uint32_t dump_ino_t;
union u_spcl {
char dummy[TP_BSIZE];
struct s_spcl {
@ -73,7 +82,7 @@ union u_spcl {
int32_t c_old_ddate; /* date of previous dump */
int32_t c_volume; /* dump volume number */
int32_t c_old_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 */
/*