#define RSYNC_NAME "rsync"
#define RSYNCD_CONF "/etc/rsyncd.conf"
-#define RSYNCD_LOG "/var/adm/rsyncd.log"
#define BACKUP_SUFFIX "~"
#define SAME_TIME (1<<7)
/* update this if you make incompatible changes */
-#define PROTOCOL_VERSION 17
+#define PROTOCOL_VERSION 19
#define MIN_PROTOCOL_VERSION 11
#define MAX_PROTOCOL_VERSION 30
#define SPARSE_WRITE_SIZE (1024)
#define WRITE_SIZE (32*1024)
#define CHUNK_SIZE (32*1024)
-#define MAX_MAP_SIZE (4*1024*1024)
+#define MAX_MAP_SIZE (1*1024*1024)
+#define IO_BUFFER_SIZE (4096)
+#define MAX_READ_BUFFER (1024*1024)
-#define MAX_ARGS 100
+#define MAX_ARGS 1000
#define BLOCKING_TIMEOUT 10
+#define MPLEX_BASE 7
#define FERROR 1
#define FINFO 2
#include <unistd.h>
#endif
#include <stdio.h>
+#include <stddef.h>
#ifdef HAVE_SYS_PARAM_H
#include <sys/param.h>
#endif
#include <errno.h>
-#ifdef HAVE_MMAP
+#if defined(HAVE_MMAP) && defined(HAVE_MUNMAP)
#include <sys/mman.h>
+#define USE_MMAP 1
#endif
#ifdef HAVE_UTIME_H
#include "lib/getopt.h"
#endif
+#ifdef HAVE_GLOB
+#include <glob.h>
+#endif
+
/* these are needed for the uid/gid mapping code */
#include <pwd.h>
#include <grp.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <netdb.h>
+#include <syslog.h>
+#include <sys/file.h>
#ifndef S_IFLNK
#define S_IFLNK 0120000
#define MAXPATHLEN 1024
#endif
+#ifndef INADDR_NONE
+#define INADDR_NONE 0xffffffff
+#endif
+
struct file_struct {
unsigned flags;
time_t modtime;
OFF_T size, p_offset;
};
+struct exclude_struct {
+ char *orig;
+ char *pattern;
+ int regular_exp;
+ int include;
+ int directory;
+ int local;
+};
+
+
/* we need this function because of the silly way in which duplicate
entries are handled in the file lists - we can't change this
without breaking existing versions */