Discussion:
arp(8) and proxy only entries.
(too old to reply)
Sean Boudreau
2008-01-09 16:16:44 UTC
Permalink
Hi:

arp(8) seems to have lost the ability to add / delete "proxy
only" entries (SIN_PROXY flag set). FWICT, this was the
purpose of the "pro" keyword that sort of got merged in with
the "pub" keyword with PR 32681.

Here's a suggested diff. Any comments before I commit?

-seanb
Christos Zoulas
2008-01-09 22:06:28 UTC
Permalink
-=-=-=-=-=-
arp(8) seems to have lost the ability to add / delete "proxy
only" entries (SIN_PROXY flag set). FWICT, this was the
purpose of the "pro" keyword that sort of got merged in with
the "pub" keyword with PR 32681.
Here's a suggested diff. Any comments before I commit?
-seanb
-=-=-=-=-=-
Index: arp.c
===================================================================
RCS file: /cvsroot/src/usr.sbin/arp/arp.c,v
retrieving revision 1.45
diff -u -r1.45 arp.c
--- arp.c 15 Dec 2007 19:44:54 -0000 1.45
+++ arp.c 9 Jan 2008 21:05:51 -0000
@@ -269,6 +269,10 @@
else if (strncmp(argv[0], "pub", 3) == 0) {
flags |= RTF_ANNOUNCE;
doing_proxy = SIN_PROXY;
+ if (argc && strncmp(argv[1], "pro", 3) == 0) {
+ export_only = 1;
+ argc--; argv++;
+ }
} else if (strncmp(argv[0], "trail", 5) == 0) {
warnx("%s: Sending trailers is no longer supported",
host);
@@ -363,10 +367,10 @@
sina = &sin_m;
rtm = &m_rtmsg.m_rtm;
- if (info && strncmp(info, "pub", 3) == 0)
- export_only = 1;
getsocket();
sin_m = blank_sin; /* struct copy */
+ if (info && strncmp(info, "pro", 3) == 0)
+ sina->sin_other = SIN_PROXY;
if (getinetaddr(host, &sina->sin_addr) == -1)
return (1);
@@ -569,9 +573,9 @@
progname = getprogname();
(void)fprintf(stderr, "Usage: %s [-n] hostname\n", progname);
(void)fprintf(stderr, " %s [-nv] -a\n", progname);
- (void)fprintf(stderr, " %s [-v] -d [-a|hostname [pub]]\n",
+ (void)fprintf(stderr, " %s [-v] -d [-a|hostname [pub [pro]]]\n",
progname);
- (void)fprintf(stderr, " %s -s hostname ether_addr [temp] [pub]\n",
+ (void)fprintf(stderr, " %s -s hostname ether_addr [temp] [pub [pro]]\n",
progname);
(void)fprintf(stderr, " %s -f filename\n", progname);
exit(1);
Index: arp.8
===================================================================
RCS file: /cvsroot/src/usr.sbin/arp/arp.8,v
retrieving revision 1.19
diff -u -r1.19 arp.8
--- arp.8 31 Jan 2006 17:47:04 -0000 1.19
+++ arp.8 9 Jan 2008 21:05:51 -0000
@@ -45,11 +45,15 @@
.Nm
.Op Fl v
.Fl d
-.Op Fl a | Ar hostname
+.Fl a
+.Nm
+.Op Fl v
+.Fl d Ar hostname
+.Op Ar pro
.Nm
.Fl s Ar hostname ether_addr
.Op Ar temp
-.Op Ar pub
+.Op Ar pub Op Ar pro
.Nm
.Fl f Ar filename
.Sh DESCRIPTION
@@ -78,9 +82,9 @@
.Fl d
flag.
If the
-.Cm pub
-keyword is specified, only the
-.Dq published
+.Cm pro
+keyword is specified, only the published
+.Dq proxy only
.Tn ARP
entry
for this host will be deleted.
@@ -127,7 +131,11 @@
server,
responding to requests for
.Ar hostname
-even though the host address is not its own.
+even though the host address is not its own. If the word
+.Ar pro
+is also given, the published entry will be a
+.Dq proxy only
+entry.
.It Fl v
Display verbose information when adding or deleting
.Tn ARP
Is there a reason not to call it "proxy"?

christos


--
Posted automagically by a mail2news gateway at muc.de e.V.
Please direct questions, flames, donations, etc. to news-***@muc.de
Sean Boudreau
2008-01-09 18:19:55 UTC
Permalink
Post by Christos Zoulas
Is there a reason not to call it "proxy"?
christos
Other than historical none that I can see. We
can document "proxy" but continue to match on
"pro" in the code?

-seanb

--
Posted automagically by a mail2news gateway at muc.de e.V.
Please direct questions, flames, donations, etc. to news-***@muc.de
Christos Zoulas
2008-01-10 03:47:01 UTC
Permalink
Post by Sean Boudreau
Post by Christos Zoulas
Is there a reason not to call it "proxy"?
christos
Other than historical none that I can see. We
can document "proxy" but continue to match on
"pro" in the code?
That is an excellent idea.

christos


--
Posted automagically by a mail2news gateway at muc.de e.V.
Please direct questions, flames, donations, etc. to news-***@muc.de
Loading...