diff options
author | Martin Mares <mj@ucw.cz> | 1999-11-17 11:16:15 +0000 |
---|---|---|
committer | Martin Mares <mj@ucw.cz> | 1999-11-17 11:16:15 +0000 |
commit | ea9bb932a31e5df14e3a1a5f580e62b6aedc0247 (patch) | |
tree | 82c17b5ea6d34b1137e0ae213491f3f910955cd0 /proto/rip | |
parent | 7d509304b58d7ebf1d53e36a8e656830b409e1e8 (diff) |
Commented out nexthop selection, see the comment.
Diffstat (limited to 'proto/rip')
-rw-r--r-- | proto/rip/rip.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/proto/rip/rip.c b/proto/rip/rip.c index fbe7fe13..de0ae828 100644 --- a/proto/rip/rip.c +++ b/proto/rip/rip.c @@ -103,12 +103,20 @@ rip_tx( sock *s ) ipa_hton( packet->block[i].netmask ); packet->block[i].nexthop = IPA_NONE; { + /* + * FIXME: This DOESN'T work. The s->daddr will be typically + * a broadcast or multicast address which will be of course + * rejected by the neighbor cache. I've #ifdef'd out the whole + * test to avoid dereferencing NULL pointer. --mj + */ +#if 0 neighbor *n1, *n2; n1 = neigh_find( p, &s->daddr, 0 ); /* FIXME, mj: this is neccessary for responses, still it is too complicated for common case */ n2 = neigh_find( p, &e->nexthop, 0 ); if (n1->iface == n2->iface) packet->block[i].nexthop = e->nexthop; else +#endif packet->block[i].nexthop = IPA_NONE; } ipa_hton( packet->block[i].nexthop ); |