Amplify the man page description of --hard-links (see bug 3693), and
[rsync/rsync.git] / rsync.h
diff --git a/rsync.h b/rsync.h
index e6a6260..731f4fe 100644 (file)
--- a/rsync.h
+++ b/rsync.h
@@ -98,7 +98,7 @@
 /* This is used when working on a new protocol version in CVS, and should
  * be a new non-zero value for each CVS change that affects the protocol.
  * It must ALWAYS be 0 when the protocol goes final (and NEVER before)! */
-#define SUBPROTOCOL_VERSION 9
+#define SUBPROTOCOL_VERSION 12
 
 /* We refuse to interoperate with versions that are not in this range.
  * Note that we assume we'll work with later versions: the onus is on
 /* 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)
@@ -231,7 +233,9 @@ enum msgcode {
        MSG_REDO=9,     /* reprocess indicated flist index */
        MSG_STATS=10,   /* message has stats data for generator */
        MSG_IO_ERROR=22,/* the sending side had an I/O error */
-       MSG_NOOP=42,    /* a do-nothing message */
+       MSG_IO_TIMEOUT=33,/* tell client about a daemon's timeout value */
+       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 */
@@ -263,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"
@@ -903,6 +911,13 @@ typedef struct {
 #define ICB_CIRCULAR_OUT (1<<3)
 #define ICB_INIT (1<<4)
 
+#define IOBUF_KEEP_BUFS 0
+#define IOBUF_FREE_BUFS 1
+
+#define MPLX_SWITCHING IOBUF_KEEP_BUFS
+#define MPLX_ALL_DONE IOBUF_FREE_BUFS
+#define MPLX_TO_BUFFERED 2
+
 #define RL_EOL_NULLS (1<<0)
 #define RL_DUMP_COMMENTS (1<<1)
 #define RL_CONVERT (1<<2)