diff options
Diffstat (limited to 'ripd')
| -rw-r--r-- | ripd/.cvsignore | 14 | ||||
| -rw-r--r-- | ripd/rip_interface.c | 17 | ||||
| -rw-r--r-- | ripd/rip_main.c | 8 | ||||
| -rw-r--r-- | ripd/rip_zebra.c | 5 | 
4 files changed, 16 insertions, 28 deletions
| diff --git a/ripd/.cvsignore b/ripd/.cvsignore deleted file mode 100644 index 41fd8c82..00000000 --- a/ripd/.cvsignore +++ /dev/null @@ -1,14 +0,0 @@ -Makefile -Makefile.in -*.o -ripd -ripd.conf -tags -TAGS -.deps -.nfs* -*.lo -*.la -*.libs -.arch-inventory -.arch-ids diff --git a/ripd/rip_interface.c b/ripd/rip_interface.c index d3b55fc0..810b71c0 100644 --- a/ripd/rip_interface.c +++ b/ripd/rip_interface.c @@ -78,9 +78,8 @@ ipv4_multicast_join (int sock,  {    int ret; -  ret = setsockopt_multicast_ipv4 (sock,  +  ret = setsockopt_ipv4_multicast (sock,  				   IP_ADD_MEMBERSHIP,  -				   ifa,   				   group.s_addr,   				   ifindex);  @@ -100,9 +99,8 @@ ipv4_multicast_leave (int sock,  {    int ret; -  ret = setsockopt_multicast_ipv4 (sock,  +  ret = setsockopt_ipv4_multicast (sock,  				   IP_DROP_MEMBERSHIP,  -				   ifa,   				   group.s_addr,   				   ifindex); @@ -138,18 +136,13 @@ rip_interface_new (void)  void  rip_interface_multicast_set (int sock, struct connected *connected)  { -  struct in_addr addr; -      assert (connected != NULL); -  addr = CONNECTED_ID(connected)->u.prefix4; - -  if (setsockopt_multicast_ipv4 (sock, IP_MULTICAST_IF, addr, 0,  -                                 connected->ifp->ifindex) < 0)  +  if (setsockopt_ipv4_multicast_if (sock, connected->ifp->ifindex) < 0)      {        zlog_warn ("Can't setsockopt IP_MULTICAST_IF on fd %d to " -		 "source address %s for interface %s", -		 sock, inet_ntoa(addr), +		 "ifindex %d for interface %s", +		 sock, connected->ifp->ifindex,  		 connected->ifp->name);      } diff --git a/ripd/rip_main.c b/ripd/rip_main.c index 57b5f3af..ccb5fa01 100644 --- a/ripd/rip_main.c +++ b/ripd/rip_main.c @@ -32,6 +32,7 @@  #include "log.h"  #include "privs.h"  #include "sigevent.h" +#include "zclient.h"  #include "ripd/ripd.h" @@ -41,6 +42,7 @@ static struct option longopts[] =    { "daemon",      no_argument,       NULL, 'd'},    { "config_file", required_argument, NULL, 'f'},    { "pid_file",    required_argument, NULL, 'i'}, +  { "socket",      required_argument, NULL, 'z'},    { "help",        no_argument,       NULL, 'h'},    { "dryrun",      no_argument,       NULL, 'C'},    { "vty_addr",    required_argument, NULL, 'A'}, @@ -109,6 +111,7 @@ Daemon which manages RIP version 1 and 2.\n\n\  -d, --daemon       Runs in daemon mode\n\  -f, --config_file  Set configuration file name\n\  -i, --pid_file     Set process identifier file name\n\ +-z, --socket       Set path of zebra socket\n\  -A, --vty_addr     Set vty's bind address\n\  -P, --vty_port     Set vty's port number\n\  -C, --dryrun       Check configuration for validity and exit\n\ @@ -206,7 +209,7 @@ main (int argc, char **argv)      {        int opt; -      opt = getopt_long (argc, argv, "df:i:hA:P:u:g:rvC", longopts, 0); +      opt = getopt_long (argc, argv, "df:i:z:hA:P:u:g:rvC", longopts, 0);        if (opt == EOF)  	break; @@ -227,6 +230,9 @@ main (int argc, char **argv)          case 'i':            pid_file = optarg;            break; +	case 'z': +	  zclient_serv_path_set (optarg); +	  break;  	case 'P':            /* Deal with atoi() returning 0 on failure, and ripd not               listening on rip port... */ diff --git a/ripd/rip_zebra.c b/ripd/rip_zebra.c index c476d8f4..199e85e8 100644 --- a/ripd/rip_zebra.c +++ b/ripd/rip_zebra.c @@ -46,6 +46,7 @@ rip_zebra_ipv4_add (struct prefix_ipv4 *p, struct in_addr *nexthop,        api.type = ZEBRA_ROUTE_RIP;        api.flags = 0;        api.message = 0; +      api.safi = SAFI_UNICAST;        SET_FLAG (api.message, ZAPI_MESSAGE_NEXTHOP);        api.nexthop_num = 1;        api.nexthop = &nexthop; @@ -76,6 +77,7 @@ rip_zebra_ipv4_delete (struct prefix_ipv4 *p, struct in_addr *nexthop,        api.type = ZEBRA_ROUTE_RIP;        api.flags = 0;        api.message = 0; +      api.safi = SAFI_UNICAST;        SET_FLAG (api.message, ZAPI_MESSAGE_NEXTHOP);        api.nexthop_num = 1;        api.nexthop = &nexthop; @@ -205,7 +207,8 @@ static struct {    {ZEBRA_ROUTE_CONNECT, 1, "connected"},    {ZEBRA_ROUTE_STATIC,  1, "static"},    {ZEBRA_ROUTE_OSPF,    1, "ospf"}, -  {ZEBRA_ROUTE_BGP,     1, "bgp"}, +  {ZEBRA_ROUTE_BGP,     2, "bgp"}, +  {ZEBRA_ROUTE_BABEL,   2, "babel"},    {0, 0, NULL}  }; | 
