#define FLAG_TOP_DIR (1<<0)
#define FLAG_HLINK_EOL (1<<1) /* generator only */
#define FLAG_MOUNT_POINT (1<<2) /* sender only */
+#define FLAG_NO_FUZZY (1<<2) /* generator only */
#define FLAG_DEL_HERE (1<<3) /* receiver/generator */
+#define FLAG_SENT (1<<3) /* sender only */
/* update this if you make incompatible changes */
#define PROTOCOL_VERSION 29
#define FNAMECMP_FNAME 0x80
#define FNAMECMP_PARTIAL_DIR 0x81
#define FNAMECMP_BACKUP 0x82
+#define FNAMECMP_FUZZY 0x83
/* For calling delete_file() */
-#define DEL_DIR (1<<0)
#define DEL_NO_RECURSE (1<<1)
#define DEL_FORCE_RECURSE (1<<2) /* recurse even w/o --force */
#define DEL_TERSE (1<<3)
+/* For use by the itemize_changes code */
+#define ITEM_UPDATING (1<<0)
+#define ITEM_REPORT_CHECKSUM (1<<1)
+#define ITEM_REPORT_SIZE (1<<2)
+#define ITEM_REPORT_TIME (1<<3)
+#define ITEM_REPORT_PERMS (1<<4)
+#define ITEM_REPORT_OWNER (1<<5)
+#define ITEM_REPORT_GROUP (1<<6)
+#define ITEM_IS_NEW (1<<7)
+
+#define ITEM_MISSING_DATA (1<<16) /* these are outside the transmitted flags */
+#define ITEM_DELETED (1<<17)
/* Log-message categories. FLOG is only used on the daemon side to
* output messages to the log file. */
/* Messages types that are sent over the message channel. The logcode
* values must all be present here with identical numbers. */
enum msgcode {
+ MSG_DELETED=7, /* successfully deleted a file on receiving side */
+ MSG_SUCCESS=6, /* successfully updated indicated flist index */
MSG_DONE=5, /* current phase is done */
MSG_REDO=4, /* reprocess indicated flist index */
MSG_ERROR=FERROR, MSG_INFO=FINFO, MSG_LOG=FLOG, /* remote logging */
#define uint32 unsigned int32
#endif
-#if SIZEOF_OFF_T == 8 || !defined SIZEOF_OFF64_T || !defined HAVE_STRUCT_STAT64
+#if SIZEOF_OFF_T == 8 || !SIZEOF_OFF64_T || !defined HAVE_STRUCT_STAT64
#define OFF_T off_t
#define STRUCT_STAT struct stat
#else
struct sum_struct {
OFF_T flength; /**< total file length */
struct sum_buf *sums; /**< points to info for each chunk */
- size_t count; /**< how many chunks */
+ int32 count; /**< how many chunks */
int32 blength; /**< block_length */
int32 remainder; /**< flength % block_length */
int s2length; /**< sum2_length */
/* handler for null strings in printf format */
#define NS(s) ((s)?safe_fname(s):"<NULL>")
-#if !defined __GNUC__ || defined APPLE
+#if !defined __GNUC__ || defined __APPLE__
/* Apparently the OS X port of gcc gags on __attribute__.
*
* <http://www.opensource.apple.com/bugs/X/gcc/2512150.html> */