X-Git-Url: https://mattmccutchen.net/rsync/rsync.git/blobdiff_plain/e012f858d6e8cbfdecc7863f7a3555e54dd04eee..7162c65df75c2cf20423e74776c9f6037518b6b0:/options.c diff --git a/options.c b/options.c index a883f13f..9a021c35 100644 --- a/options.c +++ b/options.c @@ -97,7 +97,7 @@ int modify_window = 0; int blocking_io = -1; int checksum_seed = 0; int inplace = 0; -unsigned int block_size = 0; +long block_size = 0; /* "long" because popt can't set an int32. */ /** Network address family. **/ @@ -129,7 +129,7 @@ char *password_file = NULL; char *rsync_path = RSYNC_PATH; char *backup_dir = NULL; char backup_dir_buf[MAXPATHLEN]; -int rsync_port = RSYNC_PORT; +int rsync_port = 0; int copy_dest = 0; int link_dest = 0; @@ -298,6 +298,7 @@ void usage(enum logcode F) rprintf(F," --files-from=FILE read FILE for list of source-file names\n"); rprintf(F," -0, --from0 all *-from file lists are delimited by nulls\n"); rprintf(F," --version print version number\n"); + rprintf(F," --port=PORT specify double-colon alternate port number\n"); rprintf(F," --blocking-io use blocking I/O for the remote shell\n"); rprintf(F," --no-blocking-io turn off --blocking-io\n"); rprintf(F," --stats give some file transfer stats\n"); @@ -375,7 +376,7 @@ static struct poptOption long_options[] = { {"relative", 'R', POPT_ARG_VAL, &relative_paths, 1, 0, 0 }, {"no-relative", 0, POPT_ARG_VAL, &relative_paths, 0, 0, 0 }, {"rsh", 'e', POPT_ARG_STRING, &shell_cmd, 0, 0, 0 }, - {"block-size", 'B', POPT_ARG_INT, &block_size, 0, 0, 0 }, + {"block-size", 'B', POPT_ARG_LONG, &block_size, 0, 0, 0 }, {"max-delete", 0, POPT_ARG_INT, &max_delete, 0, 0, 0 }, {"max-size", 0, POPT_ARG_STRING, &max_size_arg, OPT_MAX_SIZE, 0, 0 }, {"timeout", 0, POPT_ARG_INT, &io_timeout, OPT_TIMEOUT, 0, 0 }, @@ -393,6 +394,7 @@ static struct poptOption long_options[] = { {"blocking-io", 0, POPT_ARG_VAL, &blocking_io, 1, 0, 0 }, {"no-blocking-io", 0, POPT_ARG_VAL, &blocking_io, 0, 0, 0 }, {0, 'P', POPT_ARG_NONE, 0, 'P', 0, 0 }, + {"port", 0, POPT_ARG_INT, &rsync_port, 0, 0, 0 }, {"log-format", 0, POPT_ARG_STRING, &log_format, 0, 0, 0 }, {"bwlimit", 0, POPT_ARG_INT, &bwlimit, 0, 0, 0 }, {"backup-dir", 0, POPT_ARG_STRING, &backup_dir, 0, 0, 0 }, @@ -413,7 +415,6 @@ static struct poptOption long_options[] = { {"config", 0, POPT_ARG_STRING, 0, OPT_DAEMON, 0, 0 }, {"daemon", 0, POPT_ARG_NONE, 0, OPT_DAEMON, 0, 0 }, {"no-detach", 0, POPT_ARG_NONE, 0, OPT_DAEMON, 0, 0 }, - {"port", 0, POPT_ARG_INT, 0, OPT_DAEMON, 0, 0 }, {0,0,0,0, 0, 0, 0} }; @@ -1112,7 +1113,7 @@ void server_options(char **args,int *argc) args[ac++] = argstr; if (block_size) { - if (asprintf(&arg, "-B%u", block_size) < 0) + if (asprintf(&arg, "-B%lu", block_size) < 0) goto oom; args[ac++] = arg; } @@ -1235,6 +1236,8 @@ void server_options(char **args,int *argc) args[ac++] = "--files-from=-"; args[ac++] = "--from0"; } + if (!relative_paths) + args[ac++] = "--no-relative"; } *argc = ac;