Reorder/pad struct members in order to align to 32 and 64 bit bounderies.

(Logical change 1.505)
edge.strict_endians
!uv 2004-08-20 12:01:17 +00:00
parent 97df123793
commit e7545d7e24
7 changed files with 28 additions and 16 deletions

View File

@ -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 {

View File

@ -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_ */

View File

@ -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)

View File

@ -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_ */

View File

@ -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 */

View File

@ -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. */
};
/**

View File

@ -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_ */