WPS: Fix UNSUBSCRIBE to return 412 if no SID match found

UPnP-arch-DeviceArchitecture describe ErrorCode 412 to be used for the
case where no un-epxired subscription matches. This used to return 200
which is not strictly speaking correct even though it is unlikely to
cause any problems.

Signed-off-by: Jouni Malinen <j@w1.fi>
This commit is contained in:
Jouni Malinen 2014-02-22 18:51:37 +02:00
parent 80f256a568
commit f34df28e93

View file

@ -1207,6 +1207,10 @@ static void web_connection_parse_unsubscribe(struct upnp_wps_device_sm *sm,
sa->domain_and_port : "-null-"); sa->domain_and_port : "-null-");
dl_list_del(&s->list); dl_list_del(&s->list);
subscription_destroy(s); subscription_destroy(s);
} else {
wpa_printf(MSG_INFO, "WPS UPnP: Could not find matching subscription to unsubscribe");
ret = HTTP_PRECONDITION_FAILED;
goto send_msg;
} }
} else { } else {
wpa_printf(MSG_INFO, "WPS UPnP: Unsubscribe fails (not " wpa_printf(MSG_INFO, "WPS UPnP: Unsubscribe fails (not "