From: Pavel Machek Date: Mon, 31 May 1999 20:34:48 +0000 (+0000) Subject: Set corectly destination address for RIP multicast. Broadcasting & X-Git-Tag: v1.2.0~1541 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9de840bdbd59669a129f68f1ff3595b34439ec09;p=thirdparty%2Fbird.git Set corectly destination address for RIP multicast. Broadcasting & multicasting rip actually works [broadcasting is kind of hard to turn it on, through]. --- diff --git a/proto/rip/rip.c b/proto/rip/rip.c index 616994e4a..a3ddf6150 100644 --- a/proto/rip/rip.c +++ b/proto/rip/rip.c @@ -489,14 +489,14 @@ new_iface(struct proto *p, struct iface *new, unsigned long flags, struct iface_ rif->sock->dport = P_CF->port; rif->sock->ttl = 1; /* FIXME: care must be taken not to send requested responses from this socket */ - if (want_multicast) { - rif->sock->daddr = ipa_from_u32(0xe0000009); - rif->sock->saddr = ipa_from_u32(0xe0000009); - } if (flags & IF_BROADCAST) rif->sock->daddr = new->addr->brd; if (flags & IF_UNNUMBERED) /* Hmm, rip is not defined over unnumbered links */ rif->sock->daddr = new->addr->opposite; + if (want_multicast) { + rif->sock->daddr = ipa_from_u32(0xe0000009); + rif->sock->saddr = ipa_from_u32(0xe0000009); + } if (!ipa_nonzero(rif->sock->daddr)) { log( L_WARN "RIP/%s: interface %s is too strange for me", P_NAME, rif->iface ? rif->iface->name : "(dummy)" );