Commit e2bf812f authored by Ondrej Zajicek's avatar Ondrej Zajicek
Browse files

Fixes RIPng compatibility.

Also probably breaks compatibility with older BIRDs, but RIPng not
really worked here.

Thanks to Goesta Smekal for the original patch.
parent f7615037
Loading
Loading
Loading
Loading
+5 −1
Original line number Diff line number Diff line
@@ -146,7 +146,11 @@ rip_tx( sock *s )
    DBG( "Preparing packet to send: " );

    packet->heading.command = RIPCMD_RESPONSE;
#ifndef IPV6
    packet->heading.version = RIP_V2;
#else
    packet->heading.version = RIP_NG;
#endif
    packet->heading.unused  = 0;

    i = !!P_CF->authtype;
@@ -979,7 +983,7 @@ rip_init_config(struct rip_proto_config *c)
{
  init_list(&c->iface_list);
  c->infinity	= 16;
  c->port	= 520;
  c->port	= RIP_PORT;
  c->period	= 30;
  c->garbage_time = 120+180;
  c->timeout_time = 120;
+16 −4
Original line number Diff line number Diff line
@@ -14,6 +14,17 @@
#define PACKET_MAX	25
#define PACKET_MD5_MAX	18	/* FIXME */


#define RIP_V1		1
#define RIP_V2		2
#define RIP_NG		1	/* A new version numbering */

#ifndef IPV6
#define RIP_PORT	520	/* RIP for IPv4 */
#else
#define RIP_PORT	521	/* RIPng */
#endif

struct rip_connection {
  node n;

@@ -39,6 +50,7 @@ struct rip_packet_heading { /* 4 bytes */
  u8 version;
#define RIP_V1			1
#define RIP_V2			2
#define RIP_NG 			1	/* this is verion 1 of RIPng */
  u16 unused;
};