X-Git-Url: https://www.tinc-vpn.org/git/browse?p=tinc;a=blobdiff_plain;f=src%2Fnet_setup.c;h=299e3729e0cb131555d99238e8b4c2745325c69b;hp=e9a063a50577d90a8b438d11017ba7ba4aee7125;hb=ac48c4ee8c09c8144f830cb66386b9dbe7298440;hpb=d1dcdf8eb6f800704be426b1ce6f6c1a8e65ba0d diff --git a/src/net_setup.c b/src/net_setup.c index e9a063a5..299e3729 100644 --- a/src/net_setup.c +++ b/src/net_setup.c @@ -397,6 +397,8 @@ static bool setup_myself(void) { myself->options |= OPTION_CLAMP_MSS; get_config_bool(lookup_config(config_tree, "PriorityInheritance"), &priorityinheritance); + get_config_bool(lookup_config(config_tree, "DecrementTTL"), &decrement_ttl); + get_config_bool(lookup_config(config_tree, "Broadcast"), &broadcast); #if !defined(SOL_IP) || !defined(IP_TOS) if(priorityinheritance) @@ -578,6 +580,7 @@ static bool setup_myself(void) { /* Open sockets */ + listen_sockets = 0; cfg = lookup_config(config_tree, "BindToAddress"); do { @@ -599,9 +602,12 @@ static bool setup_myself(void) { return false; } - listen_sockets = 0; - for(aip = ai; aip; aip = aip->ai_next) { + if(listen_sockets >= MAXSOCKETS) { + logger(LOG_ERR, "Too many listening sockets"); + return false; + } + listen_socket[listen_sockets].tcp = setup_listen_socket((sockaddr_t *) aip->ai_addr);