The RTADV define was not being set correctly or consistently.
Make the code consistent with our HAVE_IPV6 define.
If the user wants to explicitly turn it off then they should
run --disable-rtadv from the configure cli
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
#define ZEBRA_PTM_SUPPORT
-#ifdef RTADV
+#if defined (HAVE_RTADV)
/* Order is intentional. Matches RFC4191. This array is also used for
command matching, so only modify with care. */
const char *rtadv_pref_strs[] = { "medium", "high", "INVALID", "low", 0 };
-#endif /* RTADV */
+#endif /* HAVE_RTADV */
/* Called when new interface is added. */
static int
zebra_if->shutdown = IF_ZEBRA_SHUTDOWN_OFF;
ifp->ptm_enable = zebra_ptm_get_enable_state();
-#ifdef RTADV
+#if defined (HAVE_RTADV)
{
/* Set default router advertise values. */
struct rtadvconf *rtadv;
rtadv->AdvPrefixList = list_new ();
}
-#endif /* RTADV */
+#endif /* HAVE_RTADV */
/* Initialize installed address chains tree. */
zebra_if->ipv4_subnets = route_table_init ();
vty_out (vty, "%s", VTY_NEWLINE);
}
-#ifdef RTADV
+#if defined (HAVE_RTADV)
/* Dump interface ND information to vty. */
static void
nd_dump_vty (struct vty *vty, struct interface *ifp)
VTY_NEWLINE);
}
}
-#endif /* RTADV */
+#endif /* HAVE_RTADV */
/* Interface's information print out to vty interface. */
static void
connected_dump_vty (vty, connected);
}
-#ifdef RTADV
+#if defined (HAVE_RTADV)
nd_dump_vty (vty, ifp);
-#endif /* RTADV */
+#endif /* HAVE_RTADV */
if (listhead(ifp->nbr_connected))
vty_out (vty, " Neighbor address(s):%s", VTY_NEWLINE);
for (ALL_LIST_ELEMENTS_RO (ifp->nbr_connected, node, nbr_connected))
VTY_NEWLINE);
}
-#ifdef RTADV
+#if defined (HAVE_RTADV)
rtadv_config_write (vty, ifp);
-#endif /* RTADV */
+#endif /* HAVE_RTADV */
#ifdef HAVE_IRDP
irdp_config_write (vty, ifp);
#define IF_ZEBRA_SHUTDOWN_OFF 0
#define IF_ZEBRA_SHUTDOWN_ON 1
-/* Router advertisement feature. */
-#ifndef RTADV
-#if (defined(LINUX_IPV6) && (defined(__GLIBC__) && __GLIBC__ >= 2 && __GLIBC_MINOR__ >= 1)) || defined(KAME)
- #ifdef HAVE_RTADV
- #define RTADV
- #endif
-#endif
-#endif
-
-#ifdef RTADV
+#if defined (HAVE_RTADV)
/* Router advertisement parameter. From RFC4861, RFC6275 and RFC4191. */
struct rtadvconf
{
#define RTADV_PREF_MEDIUM 0x0 /* Per RFC4191. */
};
-#endif /* RTADV */
+#endif /* HAVE_RTADV */
/* `zebra' daemon local interface structure. */
struct zebra_if
/* Installed addresses chains tree. */
struct route_table *ipv4_subnets;
-#ifdef RTADV
+#if defined(HAVE_RTADV)
struct rtadvconf rtadv;
-#endif /* RTADV */
+#endif /* HAVE_RTADV */
#ifdef HAVE_IRDP
struct irdp_interface irdp;
assert (zvrf);
-#ifdef RTADV
+#if defined (HAVE_RTADV)
rtadv_init (zvrf);
#endif
kernel_init (zvrf);
if_down (ifp);
}
-#ifdef RTADV
+#if defined (HAVE_RTADV)
rtadv_terminate (zvrf);
#endif
kernel_terminate (zvrf);
zebra_vty_init ();
access_list_init ();
prefix_list_init ();
-#ifdef RTADV
+#if defined (HAVE_RTADV)
rtadv_cmd_init ();
#endif
#ifdef HAVE_IRDP
: ((tnexthop) = (nexthop)->next)) \
: (((recursing) = 0),((tnexthop) = (tnexthop)->next)))
-/* Router advertisement feature. */
-#ifndef RTADV
-#if (defined(LINUX_IPV6) && (defined(__GLIBC__) && __GLIBC__ >= 2 && __GLIBC_MINOR__ >= 1)) || defined(KAME)
- #ifdef HAVE_RTADV
- #define RTADV
- #endif
-#endif
-#endif
-
-#if defined (RTADV)
+#if defined (HAVE_RTADV)
/* Structure which hold status of router advertisement. */
struct rtadv
{
struct thread *ra_read;
struct thread *ra_timer;
};
-#endif /* RTADV */
+#endif /* HAVE_RTADV */
#ifdef HAVE_NETLINK
/* Socket interface to kernel */
struct list *rid_lo_sorted_list;
struct prefix rid_user_assigned;
-#if defined (RTADV)
+#if defined (HAVE_RTADV)
struct rtadv rtadv;
-#endif /* RTADV */
+#endif /* HAVE_RTADV */
};
/*
extern struct zebra_privs_t zserv_privs;
-#if defined (HAVE_IPV6) && defined (RTADV)
+#if defined (HAVE_IPV6) && defined (HAVE_RTADV)
#ifdef OPEN_BSD
#include <netinet/icmp6.h>
{
/* Empty.*/;
}
-#endif /* RTADV && HAVE_IPV6 */
+#endif /* HAVE_RTADV && HAVE_IPV6 */
#include "zebra/interface.h"
/* NB: RTADV is defined in zebra/interface.h above */
-#ifdef RTADV
+#if defined (HAVE_RTADV)
/* Router advertisement prefix. */
struct rtadv_prefix
extern const char *rtadv_pref_strs[];
-#endif /* RTADV */
+#endif /* HAVE_RTADV */
extern void rtadv_init (struct zebra_vrf *);
extern void rtadv_terminate (struct zebra_vrf *);