diff --git a/ntfsprogs/ntfsclone.c b/ntfsprogs/ntfsclone.c index 0cc3d3a0..6d778cf7 100644 --- a/ntfsprogs/ntfsclone.c +++ b/ntfsprogs/ntfsclone.c @@ -70,8 +70,9 @@ struct { } opt; struct bitmap { - u8 *bm; s64 size; + u8 *bm; + u8 padding[4]; /* Unused: padding to 64 bit. */ }; struct progress_bar { diff --git a/ntfsprogs/ntfscluster.h b/ntfsprogs/ntfscluster.h index afba3f39..41747c2a 100644 --- a/ntfsprogs/ntfscluster.h +++ b/ntfsprogs/ntfscluster.h @@ -52,10 +52,11 @@ struct options { struct match { u64 inum; /* Inode number */ - ATTR_TYPES type; /* Attribute type */ - ntfschar *name; /* Attribute name */ - int name_len; /* Length of attribute name */ LCN lcn; /* Last cluster in use */ + ATTR_TYPES type; /* Attribute type */ + ntfschar *name; /* Attribute name */ + int name_len; /* Length of attribute name */ + u8 padding[4]; /* Unused: padding to 64 bit. */ }; #endif /* _NTFSCLUSTER_H_ */ diff --git a/ntfsprogs/ntfsinfo.c b/ntfsprogs/ntfsinfo.c index 2a1d32de..783a8e02 100644 --- a/ntfsprogs/ntfsinfo.c +++ b/ntfsprogs/ntfsinfo.c @@ -68,14 +68,15 @@ static const char *EXEC_NAME = "ntfsinfo"; static struct options { - char *device; /* Device/File to work with */ + const char *device; /* Device/File to work with */ + const char *filename; /* Resolve this filename to mft number */ s64 inode; /* Info for this inode */ int quiet; /* Less output */ int verbose; /* Extra output */ int force; /* Override common sense */ int notime; /* Don't report timestamps at all */ int mft; /* Dump information about the volume as well */ - const char *filename; + u8 padding[4]; /* Unused: padding to 64 bit. */ } opts; GEN_PRINTF (Eprintf, stderr, NULL, FALSE) diff --git a/ntfsprogs/ntfsmove.h b/ntfsprogs/ntfsmove.h index d5081ee5..f13dcdbf 100644 --- a/ntfsprogs/ntfsmove.h +++ b/ntfsprogs/ntfsmove.h @@ -33,12 +33,13 @@ struct options { char *device; /* Device/File to work with */ char *file; /* File to display */ + s64 location; /* Where to place the file */ int force; /* Override common sense */ int quiet; /* Less output */ int verbose; /* Extra output */ int noaction; /* Do not write to disk */ int nodirty; /* Do not mark volume dirty */ - s64 location; /* Where to place the file */ + u8 padding[4]; /* Unused: alignment to 64 bit. */ }; #endif /* _NTFSMOVE_H_ */ diff --git a/ntfsprogs/ntfsresize.c b/ntfsprogs/ntfsresize.c index 430fca67..7b0d9f99 100644 --- a/ntfsprogs/ntfsresize.c +++ b/ntfsprogs/ntfsresize.c @@ -88,11 +88,13 @@ struct { int show_progress; s64 bytes; char *volume; + u8 padding[4]; /* Unused: padding to 64 bit. */ } opt; struct bitmap { - u8 *bm; s64 size; + u8 *bm; + u8 padding[4]; /* Unused: padding to 64 bit. */ }; #define NTFS_PROGBAR 0x0001 @@ -104,6 +106,7 @@ struct progress_bar { int resolution; int flags; float unit; + u8 padding[4]; /* Unused: padding to 64 bit. */ }; struct llcn_t { @@ -124,9 +127,8 @@ typedef struct { typedef struct { ntfs_volume *vol; - s64 new_volume_size; /* in clusters; 0 = --info w/o --size */ - int shrink; /* shrink = 1, enlarge = 0 */ ntfs_inode *ni; /* inode being processed */ + s64 new_volume_size; /* in clusters; 0 = --info w/o --size */ MFT_REF mref; /* mft reference */ MFT_RECORD *mrec; /* mft record */ ntfs_attr_search_ctx *ctx; /* inode attribute being processed */ @@ -135,6 +137,7 @@ typedef struct { runlist mftmir_rl; /* $MFTMirr AT_DATA's new position */ s64 mftmir_old; /* $MFTMirr AT_DATA's old LCN */ int dirty_inode; /* some inode data got relocated */ + int shrink; /* shrink = 1, enlarge = 0 */ struct progress_bar progress; struct bitmap lcn_bitmap; /* Temporary statistics until all case is supported */ diff --git a/ntfsprogs/ntfsrm.h b/ntfsprogs/ntfsrm.h index 10b03825..8f75459f 100644 --- a/ntfsprogs/ntfsrm.h +++ b/ntfsprogs/ntfsrm.h @@ -66,8 +66,8 @@ struct ntfs_dt { INDEX_ENTRY **children; struct ntfs_dt **sub_nodes; ntfs_inode **inodes; - INDEX_HEADER *header; VCN vcn; + INDEX_HEADER *header; BOOL changed; }; @@ -79,16 +79,17 @@ struct ntfs_dir { struct ntfs_dir *parent; ntfschar *name; int name_len; + MFT_REF mft_num; struct ntfs_dt *index; struct ntfs_dir **children; int child_count; - MFT_REF mft_num; struct mft_bitmap *bitmap; ntfs_inode *inode; ntfs_attr *iroot; ntfs_attr *ialloc; ntfs_attr *ibmp; int index_size; + u8 padding[4]; /* Unused: padding to 64 bit. */ }; /** diff --git a/ntfsprogs/ntfsundelete.h b/ntfsprogs/ntfsundelete.h index 4a25af98..2239c4d9 100644 --- a/ntfsprogs/ntfsundelete.h +++ b/ntfsprogs/ntfsundelete.h @@ -43,7 +43,6 @@ struct options { int uinode; /* Undelete this inode */ char *dest; /* Save file to this directory */ char *output; /* With this filename */ - char fillbyte; /* Use for unrecoverable sections */ char *match; /* Pattern for filename matching */ int match_case; /* Case sensitive matching */ int truncate; /* Truncate files to exact size. */ @@ -56,13 +55,13 @@ struct options { s64 size_end; s64 mft_begin; /* Range for mft copy */ s64 mft_end; + char fillbyte; /* Use for unrecoverable sections */ + char padding[7]; /* Unused: padding to 64 bit. */ }; struct filename { struct list_head list; /* Previous/Next links */ - char *name; /* Filename in current locale */ - FILE_NAME_TYPE_FLAGS name_space; - ntfschar *uname; /* Filename in unicode */ + ntfschar *uname; /* Filename in unicode */ int uname_len; /* and its length */ long long size_alloc; /* Allocated size (multiple of cluster size) */ long long size_data; /* Actual size of data */ @@ -71,6 +70,9 @@ struct filename { time_t date_a; /* altered */ time_t date_m; /* mft record changed */ time_t date_r; /* read */ + char *name; /* Filename in current locale */ + FILE_NAME_TYPE_FLAGS name_space; + char padding[7]; /* Unused: padding to 64 bit. */ }; struct data { @@ -88,6 +90,7 @@ struct data { runlist_element *runlist; /* Decoded data runs */ int percent; /* Amont potentially recoverable */ void *data; /* If resident, a pointer to the data */ + char padding[4]; /* Unused: padding to 64 bit. */ }; struct ufile { @@ -100,6 +103,7 @@ struct ufile { int attr_list; /* MFT record may be one of many */ int directory; /* MFT record represents a directory */ MFT_RECORD *mft; /* Raw MFT record */ + char padding[4]; /* Unused: padding to 64 bit. */ }; #endif /* _NTFSUNDELETE_H_ */