X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/8bd77e7098d9863f258070fb2274e324a446adbd..41adbcec9fdf7a72bb15ea7a287b5253713c7ed0:/rsync.h diff --git a/rsync.h b/rsync.h index 77f9b3a7..c487d46e 100644 --- a/rsync.h +++ b/rsync.h @@ -32,7 +32,7 @@ #define DEFAULT_LOCK_FILE "/var/run/rsyncd.lock" #define URL_PREFIX "rsync://" -#define SYMLINK_PREFIX "/rsyncd-munged/" +#define SYMLINK_PREFIX "/rsyncd-munged/" /* This MUST have a trailing slash! */ #define SYMLINK_PREFIX_LEN ((int)sizeof SYMLINK_PREFIX - 1) #define BACKUP_SUFFIX "~" @@ -551,7 +551,7 @@ struct hashtable { void *nodes; int32 size, entries; uint32 node_size; - int key64; + short key64; }; struct ht_int32_node { @@ -851,7 +851,7 @@ typedef struct { } xbuf; #define INIT_XBUF(xb, str, ln, sz) (xb).buf = (str), (xb).len = (ln), (xb).size = (sz), (xb).pos = 0 -#define INIT_XBUF_STRLEN(xb, str) (xb).buf = (str), (xb).len = strlen((xb).buf), (xb).size = (-1), (xb).pos = 0 +#define INIT_XBUF_STRLEN(xb, str) (xb).buf = (str), (xb).len = strlen((xb).buf), (xb).size = (size_t)-1, (xb).pos = 0 /* This one is used to make an output xbuf based on a char[] buffer: */ #define INIT_CONST_XBUF(xb, bf) (xb).buf = (bf), (xb).size = sizeof (bf), (xb).len = (xb).pos = 0 @@ -1120,7 +1120,51 @@ size_t strlcat(char *d, const char *s, size_t bufsize); #define FD_ZERO(fdsetp) memset(fdsetp, 0, sizeof (fd_set)) #endif -extern int verbose; +extern short info_levels[], debug_levels[]; + +#define INFO_GTE(flag, lvl) (info_levels[INFO_##flag] >= (lvl)) +#define INFO_EQ(flag, lvl) (info_levels[INFO_##flag] == (lvl)) +#define DEBUG_GTE(flag, lvl) (debug_levels[DEBUG_##flag] >= (lvl)) +#define DEBUG_EQ(flag, lvl) (debug_levels[DEBUG_##flag] == (lvl)) + +#define INFO_BACKUP 0 +#define INFO_COPY (INFO_BACKUP+1) +#define INFO_DEL (INFO_COPY+1) +#define INFO_FLIST (INFO_DEL+1) +#define INFO_MISC (INFO_FLIST+1) +#define INFO_MOUNT (INFO_MISC+1) +#define INFO_NAME (INFO_MOUNT+1) +#define INFO_PROGRESS (INFO_NAME+1) +#define INFO_REMOVE (INFO_PROGRESS+1) +#define INFO_SKIP (INFO_REMOVE+1) +#define INFO_STATS (INFO_SKIP+1) +#define INFO_SYMSAFE (INFO_STATS+1) + +#define COUNT_INFO (INFO_SYMSAFE+1) + +#define DEBUG_ACL 0 +#define DEBUG_BACKUP (DEBUG_ACL+1) +#define DEBUG_BIND (DEBUG_BACKUP+1) +#define DEBUG_CHDIR (DEBUG_BIND+1) +#define DEBUG_CONNECT (DEBUG_CHDIR+1) +#define DEBUG_CMD (DEBUG_CONNECT+1) +#define DEBUG_DEL (DEBUG_CMD+1) +#define DEBUG_DELTASUM (DEBUG_DEL+1) +#define DEBUG_DUP (DEBUG_DELTASUM+1) +#define DEBUG_EXIT (DEBUG_DUP+1) +#define DEBUG_FILTER (DEBUG_EXIT+1) +#define DEBUG_FLIST (DEBUG_FILTER+1) +#define DEBUG_FUZZY (DEBUG_FLIST+1) +#define DEBUG_GENR (DEBUG_FUZZY+1) +#define DEBUG_HLINK (DEBUG_GENR+1) +#define DEBUG_ICONV (DEBUG_HLINK+1) +#define DEBUG_OWN (DEBUG_ICONV+1) +#define DEBUG_PROTO (DEBUG_OWN+1) +#define DEBUG_RECV (DEBUG_PROTO+1) +#define DEBUG_SEND (DEBUG_RECV+1) +#define DEBUG_TIME (DEBUG_SEND+1) + +#define COUNT_DEBUG (DEBUG_TIME+1) #ifndef HAVE_INET_NTOP const char *inet_ntop(int af, const void *src, char *dst, size_t size);