Fix TFTP access control, broken earlier in release.
diff --git a/src/tftp.c b/src/tftp.c
index a7f5680..82bbccc 100644
--- a/src/tftp.c
+++ b/src/tftp.c
@@ -113,7 +113,6 @@
else
{
struct cmsghdr *cmptr;
- int check;
if (msg.msg_controllen < sizeof(struct cmsghdr))
return;
@@ -193,10 +192,14 @@
#ifdef HAVE_IPV6
if (listen->family == AF_INET6)
- check = iface_check(AF_INET6, (struct all_addr *)&addr.in6.sin6_addr, name);
+ {
+ if (!iface_check(AF_INET6, (struct all_addr *)&addr.in6.sin6_addr, name))
+ return;
+ }
else
#endif
- check = iface_check(AF_INET, (struct all_addr *)&addr.in.sin_addr, name);
+ if (!iface_check(AF_INET, (struct all_addr *)&addr.in.sin_addr, name))
+ return;
#ifdef HAVE_DHCP
/* allowed interfaces are the same as for DHCP */