security-client = "Security-Client" HCOLON sec-mechanism *(COMMA sec-mechanism) security-server = "Security-Server" HCOLON sec-mechanism *(COMMA sec-mechanism) security-verify = "Security-Verify" HCOLON sec-mechanism *(COMMA sec-mechanism) sec-mechanism = mechanism-name *(SEMI mech-parameters) mechanism-name = ( "digest" / "tls" / "ipsec-ike" / "ipsec-man" / token ) mech-parameters = ( preference / digest-algorithm / digest-qop / digest-verify / extension ) preference = "q" EQUAL qvalue qvalue = ( "0" [ "." 0*3DIGIT ] ) / ( "1" [ "." 0*3("0") ] ) digest-algorithm = "d-alg" EQUAL token digest-qop = "d-qop" EQUAL token digest-verify = "d-ver" EQUAL LDQUOT 32LHEX RDQUOT extension = generic-param
|
|
Initializer for structure sip_security_client_t. A static sip_security_client_t structure for Security-Client header must be initialized with the SIP_SECURITY_CLIENT_INIT() macro. For instance, |
|
|
Tag list item for pointer to a Security-Client header structure sip_security_client_t. The SIPTAG_SECURITY_CLIENT() macro is used to include a tag item with a pointer to a sip_security_client_t structure in a tag list.
|
|
|
Tag list item for string with Security-Client header value. The SIPTAG_SECURITY_CLIENT_STR() macro is used to include a tag item with a string containing value of a sip_security_client_t header in a tag list.
The corresponding tag taking reference parameter is SIPTAG_SECURITY_CLIENT_STR_REF(). |
|
|
The structure sip_security_client_t contains representation of SIP Security-Client header. The sip_security_client_t is defined as follows: typedef struct sip_security_agree_s { sip_common_t sa_common[1]; // Common fragment info sip_security_client_t *sa_next; // Link to next mechanism char const *sa_mec; // Security mechanism msg_param_t const *sa_params; // List of mechanism parameters char const *sa_q; // Value of q (preference) parameter char const *sa_d_alg; // Value of d-alg parameter char const *sa_d_qop; // Value of d-qop parameter char const *sa_d_ver; // Value of d-ver parameter } sip_security_client_t; |
|
|
Test if header object is instance of sip_security_client_t. Check if the header class is an instance of Security-Client header object and return true (nonzero), otherwise return false (zero).
|
|
||||||||||||
|
Copy a list of Security-Client header header structures sip_security_client_t.
The function sip_security_client_copy() copies a header structure hdr. If the header structure hdr contains a reference (
|
|
||||||||||||
|
Duplicate a list of Security-Client header header structures sip_security_client_t.
Duplicate a header structure hdr. If the header structure hdr contains a reference (
|
|
||||||||||||||||
|
Make a Security-Client header from formatting result. Make a new sip_security_client_t object using formatting result as its value. The function first prints the arguments according to the format fmt specified. Then it allocates a new header structure, and parses the formatting result to the structure sip_security_client_t.
|
|
|
Initialize a structure sip_security_client_t. An sip_security_client_t structure for Security-Client header can be initialized with the sip_security_client_init() function/macro. For instance, |
|
||||||||||||
|
Make a Security-Client header structure sip_security_client_t. The function sip_security_client_make() makes a new sip_security_client_t header structure. It allocates a new header structure, and decodes the string s as the value of the structure.
|
|
|
Header class for Security-Client header. The header class sip_security_client_class defines how a SIP Security-Client header is parsed and printed. It also contains methods used by SIP parser and other functions to manipulate the sip_security_client_t header structure. |