Add the -p switch - tells rwhod to ignore POINTOPOINT interfaces.

Mostly submitted by: Stefan Zehl <sec@42.org>
PR:	12216
This commit is contained in:
Brian Somers 1999-06-16 21:05:21 +00:00
parent a0a549c7fd
commit 2a7bd79571
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=47963
2 changed files with 15 additions and 2 deletions

View File

@ -40,6 +40,7 @@
.Sh SYNOPSIS
.Nm rwhod
.Op Fl i
.Op Fl p
.Op Fl l
.Op Fl m Op Ar ttl
.Sh DESCRIPTION
@ -76,6 +77,15 @@ option enables insecure mode, which causes
to ignore the source port on incoming packets.
.Pp
The
.Fl p
option tells
.Nm
to ignore all
.Dv POINTOPOINT
interfaces. This is useful if you do not wish to keep dial on demand
interfaces permanently active.
.Pp
The
.Fl l
option enables listen mode, which causes
.Nm

View File

@ -42,7 +42,7 @@ static const char copyright[] =
static char sccsid[] = "@(#)rwhod.c 8.1 (Berkeley) 6/6/93";
#endif
static const char rcsid[] =
"$Id: rwhod.c,v 1.8 1998/12/17 11:05:57 des Exp $";
"$Id: rwhod.c,v 1.9 1999/01/11 05:27:37 steve Exp $";
#endif /* not lint */
#include <sys/param.h>
@ -117,6 +117,7 @@ static const char rcsid[] =
int insecure_mode;
int quiet_mode;
int iff_flag = IFF_POINTOPOINT;
int multicast_mode = NO_MULTICAST;
int multicast_scope;
struct sockaddr_in multicast_addr = { sizeof multicast_addr, AF_INET };
@ -200,6 +201,8 @@ main(argc, argv)
insecure_mode = 1;
else if (strcmp(*argv, "-l") == 0)
quiet_mode = 1;
else if (strcmp(*argv, "-p") == 0)
iff_flag = 0;
else
usage();
argv++, argc--;
@ -604,7 +607,7 @@ configure(s)
if ((flags & IFF_UP) == 0 ||
(flags & (((multicast_mode == PER_INTERFACE_MULTICAST) ?
IFF_MULTICAST : 0) |
IFF_BROADCAST|IFF_POINTOPOINT)) == 0)
IFF_BROADCAST|iff_flag)) == 0)
continue;
if (ifm->ifm_type != RTM_NEWADDR)
quit("out of sync parsing NET_RT_IFLIST");