Well -
I've added some printf()s to determine that what I suspected
was correct. The route is being entered into the table
twice.
If looks like in_ifinit() is calling the sioctl() routine,
which calls if_up(), which then adds the route.
Then, in_ifinit() goes on to add another route and *poof*
- the route's already there - you get EEXISTS.
What's interesting about this is it only happens on my
small laptop. On an older 486 I have - if_up() doesn't
seem to get invokved (I'm working on finding out why.)
For those interested - see /sys/netinet/in.c and
/sys/net/if.c and /sys/net/if_sl.c. This is all with
a 3.2-RELEASE source base.
- Dave Rivers -
To Unsubscribe: send mail to [email protected]
with "unsubscribe freebsd-hackers" in the body of the message