diff --git a/src/network/broadcastsocket.c b/src/network/broadcastsocket.c index 152a7d8..b002046 100644 --- a/src/network/broadcastsocket.c +++ b/src/network/broadcastsocket.c @@ -32,10 +32,10 @@ int setup_broadcast_socket(const char *_broadcast_ip, unsigned short _broadcast_ addr->sin_addr.s_addr = inet_addr(_broadcast_ip); addr->sin_port = htons(_broadcast_port); - if (bind(sock, (struct sockaddr *) addr, sizeof(*addr)) < + while (bind(sock, (struct sockaddr *) addr, sizeof(*addr)) < 0) { fprintf(stderr, "Binding socket failed!\n"); - return -1; + sleep(1); } return sock; } \ No newline at end of file diff --git a/src/utils/ubus.c b/src/utils/ubus.c index 33e7488..570ce00 100644 --- a/src/utils/ubus.c +++ b/src/utils/ubus.c @@ -607,6 +607,7 @@ void update_clients(struct uloop_timeout *t) { } void update_hostapd_sockets(struct uloop_timeout *t) { + printf("Updating hostapd sockets!\n"); subscribe_to_hostapd_interfaces(hostapd_dir_glob); uloop_timeout_set(&hostapd_timer, timeout_config.update_hostapd * 1000); }