Defines |
#define | SOAP_BODY "Body" |
#define | SOAP_URN "http:/""/schemas.xmlsoap.org/soap/envelope/" |
#define | QUERY_STATE_VAR_URN "urn:schemas-upnp-org:control-1-0" |
#define | SOAP_TIMEOUT UPNP_TIMEOUT |
#define | SREQ_HDR_NOT_FOUND -1 |
#define | SREQ_BAD_HDR_FORMAT -2 |
#define | SOAP_INVALID_ACTION 401 |
#define | SOAP_INVALID_ARGS 402 |
#define | SOAP_OUT_OF_SYNC 403 |
#define | SOAP_INVALID_VAR 404 |
#define | SOAP_ACTION_FAILED 501 |
Functions |
static UPNP_INLINE int | get_request_type (IN http_message_t *request, OUT memptr *action_name) |
static void | send_error_response (IN SOCKINFO *info, IN int error_code, IN const char *err_msg, IN http_message_t *hmsg) |
static UPNP_INLINE void | send_var_query_response (IN SOCKINFO *info, IN const char *var_value, IN http_message_t *hmsg) |
static UPNP_INLINE int | get_action_node (IN IXML_Document *TempDoc, IN char *NodeName, OUT IXML_Document **RespNode) |
static int | check_soap_body (IN IXML_Document *doc, IN const char *urn, IN const char *actionName) |
static int | check_soap_action_header (IN http_message_t *request, IN const char *urn, OUT char **actionName) |
static int | get_device_info (IN http_message_t *request, IN int isQuery, IN IXML_Document *actionDoc, IN int AddressFamily, OUT UpnpString *device_udn, OUT UpnpString *service_id, OUT Upnp_FunPtr *callback, OUT void **cookie) |
static UPNP_INLINE void | send_action_response (IN SOCKINFO *info, IN IXML_Document *action_resp, IN http_message_t *request) |
static UPNP_INLINE int | get_var_name (IN IXML_Document *TempDoc, OUT char *VarName) |
static UPNP_INLINE void | handle_query_variable (IN SOCKINFO *info, IN http_message_t *request, IN IXML_Document *xml_doc) |
static void | handle_invoke_action (IN SOCKINFO *info, IN http_message_t *request, IN memptr action_name, IN IXML_Document *xml_doc) |
void | soap_device_callback (IN http_parser_t *parser, IN http_message_t *request, INOUT SOCKINFO *info) |
Variables |
static const char * | Soap_Invalid_Action = "Invalid Action" |
static const char * | Soap_Action_Failed = "Action Failed" |
static const char * | Soap_Invalid_Var = "Invalid Var" |
const char * | ContentTypeHeader = "CONTENT-TYPE: text/xml; charset=\"utf-8\"\r\n" |