Parcourir la source

WPS 2.0: Use strict validation of NewWLANEventMAC only with WPS 2.0

This avoids some testing issues with WPS 1.0 implementations while
maintaining strict validation for WPS 2.0 implementations.
Jouni Malinen il y a 14 ans
Parent
commit
e6e25d37a3
1 fichiers modifiés avec 8 ajouts et 3 suppressions
  1. 8 3
      src/wps/wps_upnp_web.c

+ 8 - 3
src/wps/wps_upnp_web.c

@@ -524,9 +524,14 @@ web_process_put_wlan_response(struct upnp_wps_device_sm *sm, char *data,
 		wpa_printf(MSG_DEBUG, "WPS UPnP: Invalid NewWLANEventMAC in "
 			   "PutWLANResponse: '%s'", val);
 #ifdef CONFIG_WPS_STRICT
-		wpabuf_free(msg);
-		os_free(val);
-		return UPNP_ARG_VALUE_INVALID;
+		{
+			struct wps_parse_attr attr;
+			if (wps_parse_msg(msg, &attr) < 0 || attr.version2) {
+				wpabuf_free(msg);
+				os_free(val);
+				return UPNP_ARG_VALUE_INVALID;
+			}
+		}
 #else /* CONFIG_WPS_STRICT */
 		if (hwaddr_aton2(val, macaddr) > 0) {
 			/*