httpd: httpd.c - fix/add IPv6 listeners for MultiLAN setups (do not try to add IPv4 listeners twice)

Note: solve error for example
...
daemon.info httpd[1707]: Error - bind: [192.168.2.1]:80: Address already in use
daemon.info httpd[1707]: Error - bind: [192.168.3.1]:80: Address already in use
daemon.info httpd[1707]: Error - bind: [192.168.4.1]:80: Address already in use
...

Note 2: this is/was a very old issue since the beginning of MultLAN :)
arm-master
M_ars 2 years ago committed by pedro
parent f8eccfc876
commit e58c8e1c83

@ -850,8 +850,23 @@ static void setup_listeners(int do_ipv6)
for (i = 1; i < BRIDGE_COUNT; i++)
{
char b[16];
snprintf(b, sizeof(b), "lan%d_ipaddr", i);
strlcpy(ipaddr[i], nvram_safe_get(b), sizeof(ipaddr[i]));
char *nv;
#ifdef TCONFIG_IPV6
if (do_ipv6) {
snprintf(b, sizeof(b), "lan%d_ifname", i);
nv = nvram_safe_get(b);
if (strncmp(nv, "br", 2) == 0) {
strlcpy(ipaddr[i], getifaddr(nv, AF_INET6, 0) ? : "", sizeof(ipaddr[i]));
}
else {
strlcpy(ipaddr[i], "", sizeof(ipaddr[i]));
}
} else
#endif /* TCONFIG_IPV6 */
{
snprintf(b, sizeof(b), "lan%d_ipaddr", i);
strlcpy(ipaddr[i], nvram_safe_get(b), sizeof(ipaddr[i]));
}
}
if (nvram_get_int("http_enable")) {

Loading…
Cancel
Save