Author: des
Date: Mon Feb 25 16:47:09 2013
New Revision: 247270
URL: http://svnweb.freebsd.org/changeset/base/247270

Log:
  - Implement and use usage().
  - Document the -C option.
  - Allow rtadvd to be invoked without any interfaces on the command line,
    and document that possibility.
  
  MFC after:    1 week

Modified:
  head/usr.sbin/rtadvd/rtadvd.8
  head/usr.sbin/rtadvd/rtadvd.c

Modified: head/usr.sbin/rtadvd/rtadvd.8
==============================================================================
--- head/usr.sbin/rtadvd/rtadvd.8       Mon Feb 25 16:25:38 2013        
(r247269)
+++ head/usr.sbin/rtadvd/rtadvd.8       Mon Feb 25 16:47:09 2013        
(r247270)
@@ -29,7 +29,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd July 14, 2011
+.Dd February 25, 2013
 .Dt RTADVD 8
 .Os
 .Sh NAME
@@ -39,13 +39,19 @@
 .Nm
 .Op Fl dDfRs
 .Op Fl c Ar configfile
+.Op Fl C Ar ctlsock
 .Op Fl M Ar ifname
 .Op Fl p Ar pidfile
-.Ar interface ...
+.Op Ar interface ...
 .Sh DESCRIPTION
 .Nm
 sends router advertisement packets to the specified
 .Ar interfaces .
+If no interfaces are specified,
+.Nm
+will still run, but will not advertise any routes until interfaces are
+added using
+.Xr rtadvctl 8 .
 .Pp
 The program will daemonize itself on invocation.
 It will then send router advertisement packets periodically, as well
@@ -121,6 +127,11 @@ for the configuration file.
 By default,
 .Pa /etc/rtadvd.conf
 is used.
+.It Fl C
+Specify an alternate location for the control socket used by
+.Xr rtadvctl 8 .
+The default is
+.Pa /var/run/rtadvd.sock .
 .It Fl d
 Print debugging information.
 .It Fl D
@@ -185,6 +196,7 @@ The default process ID file.
 .Ex -std
 .Sh SEE ALSO
 .Xr rtadvd.conf 5 ,
+.Xr rtadvctl 8 ,
 .Xr rtsol 8
 .Rs
 .%A Thomas Narten

Modified: head/usr.sbin/rtadvd/rtadvd.c
==============================================================================
--- head/usr.sbin/rtadvd/rtadvd.c       Mon Feb 25 16:25:38 2013        
(r247269)
+++ head/usr.sbin/rtadvd/rtadvd.c       Mon Feb 25 16:47:09 2013        
(r247270)
@@ -166,6 +166,15 @@ static void        rtmsg_input(struct sockinfo 
 static void    set_short_delay(struct ifinfo *);
 static int     check_accept_rtadv(int);
 
+static void
+usage(void)
+{
+
+       fprintf(stderr, "usage: rtadvd [-dDfRs] "
+           "[-c configfile] [-C ctlsock] [-M ifname] [-p pidfile]\n");
+       exit(1);
+}
+
 int
 main(int argc, char *argv[])
 {
@@ -177,7 +186,7 @@ main(int argc, char *argv[])
        pid_t pid, otherpid;
 
        /* get command line options and arguments */
-       while ((ch = getopt(argc, argv, "c:C:dDfM:p:Rs")) != -1) {
+       while ((ch = getopt(argc, argv, "c:C:dDfhM:p:Rs")) != -1) {
                switch (ch) {
                case 'c':
                        conffile = optarg;
@@ -209,17 +218,12 @@ main(int argc, char *argv[])
                case 'p':
                        pidfilename = optarg;
                        break;
+               default:
+                       usage();
                }
        }
        argc -= optind;
        argv += optind;
-       if (argc == 0) {
-               fprintf(stderr,
-                   "usage: rtadvd [-dDfRs] [-c conffile] "
-                   "[-C ctrlsockname] [-M ifname] "
-                   "[-p pidfile] interfaces...\n");
-               exit(1);
-       }
 
        logopt = LOG_NDELAY | LOG_PID;
        if (fflag)
_______________________________________________
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to