Moved the inode & dev items out of the flist_struct. Based on a

preliminary patch by J.W.
This commit is contained in:
Wayne Davison
2004-01-11 07:55:53 +00:00
parent 728d092201
commit 88a7fb3edd

24
rsync.h
View File

@@ -371,26 +371,40 @@ enum logcode {FNONE=0, FERROR=1, FINFO=2, FLOG=3 };
#define GID_NONE (gid_t) -1
struct hlink {
struct file_struct *head;
struct file_struct *next;
};
struct idev {
INO64_T inode;
DEV64_T dev;
};
#define F_DEV link_u.idev->dev
#define F_INODE link_u.idev->inode
struct file_struct {
time_t modtime;
OFF_T length;
mode_t mode;
INO64_T inode;
DEV64_T dev;
union {
DEV64_T rdev; /* The device number, if this is a device */
char *sum; /* Only a normal file can have a checksum */
char *link; /* Holds symlink string, if a symlink */
} u;
uid_t uid;
gid_t gid;
union {
struct idev *idev;
struct hlink *links;
} link_u;
char *basename;
char *dirname;
char *basedir;
uid_t uid;
gid_t gid;
unsigned short flags;
};
#define ARENA_SIZE (32 * 1024)
struct string_area {