#include "config.h"
#include "sofia-sip/sip_parser.h"
#include <stddef.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>
Include dependency graph for sip_feature.c:
Functions | |
sip_unsupported_t * | sip_has_unsupported (su_home_t *home, sip_supported_t const *support, sip_require_t const *require) |
Check that a required feature is supported. | |
sip_unsupported_t * | sip_has_unsupported2 (su_home_t *home, sip_supported_t const *support, sip_require_t const *support_by_require, sip_require_t const *require) |
Check if required feature is supported. | |
sip_unsupported_t * | sip_has_unsupported_any (su_home_t *home, sip_supported_t const *supported, sip_require_t const *by_require, sip_proxy_require_t const *by_proxy_require, sip_require_t const *require, sip_require_t const *require2, sip_require_t const *require3) |
Ensure that required features are supported. | |
int | sip_has_feature (msg_list_t const *supported, char const *feature) |
Check that a feature is in the list. | |
int | sip_has_supported (sip_supported_t const *supported, char const *feature) |
Check that a feature is supported. | |
Variables | |
msg_hclass_t | sip_allow_class [] |
Header class for SIP Allow header. | |
msg_hclass_t | sip_proxy_require_class [] |
Header class for SIP Proxy-Require header. | |
msg_hclass_t | sip_require_class [] |
Header class for SIP Require header. | |
msg_hclass_t | sip_supported_class [] |
Header class for SIP Supported header. | |
msg_hclass_t | sip_unsupported_class [] |
Header class for SIP Unsupported header. | |
msg_hclass_t | sip_path_class [] |
Header class for SIP Path header. | |
msg_hclass_t | sip_service_route_class [] |
Header class for SIP Service-Route header. |
sip_unsupported_t* sip_has_unsupported | ( | su_home_t * | home, | |
sip_supported_t const * | support, | |||
sip_require_t const * | require | |||
) |
Check that a required feature is supported.
NULL | if all the required features are supported | |
pointer | to a Unsupported header or SIP_NONE if home is NULL |
sip_unsupported_t* sip_has_unsupported2 | ( | su_home_t * | home, | |
sip_supported_t const * | support, | |||
sip_require_t const * | support_by_require, | |||
sip_require_t const * | require | |||
) |
Check if required feature is supported.
NULL | if all the required features are supported | |
pointer | to a Unsupported header or SIP_NONE if home is NULL |
sip_unsupported_t* sip_has_unsupported_any | ( | su_home_t * | home, | |
sip_supported_t const * | supported, | |||
sip_require_t const * | by_require, | |||
sip_proxy_require_t const * | by_proxy_require, | |||
sip_require_t const * | require, | |||
sip_require_t const * | require2, | |||
sip_require_t const * | require3 | |||
) |
Ensure that required features are supported.
The supported features can be listed in Supported, Require or Proxy-Require headers (in supported, by_require, or by_proxy_require parameters, respectively)
home | (optional) home pointer for allocating Unsupported header | |
supported | Supported features (may be NULL) [IN] | |
by_require | supported features listed by Require (may be NULL) [IN] | |
by_proxy_require | supported features listed by Proxy-Require (may be NULL) [IN] | |
require | list of required features (may be NULL) [IN] | |
require2 | 2nd list of required features (may be NULL) [IN] | |
require3 | 3rd list of required features (may be NULL) [IN] |
NULL | if all the required features are supported | |
pointer | to a Unsupported header or SIP_NONE if home is NULL |