diff options
author | gleb <gleb@FreeBSD.org> | 2012-05-18 10:01:31 +0000 |
---|---|---|
committer | gleb <gleb@FreeBSD.org> | 2012-05-18 10:01:31 +0000 |
commit | 1f12bc49add80da7d6b25b8c5132d62e32cb9b39 (patch) | |
tree | f068fed3d7839d7d29909d7d25779f4f222f618e | |
parent | c16abb371bff05e19a93487842c3254fe6cc3078 (diff) | |
download | FreeBSD-src-1f12bc49add80da7d6b25b8c5132d62e32cb9b39.zip FreeBSD-src-1f12bc49add80da7d6b25b8c5132d62e32cb9b39.tar.gz |
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
-rw-r--r-- | include/protocols/dumprestore.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/include/protocols/dumprestore.h b/include/protocols/dumprestore.h index d6740a6..9355292 100644 --- a/include/protocols/dumprestore.h +++ b/include/protocols/dumprestore.h @@ -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 */ /* |