X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/304d7b5817d6e1d3cf59b9edae2213433d901cdc..de32838ea21e826bb529e982d3a369b5cbd0d791:/rsync.h diff --git a/rsync.h b/rsync.h index abdb6e02..efa42c8f 100644 --- a/rsync.h +++ b/rsync.h @@ -136,6 +136,8 @@ /* For compatibility with older rsyncs */ #define OLD_MAX_BLOCK_SIZE ((int32)1 << 29) +#define ROUND_UP_1024(siz) ((siz) & (1024-1) ? ((siz) | (1024-1)) + 1 : (siz)) + #define IOERR_GENERAL (1<<0) /* For backward compatibility, this must == 1 */ #define IOERR_VANISHED (1<<1) #define IOERR_DEL_LIMIT (1<<2) @@ -232,8 +234,8 @@ enum msgcode { MSG_STATS=10, /* message has stats data for generator */ MSG_IO_ERROR=22,/* the sending side had an I/O error */ MSG_IO_TIMEOUT=33,/* tell client about a daemon's timeout value */ - MSG_NOOP=42, /* a do-nothing message */ - MSG_ERROR_EXIT=86, /* used by siblings and by protocol-31 */ + MSG_NOOP=42, /* a do-nothing message (legacy protocol-30 only) */ + MSG_ERROR_EXIT=86, /* synchronize an error exit (siblings and protocol >= 31) */ MSG_SUCCESS=100,/* successfully updated indicated flist index */ MSG_DELETED=101,/* successfully deleted a file on receiving side */ MSG_NO_SEND=102,/* sender failed to open a file we wanted */ @@ -265,6 +267,10 @@ enum delret { #define MKP_DROP_NAME (1<<0) /* drop trailing filename or trailing slash */ #define MKP_SKIP_SLASH (1<<1) /* skip one or more leading slashes */ +/* Defines for maybe_send_keepalive() */ +#define MSK_ALLOW_FLUSH (1<<0) +#define MSK_ACTIVE_RECEIVER (1<<1) + #include "errcode.h" #include "config.h" @@ -686,10 +692,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)