-web_process_get_ap_settings(struct upnp_wps_device_sm *sm, char *data,
- struct wpabuf **reply, const char **replyname)
-{
- struct wpabuf *msg;
- static const char *name = "NewAPSettings";
- enum http_reply_code ret;
-
- wpa_printf(MSG_DEBUG, "WPS UPnP: GetAPSettings");
- if (sm->ctx->rx_req_get_ap_settings == NULL)
- return HTTP_INTERNAL_SERVER_ERROR;
- msg = xml_get_base64_item(data, "NewMessage", &ret);
- if (msg == NULL)
- return ret;
- *reply = sm->ctx->rx_req_get_ap_settings(sm->priv, msg);
- wpabuf_free(msg);
- if (*reply == NULL)
- return HTTP_INTERNAL_SERVER_ERROR;
- *replyname = name;
- return HTTP_OK;
-}
-
-
-static enum http_reply_code
-web_process_set_ap_settings(struct upnp_wps_device_sm *sm, char *data,
- struct wpabuf **reply, const char **replyname)
-{
- struct wpabuf *msg;
- enum http_reply_code ret;
-
- wpa_printf(MSG_DEBUG, "WPS UPnP: SetAPSettings");
- msg = xml_get_base64_item(data, "NewAPSettings", &ret);
- if (msg == NULL)
- return ret;
- if (!sm->ctx->rx_req_set_ap_settings ||
- sm->ctx->rx_req_set_ap_settings(sm->priv, msg)) {
- wpabuf_free(msg);
- return HTTP_INTERNAL_SERVER_ERROR;
- }
- wpabuf_free(msg);
- *replyname = NULL;
- *reply = NULL;
- return HTTP_OK;
-}
-
-
-static enum http_reply_code
-web_process_del_ap_settings(struct upnp_wps_device_sm *sm, char *data,
- struct wpabuf **reply, const char **replyname)
-{
- struct wpabuf *msg;
- enum http_reply_code ret;
-
- wpa_printf(MSG_DEBUG, "WPS UPnP: DelAPSettings");
- msg = xml_get_base64_item(data, "NewAPSettings", &ret);
- if (msg == NULL)
- return ret;
- if (!sm->ctx->rx_req_del_ap_settings ||
- sm->ctx->rx_req_del_ap_settings(sm->priv, msg)) {
- wpabuf_free(msg);
- return HTTP_INTERNAL_SERVER_ERROR;
- }
- wpabuf_free(msg);
- *replyname = NULL;
- *reply = NULL;
- return HTTP_OK;
-}
-
-
-static enum http_reply_code
-web_process_get_sta_settings(struct upnp_wps_device_sm *sm, char *data,
- struct wpabuf **reply, const char **replyname)
-{
- struct wpabuf *msg;
- static const char *name = "NewSTASettings";
- enum http_reply_code ret;
-
- wpa_printf(MSG_DEBUG, "WPS UPnP: GetSTASettings");
- if (sm->ctx->rx_req_get_sta_settings == NULL)
- return HTTP_INTERNAL_SERVER_ERROR;
- msg = xml_get_base64_item(data, "NewMessage", &ret);
- if (msg == NULL)
- return ret;
- *reply = sm->ctx->rx_req_get_sta_settings(sm->priv, msg);
- wpabuf_free(msg);
- if (*reply == NULL)
- return HTTP_INTERNAL_SERVER_ERROR;
- *replyname = name;
- return HTTP_OK;
-}
-
-
-static enum http_reply_code
-web_process_set_sta_settings(struct upnp_wps_device_sm *sm, char *data,
- struct wpabuf **reply, const char **replyname)
-{
- struct wpabuf *msg;
- enum http_reply_code ret;
-
- wpa_printf(MSG_DEBUG, "WPS UPnP: SetSTASettings");
- msg = xml_get_base64_item(data, "NewSTASettings", &ret);
- if (msg == NULL)
- return ret;
- if (!sm->ctx->rx_req_set_sta_settings ||
- sm->ctx->rx_req_set_sta_settings(sm->priv, msg)) {
- wpabuf_free(msg);
- return HTTP_INTERNAL_SERVER_ERROR;
- }
- wpabuf_free(msg);
- *replyname = NULL;
- *reply = NULL;
- return HTTP_OK;
-}
-
-
-static enum http_reply_code
-web_process_del_sta_settings(struct upnp_wps_device_sm *sm, char *data,
- struct wpabuf **reply, const char **replyname)
-{
- struct wpabuf *msg;
- enum http_reply_code ret;
-
- wpa_printf(MSG_DEBUG, "WPS UPnP: DelSTASettings");
- msg = xml_get_base64_item(data, "NewSTASettings", &ret);
- if (msg == NULL)
- return ret;
- if (!sm->ctx->rx_req_del_sta_settings ||
- sm->ctx->rx_req_del_sta_settings(sm->priv, msg)) {
- wpabuf_free(msg);
- return HTTP_INTERNAL_SERVER_ERROR;
- }
- wpabuf_free(msg);
- *replyname = NULL;
- *reply = NULL;
- return HTTP_OK;
-}
-
-
-static enum http_reply_code