X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/d5d4b282203f9cb06e77e67021ffdd62abb24d89..1db8b61de7fd31b9c7b02918e6c194255979f030:/options.c diff --git a/options.c b/options.c index 93951176..8893195a 100644 --- a/options.c +++ b/options.c @@ -74,11 +74,21 @@ int modify_window=0; #endif int blocking_io=0; -/** Global options set from command line. **/ -struct global_opts global_opts; +/** Network address family. **/ +#ifdef INET6 +int default_af_hint = 0; /* Any protocol */ +#else +int default_af_hint = AF_INET; /* Must use IPv4 */ +#endif + +/** Do not go into the background when run as --daemon. Good + * for debugging and required for running as a service on W32, + * or under Unix process-monitors. **/ +int no_detach = 0; + -int read_batch=0; /* dw */ -int write_batch=0; /* dw */ +int read_batch=0; +int write_batch=0; char *backup_suffix = BACKUP_SUFFIX; char *tmpdir = NULL; @@ -106,7 +116,7 @@ static int modify_window_set; char *bind_address; -static void print_rsync_version(int f) +static void print_rsync_version(enum logcode f) { char const *got_socketpair = "no "; char const *hardlinks = "no "; @@ -171,8 +181,8 @@ void usage(enum logcode F) rprintf(F," --backup-dir make backups into this directory\n"); rprintf(F," --suffix=SUFFIX override backup suffix\n"); rprintf(F," -u, --update update only (don't overwrite newer files)\n"); - rprintf(F," -l, --links preserve soft links\n"); - rprintf(F," -L, --copy-links treat soft links like regular files\n"); + rprintf(F," -l, --links copy symlinks as symlinks\n"); + rprintf(F," -L, --copy-links copy the referent of symlinks\n"); rprintf(F," --copy-unsafe-links copy links outside the source tree\n"); rprintf(F," --safe-links ignore links outside the destination tree\n"); rprintf(F," -H, --hard-links preserve hard links\n"); @@ -212,7 +222,8 @@ void usage(enum logcode F) rprintf(F," --include-from=FILE don't exclude patterns listed in FILE\n"); rprintf(F," --version print version number\n"); rprintf(F," --daemon run as a rsync daemon\n"); - rprintf(F," --address bind to the specified address\n"); + rprintf(F," --no-detach do not detach from the parent\n"); + rprintf(F," --address=ADDRESS bind to the specified address\n"); rprintf(F," --config=FILE specify alternate rsyncd.conf file\n"); rprintf(F," --port=PORT specify alternate rsyncd port number\n"); rprintf(F," --blocking-io use blocking IO for the remote shell\n"); @@ -298,6 +309,7 @@ static struct poptOption long_options[] = { /* TODO: Should this take an optional int giving the compression level? */ {"compress", 'z', POPT_ARG_NONE, &do_compression}, {"daemon", 0, POPT_ARG_NONE, &am_daemon}, + {"no-detach", 0, POPT_ARG_NONE, &no_detach}, {"stats", 0, POPT_ARG_NONE, &do_stats}, {"progress", 0, POPT_ARG_NONE, &do_progress}, {"partial", 0, POPT_ARG_NONE, &keep_partial}, @@ -314,8 +326,8 @@ static struct poptOption long_options[] = { {"read-batch", 'f', POPT_ARG_STRING, &batch_ext, 'f'}, {"write-batch", 'F', POPT_ARG_NONE, &write_batch, 0}, #ifdef INET6 - {0, '4', POPT_ARG_VAL, &global_opts.af, AF_INET }, - {0, '6', POPT_ARG_VAL, &global_opts.af, AF_INET6 }, + {0, '4', POPT_ARG_VAL, &default_af_hint, AF_INET }, + {0, '6', POPT_ARG_VAL, &default_af_hint, AF_INET6 }, #endif {0,0,0,0} };