Aged news from NEWS to OLDNEWS.
[rsync/rsync.git] / options.c
index 01e9695..1dadf31 100644 (file)
--- a/options.c
+++ b/options.c
@@ -52,7 +52,7 @@ int ignore_times=0;
 int delete_mode=0;
 int delete_excluded=0;
 int one_file_system=0;
-int remote_version=0;
+int protocol_version = PROTOCOL_VERSION;
 int sparse_files=0;
 int do_compression=0;
 int am_root=0;
@@ -62,7 +62,6 @@ int implied_dirs = 1;
 int numeric_ids = 0;
 int force_delete = 0;
 int io_timeout = 0;
-int io_error = 0;
 int read_only = 0;
 int module_id = -1;
 int am_server = 0;
@@ -162,7 +161,7 @@ static void print_rsync_version(enum logcode f)
        rprintf(f, "%s  version %s  protocol version %d\n",
                RSYNC_NAME, RSYNC_VERSION, PROTOCOL_VERSION);
        rprintf(f,
-               "Copyright (C) 1996-2002 by Andrew Tridgell and others\n");
+               "Copyright (C) 1996-2003 by Andrew Tridgell and others\n");
        rprintf(f, "<http://rsync.samba.org/>\n");
        rprintf(f, "Capabilities: %d-bit files, %ssocketpairs, "
                "%shard links, %ssymlinks, batchfiles, \n",
@@ -376,6 +375,7 @@ static struct poptOption long_options[] = {
   {"files-from",       0,  POPT_ARG_STRING, &files_from, 0, 0, 0 },
   {"from0",           '0', POPT_ARG_NONE,   &eol_nulls, 0, 0, 0},
   {"no-implied-dirs",  0,  POPT_ARG_VAL,    &implied_dirs, 0, 0, 0 },
+  {"protocol",         0,  POPT_ARG_INT,    &protocol_version, 0, 0, 0 },
 #ifdef INET6
   {0,                '4', POPT_ARG_VAL,    &default_af_hint, AF_INET, 0, 0 },
   {0,                '6', POPT_ARG_VAL,    &default_af_hint, AF_INET6, 0, 0 },
@@ -396,7 +396,7 @@ void option_error(void)
 {
        if (err_buf[0]) {
                rprintf(FLOG, "%s", err_buf);
-               rprintf(FERROR, "%s: %s", RSYNC_NAME, err_buf);
+               rprintf(FERROR, RSYNC_NAME ": %s", err_buf);
        } else {
                rprintf (FERROR, "Error parsing options: "
                         "option may be supported on client but not on server?\n");
@@ -641,6 +641,9 @@ int parse_arguments(int *argc, const char ***argv, int frommain)
                exit_cleanup(RERR_SYNTAX);
        }
 
+       if (do_progress && !verbose)
+               verbose = 1;
+
        *argv = poptGetArgs(pc);
        if (*argv)
                *argc = count_args(*argv);
@@ -653,8 +656,11 @@ int parse_arguments(int *argc, const char ***argv, int frommain)
                        usage(FERROR);
                        exit_cleanup(RERR_SYNTAX);
                }
-               if (strcmp(files_from, "-") == 0)
+               if (strcmp(files_from, "-") == 0) {
                        filesfrom_fd = 0;
+                       if (am_server)
+                               remote_filesfrom_file = "-";
+               }
                else if ((colon = find_colon(files_from)) != 0) {
                        if (am_server) {
                                usage(FERROR);
@@ -821,7 +827,7 @@ void server_options(char **args,int *argc)
 
        /* Only send --suffix if it specifies a non-default value. */
        if (strcmp(backup_suffix, backup_dir? "" : BACKUP_SUFFIX) != 0) {
-               char *s = malloc(9+backup_suffix_len+1);
+               char *s = new_array(char, 9+backup_suffix_len+1);
                if (!s)
                        out_of_memory("server_options");
                /* We use the following syntax to avoid weirdness with '~'. */