Its syntax is defined in RFC 3261 as follows:
Expires = "Expires" HCOLON delta-seconds
Note that the first SIP revision (RFC 2543) also allowed absolute time in Expires.
The parsed Expires header is stored in sip_expires_t structure.
Data Structures | |
| struct | sip_expires_s |
| Structure for Expires header. More... | |
Defines | |
| #define | sip_expires(sip) |
| Access a SIP Expires header structure sip_expires_t from sip_t. | |
| #define | SIP_EXPIRES_INIT() |
| Initializer for structure sip_expires_t. | |
| #define | SIPTAG_EXPIRES(x) |
| Tag list item for pointer to a Expires header structure sip_expires_t. | |
| #define | SIPTAG_EXPIRES_REF(x) |
| Tag list item for reference to a Expires header pointer. | |
| #define | SIPTAG_EXPIRES_STR(s) |
| Tag list item for string with Expires header value. | |
| #define | SIPTAG_EXPIRES_STR_REF(x) |
| Tag list item for reference to a Expires header string. | |
Typedefs | |
| typedef sip_expires_s | sip_expires_t |
| The structure sip_expires_t contains representation of SIP Expires header. | |
Functions | |
| issize_t | sip_expires_d (su_home_t *, msg_header_t *, char *s, isize_t slen) |
| Parse a SIP Expires header. | |
| issize_t | sip_expires_e (char b[], isize_t bsiz, msg_header_t const *h, int flags) |
| Print a SIP Expires header. | |
| sip_expires_t * | sip_expires_init (sip_expires_t x[1]) |
| Initialize a structure sip_expires_t. | |
| int | sip_is_expires (sip_header_t const *header) |
| Test if header object is instance of sip_expires_t. | |
| sip_expires_t * | sip_expires_dup (su_home_t *home, sip_expires_t const *hdr)) |
| Duplicate a list of Expires header header structures sip_expires_t. | |
| sip_expires_t * | sip_expires_copy (su_home_t *home, sip_expires_t const *hdr)) |
| Copy a list of Expires header header structures sip_expires_t. | |
| sip_expires_t * | sip_expires_make (su_home_t *home, char const *s)) |
| Make a Expires header structure sip_expires_t. | |
| sip_expires_t * | sip_expires_format (su_home_t *home, char const *fmt,...))) |
| Make a Expires header from formatting result. | |
| sip_expires_t * | sip_expires_create (su_home_t *home, sip_time_t delta) |
| Create an Expires header object. | |
| sip_time_t | sip_contact_expires (sip_contact_t const *m, sip_expires_t const *ex, sip_date_t const *date, sip_time_t def, sip_time_t now) |
| Calculate expiration time of a Contact header. | |
Variables | |
| msg_hclass_t | sip_expires_class [] |
| Header class for Expires header. | |
| tag_typedef_t | siptag_expires |
| Tag for Expires header object. | |
| tag_typedef_t | siptag_expires_str |
| Tag for string with Expires header value. | |
|
|
Initializer for structure sip_expires_t. A static sip_expires_t structure for Expires header must be initialized with the SIP_EXPIRES_INIT() macro. For instance, |
|
|
Tag list item for pointer to a Expires header structure sip_expires_t. The SIPTAG_EXPIRES() macro is used to include a tag item with a pointer to a sip_expires_t structure in a tag list.
|
|
|
Tag list item for string with Expires header value. The SIPTAG_EXPIRES_STR() macro is used to include a tag item with a string containing value of a sip_expires_t header in a tag list.
The corresponding tag taking reference parameter is SIPTAG_EXPIRES_STR_REF(). |
|
|
The structure sip_expires_t contains representation of SIP Expires header. The sip_expires_t is defined as follows: typedef struct sip_expires_s { sip_common_t ex_common[1]; // Common fragment info sip_error_t *ex_next; // Link to next (dummy) sip_time_t ex_date; // Seconds since Jan 1, 1900 sip_time_t ex_delta; // ...or delta seconds } sip_expires_t; |
|
||||||||||||||||||||||||
|
Calculate expiration time of a Contact header.
|
|
||||||||||||
|
Copy a list of Expires header header structures sip_expires_t.
The function sip_expires_copy() copies a header structure hdr. If the header structure hdr contains a reference (
|
|
||||||||||||
|
Create an Expires header object. Create an Expires header object with the expiration time delta.
|
|
||||||||||||
|
Duplicate a list of Expires header header structures sip_expires_t.
Duplicate a header structure hdr. If the header structure hdr contains a reference (
|
|
||||||||||||||||
|
Make a Expires header from formatting result. Make a new sip_expires_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_expires_t.
|
|
|
Initialize a structure sip_expires_t. An sip_expires_t structure for Expires header can be initialized with the sip_expires_init() function/macro. For instance, |
|
||||||||||||
|
Make a Expires header structure sip_expires_t. The function sip_expires_make() makes a new sip_expires_t header structure. It allocates a new header structure, and decodes the string s as the value of the structure.
|
|
|
Test if header object is instance of sip_expires_t. Check if the header class is an instance of Expires header object and return true (nonzero), otherwise return false (zero).
|
|
|
Header class for Expires header. The header class sip_expires_class defines how a SIP Expires header is parsed and printed. It also contains methods used by SIP parser and other functions to manipulate the sip_expires_t header structure. |