WPS: Do not try to send byebye advertisements if socket is not valid
authorJouni Malinen <j@w1.fi>
Sat, 21 Nov 2009 20:00:33 +0000 (22:00 +0200)
committerJouni Malinen <j@w1.fi>
Sat, 21 Nov 2009 20:00:33 +0000 (22:00 +0200)
If initialization fails, we could potentially try to sendto() on -1
socket which would fail. No point in doing that, so just return early
from the function.

src/wps/wps_upnp_ssdp.c

index 93706ea..d48bfdb 100644 (file)
@@ -239,7 +239,7 @@ void advertisement_state_machine_stop(struct upnp_wps_device_sm *sm,
        struct sockaddr_in dest;
 
        eloop_cancel_timeout(advertisement_state_machine_handler, NULL, sm);
-       if (!send_byebye)
+       if (!send_byebye || sm->multicast_sd < 0)
                return;
 
        a->type = ADVERTISE_DOWN;