ip: check if interface has link-local address (addition) 68/33568/2
authorArtem Glazychev <artem.glazychev@xored.com>
Mon, 23 Aug 2021 06:35:31 +0000 (13:35 +0700)
committerEd Warnicke <hagbard@gmail.com>
Wed, 6 Oct 2021 21:34:31 +0000 (21:34 +0000)
previous - b31fbc47f5fcf8234c757558d7b0285348774086

Type: fix

Signed-off-by: Artem Glazychev <artem.glazychev@xored.com>
Change-Id: I7ea2d693d3ad5bf41ece066b3511fbfa156c1e4b

src/vnet/ip/ip_sas.c

index 7d3632d..0fc2617 100644 (file)
@@ -80,7 +80,12 @@ ip6_sas_by_sw_if_index (u32 sw_if_index, const ip6_address_t *dst,
   if (ip6_address_is_link_local_unicast (dst) ||
       dst->as_u32[0] == clib_host_to_net_u32 (0xff020000))
     {
-      ip6_address_copy (src, ip6_get_link_local_address (sw_if_index));
+      const ip6_address_t *ll = ip6_get_link_local_address (sw_if_index);
+      if (NULL == ll)
+       {
+         return false;
+       }
+      ip6_address_copy (src, ll);
       return true;
     }