diff options
Diffstat (limited to 'src/wps/wps_upnp.c')
-rw-r--r-- | src/wps/wps_upnp.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/wps/wps_upnp.c b/src/wps/wps_upnp.c index 06dcd20..766cac4 100644 --- a/src/wps/wps_upnp.c +++ b/src/wps/wps_upnp.c @@ -550,10 +550,13 @@ static void upnp_wps_device_send_event(struct upnp_wps_device_sm *sm) */ void subscription_destroy(struct subscription *s) { + struct upnp_wps_device_interface *iface; wpa_printf(MSG_DEBUG, "WPS UPnP: Destroy subscription %p", s); subscr_addr_free_all(s); event_delete_all(s); - upnp_er_remove_notification(s); + dl_list_for_each(iface, &s->sm->interfaces, + struct upnp_wps_device_interface, list) + upnp_er_remove_notification(iface->wps->registrar, s); os_free(s); } |