Classes | |
struct | soap_devserv_t |
SOAP info. More... | |
Functions | |
Functions scope restricted to file | |
void | namecopy (char dest[NAME_SIZE], const char *src) |
Copy string with length NAME_SIZE and terminate with '\0'. | |
void | send_error_response (SOCKINFO *info, int error_code, const char *err_msg, http_message_t *hmsg) |
Sends SOAP error response. | |
void | send_var_query_response (SOCKINFO *info, const char *var_value, http_message_t *hmsg) |
Sends response of get var status. | |
void | send_action_response (SOCKINFO *info, IXML_Document *action_resp, http_message_t *request) |
Sends the SOAP action response. | |
void | handle_query_variable (SOCKINFO *info, http_message_t *request, soap_devserv_t *soap_info, IXML_Node *req_node) |
Handles the SOAP requests to querry the state variables. | |
void | handle_invoke_action (SOCKINFO *info, http_message_t *request, soap_devserv_t *soap_info, IXML_Node *req_node) |
Handles the SOAP action request. | |
int | get_dev_service (http_message_t *request, int AddressFamily, soap_devserv_t *soap_info) |
Retrieve SOAP device/service information associated with request-URI. | |
int | get_mpost_acton_hdrval (http_message_t *request, memptr *val) |
Get the SOAPACTION header value for M-POST request. | |
int | check_soapaction_hdr (http_message_t *request, soap_devserv_t *soap_info) |
Check header validity, get action name and version of service. | |
int | check_soap_request (soap_devserv_t *soap_info, IXML_Document *xml_doc, IXML_Node **req_node) |
Check validity of the SOAP request per UPnP specification. | |
Variables | |
Variables scope restricted to file | |
constexpr int | SREQ_HDR_NOT_FOUND {-1} |
UPnP Device SOAP status. | |
constexpr int | SREQ_BAD_HDR_FORMAT {-2} |
UPnP Device SOAP status. | |
constexpr int | SREQ_NOT_EXTENDED {-3} |
UPnP Device SOAP status. | |
constexpr int | SOAP_INVALID_ACTION {401} |
UPnP Device SOAP status. | |
constexpr int | SOAP_INVALID_VAR {404} |
UPnP Device SOAP status. | |
constexpr int | SOAP_ACTION_FAILED {501} |
UPnP Device SOAP status. | |
constexpr int | SOAP_MEMORY_OUT {603} |
UPnP Device SOAP status. | |
constexpr char | SOAP_BODY [] {"Body"} |
UPnP Device SOAP strings. | |
constexpr char | SOAP_URN [] {"http://schemas.xmlsoap.org/soap/envelope/"} |
UPnP Device SOAP strings. | |
constexpr char | QUERY_STATE_VAR_URN [] {"urn:schemas-upnp-org:control-1-0"} |
UPnP Device SOAP strings. | |
constexpr char | Soap_Invalid_Action [] {"Invalid Action"} |
UPnP Device SOAP strings. | |
constexpr char | Soap_Action_Failed [] {"Action Failed"} |
UPnP Device SOAP strings. | |
constexpr char | Soap_Invalid_Var [] {"Invalid Var"} |
UPnP Device SOAP strings. | |
constexpr char | Soap_Memory_out [] {"Out of Memory"} |
UPnP Device SOAP strings. | |
struct anonymous_namespace{soap_device.cpp}::soap_devserv_t |
SOAP info.
Definition at line 101 of file soap_device.cpp.
Class Members | ||
---|---|---|
char | dev_udn[NAME_SIZE] | |
char | service_type[NAME_SIZE] | |
char | service_id[NAME_SIZE] | |
memptr | action_name | |
Upnp_FunPtr | callback | |
void * | cookie |
void anonymous_namespace{soap_device.cpp}::namecopy | ( | char | dest[NAME_SIZE], |
const char * | src | ||
) |
Copy string with length NAME_SIZE and terminate with '\0'.
Definition at line 116 of file soap_device.cpp.
void anonymous_namespace{soap_device.cpp}::send_error_response | ( | SOCKINFO * | info, |
int | error_code, | ||
const char * | err_msg, | ||
http_message_t * | hmsg | ||
) |
Sends SOAP error response.
[in] | info | Socket info. |
[in] | error_code | Error code. |
[in] | err_msg | Error message. |
[in] | hmsg | HTTP request. |
Definition at line 125 of file soap_device.cpp.
|
inline |
Sends response of get var status.
[in] | info | Socket info. |
[in] | var_value | Value of the state variable. |
[in] | hmsg | HTTP request. |
Definition at line 190 of file soap_device.cpp.
|
inline |
Sends the SOAP action response.
[in] | info | Socket info. |
[in] | action_resp | The response document. |
[in] | request | Action request document. |
Definition at line 239 of file soap_device.cpp.
|
inline |
Handles the SOAP requests to querry the state variables.
[in] | info | Socket info. |
[in] | request | HTTP Request. |
[in] | soap_info | SOAP device/service information. |
[in] | req_node | Node containing variable name. |
Definition at line 302 of file soap_device.cpp.
|
inline |
Handles the SOAP action request.
[in] | info | Socket info. |
[in] | request | HTTP Request. |
[in] | soap_info | SOAP device/service information. |
[in] | req_node | Node containing the SOAP action request. |
Definition at line 364 of file soap_device.cpp.
|
inline |
Retrieve SOAP device/service information associated with request-URI.
This includes the callback function to hand-over the request to the device application.
[in] | request | HTTP request. |
[in] | AddressFamily | Address family: AF_INET or AF_INET6. |
[out] | soap_info | SOAP device/service information. |
Definition at line 461 of file soap_device.cpp.
|
inline |
Get the SOAPACTION header value for M-POST request.
[in] | request | HTTP request. |
[out] | val | Buffer to get the header value |
Definition at line 513 of file soap_device.cpp.
|
inline |
Check header validity, get action name and version of service.
Check the header validity, and get the action name and the version of the service that the Control Point wants to use.
[in] | request | HTTP request. |
[in,out] | soap_info | SOAP device/service information. |
Definition at line 561 of file soap_device.cpp.
|
inline |
Check validity of the SOAP request per UPnP specification.
[in] | soap_info | SOAP device/service information. |
[in] | xml_doc | Document containing the SOAP action request. |
[out] | req_node | Node containing the SOAP action request/variable name. |
Definition at line 643 of file soap_device.cpp.
|
constexpr |
UPnP Device SOAP status.
Definition at line 70 of file soap_device.cpp.
|
constexpr |
UPnP Device SOAP status.
Definition at line 71 of file soap_device.cpp.
|
constexpr |
UPnP Device SOAP status.
Definition at line 72 of file soap_device.cpp.
|
constexpr |
UPnP Device SOAP status.
Definition at line 74 of file soap_device.cpp.
|
constexpr |
UPnP Device SOAP status.
Definition at line 77 of file soap_device.cpp.
|
constexpr |
UPnP Device SOAP status.
Definition at line 78 of file soap_device.cpp.
|
constexpr |
UPnP Device SOAP status.
Definition at line 79 of file soap_device.cpp.
|
constexpr |
UPnP Device SOAP strings.
Definition at line 84 of file soap_device.cpp.
|
constexpr |
UPnP Device SOAP strings.
Definition at line 85 of file soap_device.cpp.
|
constexpr |
UPnP Device SOAP strings.
Definition at line 86 of file soap_device.cpp.
|
constexpr |
UPnP Device SOAP strings.
Definition at line 88 of file soap_device.cpp.
|
constexpr |
UPnP Device SOAP strings.
Definition at line 90 of file soap_device.cpp.
|
constexpr |
UPnP Device SOAP strings.
Definition at line 91 of file soap_device.cpp.
|
constexpr |
UPnP Device SOAP strings.
Definition at line 92 of file soap_device.cpp.