Be more strict about 'enum logcode' rather than int. IRIX compiler
[rsync/rsync.git] / options.c
index 0316be7..4f2f528 100644 (file)
--- a/options.c
+++ b/options.c
@@ -74,8 +74,8 @@ int modify_window=0;
 #endif
 int blocking_io=0;
 
-/** Network address family. **/
-int af = AF_INET;
+/** Global options set from command line. **/
+struct global_opts global_opts;
 
 int read_batch=0;  /* dw */
 int write_batch=0; /* dw */
@@ -106,11 +106,12 @@ 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 ";
         char const *links = "no ";
+       char const *ipv6 = "no ";
 
 #ifdef HAVE_SOCKETPAIR
         got_socketpair = "";
@@ -124,16 +125,19 @@ static void print_rsync_version(int f)
         links = "";
 #endif
 
+#if INET6
+       ipv6 = "";
+#endif       
+
         rprintf(f, "%s  version %s  protocol version %d\n",
-                RSYNC_NAME, VERSION, PROTOCOL_VERSION);
+                RSYNC_NAME, RSYNC_VERSION, PROTOCOL_VERSION);
         rprintf(f,
                 "Copyright (C) 1996-2001 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\n",
+                "%shard links, %ssymlinks, batchfiles, %sIPv6\n\n",
                 (int) (sizeof(OFF_T) * 8),
-                got_socketpair,
-                hardlinks, links);
+                got_socketpair, hardlinks, links, ipv6);
 
 #ifdef NO_INT64
         rprintf(f, "WARNING: no 64-bit integers on this platform!\n");
@@ -208,7 +212,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");  
@@ -294,6 +299,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,   &global_opts.no_detach},
   {"stats",            0,  POPT_ARG_NONE,   &do_stats},
   {"progress",         0,  POPT_ARG_NONE,   &do_progress},
   {"partial",          0,  POPT_ARG_NONE,   &keep_partial},
@@ -310,8 +316,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,    &af,         AF_INET },
-  {0,                '6', POPT_ARG_VAL,    &af,         AF_INET6 },
+  {0,                '4', POPT_ARG_VAL,    &global_opts.af_hint,   AF_INET },
+  {0,                '6', POPT_ARG_VAL,    &global_opts.af_hint,   AF_INET6 },
 #endif
   {0,0,0,0}
 };