svn commit: r247270 - head/usr.sbin/rtadvd

Dag-Erling Smørgrav des at FreeBSD.org
Mon Feb 25 16:47:10 UTC 2013


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)


More information about the svn-src-head mailing list