When we find an interface on disc_find_iface(), we need to check if it's
enabled for the address-family (IPv4 or IPv6) of the received packet. We
were doing that only for targeted hellos, do it for link hellos as well.
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
(cherry picked from commit
6710e336b3afd913c5b15677159e8274680ea8cb)
if (iface == NULL)
return (NULL);
+ ia = iface_af_get(iface, af);
+ if (!ia->enabled)
+ return (NULL);
+
/*
* For unicast packets, we just need to make sure that the interface
* is enabled for the given address-family.
*/
- if (!multicast) {
- ia = iface_af_get(iface, af);
- if (ia->enabled)
- return (iface);
- return (NULL);
- }
+ if (!multicast)
+ return (iface);
switch (af) {
case AF_INET: