[cmaster-next] [PATCH 1/3] ldpd: add missing check on disc_find_iface()
Renato Westphal
renato at opensourcerouting.org
Mon Dec 12 17:31:31 EST 2016
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 at opensourcerouting.org>
---
ldpd/packet.c | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/ldpd/packet.c b/ldpd/packet.c
index 9b3151d..ad78181 100644
--- a/ldpd/packet.c
+++ b/ldpd/packet.c
@@ -292,16 +292,16 @@ disc_find_iface(unsigned int ifindex, int af, union ldpd_addr *src,
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:
--
1.9.1
More information about the dev
mailing list