Compare label instead of interface name against dhcp_except and tftp interfaces to extend their scope to interface aliases. The man page does not mention that they are limited to "real" interfaces and stop working once an alias interface is specified (even if valid).

Signed-off-by: DL6ER <dl6er@dl6er.de>
This commit is contained in:
Dominik Derigs
2021-12-26 10:35:00 +01:00
committed by DL6ER
parent cc07a92ba2
commit 14a9cf5382

View File

@@ -506,7 +506,7 @@ static int iface_allowed(struct iface_param *param, int if_index, char *label,
} }
else else
for (tmp = daemon->dhcp_except; tmp; tmp = tmp->next) for (tmp = daemon->dhcp_except; tmp; tmp = tmp->next)
if (tmp->name && wildcard_match(tmp->name, ifr.ifr_name)) if (tmp->name && wildcard_match(tmp->name, label))
{ {
tftp_ok = 0; tftp_ok = 0;
dhcp_ok = 0; dhcp_ok = 0;
@@ -520,7 +520,7 @@ static int iface_allowed(struct iface_param *param, int if_index, char *label,
/* dedicated tftp interface list */ /* dedicated tftp interface list */
tftp_ok = 0; tftp_ok = 0;
for (tmp = daemon->tftp_interfaces; tmp; tmp = tmp->next) for (tmp = daemon->tftp_interfaces; tmp; tmp = tmp->next)
if (tmp->name && wildcard_match(tmp->name, ifr.ifr_name)) if (tmp->name && wildcard_match(tmp->name, label))
tftp_ok = 1; tftp_ok = 1;
} }
#endif #endif