X-Git-Url: http://tinc-vpn.org/git/browse?a=blobdiff_plain;f=src%2Fnet_setup.c;h=eeea61a20e13fc3a00a78d6f017f82cd92c8b367;hb=d8dea8091fa2260071f775db58ba277d4ce44ea7;hp=65965908002540ab94340526771bb5d62cafc8bd;hpb=6ea1dfc995f386b3a9406c7935642524dc755c51;p=tinc diff --git a/src/net_setup.c b/src/net_setup.c index 65965908..eeea61a2 100644 --- a/src/net_setup.c +++ b/src/net_setup.c @@ -537,6 +537,11 @@ bool setup_myself(void) memcpy(&listen_socket[listen_sockets].sa, aip->ai_addr, aip->ai_addrlen); listen_sockets++; + + if(listen_sockets >= MAXSOCKETS) { + logger(LOG_WARNING, _("Maximum of %d listening sockets reached"), MAXSOCKETS); + break; + } } freeaddrinfo(ai); @@ -623,6 +628,8 @@ void close_network_connections(void) } for(i = 0; i < listen_sockets; i++) { + event_del(&listen_socket[i].ev_tcp); + event_del(&listen_socket[i].ev_udp); close(listen_socket[i].tcp); close(listen_socket[i].udp); }