cvs commit: src/sys/netinet src/usr.sbin/arp src/sbin/route
Matthew Dillon
dillon at crater.dragonflybsd.org
Tue Nov 2 15:50:17 PST 2004
dillon 2004/11/02 15:49:38 PST
DragonFly src repository
Modified files:
sys/netinet if_ether.c
usr.sbin/arp arp.c
sbin/route route.c
Log:
Fix 'route add -host <target> -interface <interface_name>. This was
previously adding a static arp entry with the interface's MAC address
instead of the target's address or an incomplete address. The result is
that the target cannot be routed to.
The fix is to (1) Install the route with 'incomplete' link level info rather
then using the interface's MAC address, (2) Allowing the incomplete address
to be resolved and timeout normally, (3) re-clearing the entry to an
incomplete status instead of destroying it when the ARP times out,
and (4) Making 'arp -d -a' only clear link level routes marked static
instead of deleting them.
Noticed-by: Mikhail Teterin <mi+dragonflybsd at xxxxxxxxxxxxxxxxx>
Revision Changes Path
1.16 +11 -5 src/sys/netinet/if_ether.c
1.5 +16 -5 src/usr.sbin/arp/arp.c
1.8 +7 -0 src/sbin/route/route.c
http://www.dragonflybsd.org/cvsweb/src/sys/netinet/if_ether.c.diff?r1=1.15&r2=1.16&f=u
http://www.dragonflybsd.org/cvsweb/src/usr.sbin/arp/arp.c.diff?r1=1.4&r2=1.5&f=u
http://www.dragonflybsd.org/cvsweb/src/sbin/route/route.c.diff?r1=1.7&r2=1.8&f=u
More information about the Commits
mailing list