]> git.puffer.fish Git - matthieu/frr.git/commitdiff
lib: add define of compilation for EVPN in prefix.c
authorPhilippe Guibert <philippe.guibert@6wind.com>
Tue, 17 Jan 2017 21:21:40 +0000 (22:21 +0100)
committerPhilippe Guibert <philippe.guibert@6wind.com>
Tue, 14 Feb 2017 12:58:58 +0000 (13:58 +0100)
Because the prefix structure may include or not evpn sub structure, then
HAVE_EVPN compilation define is also used in prefix.c, because it
references the sub field evpn of prefix structure.

Signed-off-by: Philippe Guibert <philippe.guibert@6wind.com>
lib/prefix.c

index 6d3de3d6c67f65ef58df06d1895f6eb24cd25453..514e4f8ebee3f9771abf9dde9aa13da8b246ea7a 100644 (file)
@@ -304,19 +304,17 @@ prefix_copy (struct prefix *dest, const struct prefix *src)
     dest->u.prefix4 = src->u.prefix4;
   else if (src->family == AF_INET6)
     dest->u.prefix6 = src->u.prefix6;
+#if defined(HAVE_EVPN)
   else if (src->family == AF_ETHERNET)
     {
       memcpy (&dest->u.prefix_evpn, &src->u.prefix_evpn, sizeof (struct evpn_addr));
     }
+#endif /* (HAVE_EVPN) */
   else if (src->family == AF_UNSPEC)
     {
       dest->u.lp.id = src->u.lp.id;
       dest->u.lp.adv_router = src->u.lp.adv_router;
     }
-  else if (src->family == AF_ETHERNET)
-    {
-      dest->u.prefix_eth = src->u.prefix_eth;
-    }
   else
     {
       zlog (NULL, LOG_ERR, "prefix_copy(): Unknown address family %d",
@@ -350,9 +348,11 @@ prefix_same (const struct prefix *p1, const struct prefix *p2)
       if (p1->family == AF_INET6 )
        if (IPV6_ADDR_SAME (&p1->u.prefix6.s6_addr, &p2->u.prefix6.s6_addr))
          return 1;
+#if defined(HAVE_EVPN)
       if (p1->family == AF_ETHERNET )
         if (!memcmp (&p1->u.prefix_evpn, &p2->u.prefix_evpn, sizeof (struct evpn_addr)))
           return 1;
+#endif /* (HAVE_EVPN) */
     }
   return 0;
 }
@@ -866,8 +866,6 @@ prefix2str (union prefixconstptr pu, char *str, int size)
 
   switch (p->family)
     {
-      u_char family;
-
       case AF_INET:
       case AF_INET6:
         snprintf (str, size, "%s/%d",
@@ -875,9 +873,11 @@ prefix2str (union prefixconstptr pu, char *str, int size)
                   p->prefixlen);
         break;
 
+#if defined(HAVE_EVPN)
       case AF_ETHERNET:
         if (p->u.prefix_evpn.route_type == 5)
           {
+            u_char family;
             family = (p->u.prefix_evpn.flags & (IP_ADDR_V4 | IP_PREFIX_V4)) ?
               AF_INET : AF_INET6;
             snprintf (str, size, "[%d]:[%u][%s]/%d",
@@ -888,7 +888,7 @@ prefix2str (union prefixconstptr pu, char *str, int size)
                       p->prefixlen);
           }
         break;
-
+#endif /* (HAVE_EVPN) */
       default:
         sprintf (str, "UNK prefix");
         break;