X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/05c36015f79d0d2975f15b08e31ea72825700f11..14ebc5b618ec6d4668e120acc7a75ae8efd677e7:/rsync.h diff --git a/rsync.h b/rsync.h index 731f4fea..3404da78 100644 --- a/rsync.h +++ b/rsync.h @@ -465,6 +465,8 @@ typedef unsigned int mode_t; #endif #ifndef HAVE_OFF_T typedef long off_t; +#undef SIZEOF_OFF_T +#define SIZEOF_OFF_T SIZEOF_LONG #endif #ifndef HAVE_SIZE_T typedef unsigned int size_t; @@ -692,10 +694,10 @@ extern int xattrs_ndx; #define F_LENGTH(f) ((int64)(f)->len32) #else #define F_LENGTH(f) ((int64)(f)->len32 + ((f)->flags & FLAG_LENGTH64 \ - ? (int64)OPT_EXTRA(f, 0)->unum << 32 : 0)) + ? (int64)OPT_EXTRA(f, NSEC_BUMP(f))->unum << 32 : 0)) #endif -#define F_MOD_NSEC(f) ((f)->flags & FLAG_MOD_NSEC ? OPT_EXTRA(f, LEN64_BUMP(f))->unum : 0) +#define F_MOD_NSEC(f) ((f)->flags & FLAG_MOD_NSEC ? OPT_EXTRA(f, 0)->unum : 0) /* If there is a symlink string, it is always right after the basename */ #define F_SYMLINK(f) ((f)->basename + strlen((f)->basename) + 1) @@ -1117,6 +1119,10 @@ extern int errno; #define IS_SPECIAL(mode) (S_ISSOCK(mode) || S_ISFIFO(mode)) #define IS_DEVICE(mode) (S_ISCHR(mode) || S_ISBLK(mode)) +#define PRESERVE_FILE_TIMES (1<<0) +#define PRESERVE_DIR_TIMES (1<<1) +#define PRESERVE_LINK_TIMES (1<<2) + /* Initial mask on permissions given to temporary files. Mask off setuid bits and group access because of potential race-condition security holes, and mask other access because mode 707 is bizarre */