X-Git-Url: https://mattmccutchen.net/rsync/rsync-patches.git/blobdiff_plain/85096e5eda83525eadddc9c6b1bc8135ac22e54a..0ef5abcbbb95298fa9faf1d3eb275a9e76e1d951:/slp.diff diff --git a/slp.diff b/slp.diff index bdb5e23..6c6bc4e 100644 --- a/slp.diff +++ b/slp.diff @@ -43,7 +43,7 @@ diff --git a/Makefile.in b/Makefile.in diff --git a/clientserver.c b/clientserver.c --- a/clientserver.c +++ b/clientserver.c -@@ -1028,6 +1028,13 @@ int daemon_main(void) +@@ -1064,6 +1064,13 @@ int daemon_main(void) * address too. In fact, why not just do inet_ntop on the * local address??? */ @@ -60,7 +60,7 @@ diff --git a/clientserver.c b/clientserver.c diff --git a/configure.in b/configure.in --- a/configure.in +++ b/configure.in -@@ -637,6 +637,29 @@ if test $rsync_cv_can_hardlink_special = yes; then +@@ -639,6 +639,29 @@ if test $rsync_cv_can_hardlink_special = yes; then AC_DEFINE(CAN_HARDLINK_SPECIAL, 1, [Define to 1 if link() can hard-link special files.]) fi @@ -126,7 +126,7 @@ diff --git a/loadparm.c b/loadparm.c diff --git a/main.c b/main.c --- a/main.c +++ b/main.c -@@ -1146,6 +1146,18 @@ static int start_client(int argc, char *argv[]) +@@ -1121,6 +1121,18 @@ static int start_client(int argc, char *argv[]) if (!read_batch) { /* for read_batch, NO source is specified */ char *path = check_for_hostspec(argv[0], &shell_machine, &rsync_port); @@ -148,7 +148,7 @@ diff --git a/main.c b/main.c diff --git a/options.c b/options.c --- a/options.c +++ b/options.c -@@ -224,6 +224,7 @@ static void print_rsync_version(enum logcode f) +@@ -225,6 +225,7 @@ static void print_rsync_version(enum logcode f) char const *links = "no "; char const *iconv = "no "; char const *ipv6 = "no "; @@ -156,7 +156,7 @@ diff --git a/options.c b/options.c STRUCT_STAT *dumstat; #if SUBPROTOCOL_VERSION != 0 -@@ -256,6 +257,9 @@ static void print_rsync_version(enum logcode f) +@@ -258,6 +259,9 @@ static void print_rsync_version(enum logcode f) #if defined HAVE_LUTIMES && defined HAVE_UTIMES symtimes = ""; #endif @@ -166,7 +166,7 @@ diff --git a/options.c b/options.c rprintf(f, "%s version %s protocol version %d%s\n", RSYNC_NAME, RSYNC_VERSION, PROTOCOL_VERSION, subprotocol); -@@ -269,8 +273,8 @@ static void print_rsync_version(enum logcode f) +@@ -271,8 +275,8 @@ static void print_rsync_version(enum logcode f) (int)(sizeof (int64) * 8)); rprintf(f, " %ssocketpairs, %shardlinks, %ssymlinks, %sIPv6, batchfiles, %sinplace,\n", got_socketpair, hardlinks, links, ipv6, have_inplace); @@ -180,7 +180,7 @@ diff --git a/options.c b/options.c diff --git a/rsync.h b/rsync.h --- a/rsync.h +++ b/rsync.h -@@ -187,6 +187,10 @@ +@@ -193,6 +193,10 @@ #define SIGNIFICANT_ITEM_FLAGS (~(\ ITEM_BASIS_TYPE_FOLLOWS | ITEM_XNAME_FOLLOWS | ITEM_LOCAL_CHANGE)) @@ -188,13 +188,13 @@ diff --git a/rsync.h b/rsync.h +/* definately don't set to less than about 30 seconds */ +#define SLP_MIN_TIMEOUT 120 + - #define CFN_KEEP_LEADING_DOT_DIR (1<<0) + #define CFN_KEEP_DOT_DIRS (1<<0) #define CFN_KEEP_TRAILING_SLASH (1<<1) #define CFN_DROP_TRAILING_DOT_DIR (1<<2) diff --git a/rsync.yo b/rsync.yo --- a/rsync.yo +++ b/rsync.yo -@@ -144,7 +144,12 @@ particular rsync daemon by leaving off the module name: +@@ -148,7 +148,12 @@ particular rsync daemon by leaving off the module name: quote(tt(rsync somehost.mydomain.com::)) @@ -220,12 +220,12 @@ diff --git a/rsyncd.conf.yo b/rsyncd.conf.yo --- a/rsyncd.conf.yo +++ b/rsyncd.conf.yo @@ -104,6 +104,15 @@ details on some of the options you may be able to set. By default no - special socket options are set. These settings are superseded by the - bf(--sockopts) command-line option. + special socket options are set. These settings can also be specified + via the bf(--sockopts) command-line option. -+dit(bf(slp refresh)) This option is used to determine how long service ++dit(bf(slp refresh)) This parameter is used to determine how long service +advertisements are valid (measured in seconds), and is only applicable if -+you have Service Location Protocol support compiled in. If this option is ++you have Service Location Protocol support compiled in. If this is +not set or is set to zero, then service advertisements never time out. If +this is set to less than 120 seconds, then 120 seconds is used. If it is +set to more than 65535, then 65535 is used (which is a limitation of SLP). @@ -234,8 +234,8 @@ diff --git a/rsyncd.conf.yo b/rsyncd.conf.yo + enddit() - -@@ -654,6 +663,7 @@ use chroot = yes + manpagesection(MODULE PARAMETERS) +@@ -652,6 +661,7 @@ use chroot = yes max connections = 4 syslog facility = local5 pid file = /var/run/rsyncd.pid @@ -246,7 +246,7 @@ diff --git a/rsyncd.conf.yo b/rsyncd.conf.yo diff --git a/socket.c b/socket.c --- a/socket.c +++ b/socket.c -@@ -524,6 +524,16 @@ void start_accept_loop(int port, int (*fn)(int, int)) +@@ -530,6 +530,16 @@ void start_accept_loop(int port, int (*fn)(int, int)) { fd_set deffds; int *sp, maxfd, i; @@ -263,7 +263,7 @@ diff --git a/socket.c b/socket.c #ifdef HAVE_SIGACTION sigact.sa_flags = SA_NOCLDSTOP; -@@ -552,14 +562,25 @@ void start_accept_loop(int port, int (*fn)(int, int)) +@@ -558,14 +568,25 @@ void start_accept_loop(int port, int (*fn)(int, int)) maxfd = sp[i]; } @@ -289,7 +289,7 @@ diff --git a/socket.c b/socket.c /* close log file before the potentially very long select so * file can be trimmed by another process instead of growing -@@ -571,8 +592,18 @@ void start_accept_loop(int port, int (*fn)(int, int)) +@@ -577,8 +598,18 @@ void start_accept_loop(int port, int (*fn)(int, int)) #else fds = deffds; #endif