|
#define | SIP_PARSER_H |
| Defined when <sofia-sip/sip_parser.h> has been included.
|
|
#define | SIP_HEADER_CLASS(c, l, s, params, kind, dup) |
| Define a header class for a SIP header.
|
|
#define | SIP_HEADER_CLASS_C(c, l, s, params, kind, dup) |
| Define a header class for a critical SIP header.
|
|
#define | SIP_HEADER_CLASS_G(c, l, s, kind) |
| Define a header class for headers without any extra data to copy.
|
|
#define | SIP_HEADER_CLASS_LIST(c, l, s, kind) |
| Define a header class for a msg_list_t kind of header.
|
|
#define | SIP_HEADER_CLASS_AUTH(c, l, kind) |
| Define a authorization header class.
|
|
|
int | sip_version_d (char **ss, char const **ver) |
| Parse SIP version.
|
|
isize_t | sip_version_xtra (char const *version) |
| Calculate extra space required by version string.
|
|
void | sip_version_dup (char **pp, char const **dd, char const *s) |
| Duplicate a transport string.
|
|
issize_t | sip_transport_d (char **ss, char const **ttransport) |
| Decode transport.
|
|
isize_t | sip_transport_xtra (char const *transport) |
| Calculate extra space required by sip_transport_dup()
|
|
void | sip_transport_dup (char **pp, char const **dd, char const *s) |
| Duplicate a transport string.
|
|
sip_method_t | sip_method_d (char **ss, char const **nname) |
| Parse a SIP method name.
|
|
char * | sip_word_at_word_d (char **ss) |
| Parse SIP <word "@" word> construct used in Call-ID.
|
|
issize_t | sip_extract_body (msg_t *, sip_t *, char b[], isize_t bsiz, int eos) |
| Extract SIP message body, including separator line.
|
|
issize_t | sip_any_route_d (su_home_t *, sip_header_t *, char *s, isize_t slen) |
| Parse a Route or a Record-Route header.
|
|
issize_t | sip_name_addr_d (su_home_t *home, char **inout_s, char const **return_display, url_t *out_url, msg_param_t const **return_params, char const **return_comment) |
| Parse name-addr.
|
|
issize_t | sip_name_addr_e (char b[], isize_t bsiz, int flags, char const *display, int always_ltgt, url_t const url[], msg_param_t const params[], char const *comment) |
| Encode name-addr and parameter list.
|
|
isize_t | sip_name_addr_xtra (char const *display, url_t const *addr, msg_param_t const params[], isize_t offset) |
| Calculate the extra size needed to duplicate a name-addr-params construct.
|
|
char * | sip_name_addr_dup (char const **d_display, char const *display, url_t *d_addr, url_t const *addr, msg_param_t const **d_params, msg_param_t const params[], char *b, isize_t xtra) |
| Duplicate a name-addr-params construct.
|
|
SIP parser provider interface.
This file contains functions and macros used to create a SIP parser using generic text message parser, and to define new SIP header classes.
- Author
- Pekka Pessi Pekka.nosp@m..Pes.nosp@m.si@no.nosp@m.kia..nosp@m.com.
- Date
- Created: Thu Mar 8 15:13:11 2001 ppessi
issize_t sip_name_addr_e |
( |
char | b[], |
|
|
isize_t | bsiz, |
|
|
int | flags, |
|
|
char const * | display, |
|
|
int | brackets, |
|
|
url_t const | url[], |
|
|
msg_param_t const | params[], |
|
|
char const * | comment ) |
Encode name-addr and parameter list.
Encodes name-addr headers, like From, To, Call-Info, Error-Info, Route, and Record-Route.
- Parameters
-
b | buffer to store the encoding result |
bsiz | size of the buffer b |
flags | encoding flags |
display | display name encoded before the url (may be NULL) |
brackets | if true, use always brackets around url |
url | pointer to URL structure |
params | pointer to parameter list (may be NULL) |
comment | comment string encoded after others (may be NULL) |
- Returns
- Returns number of characters in encoding, excluding the final NUL.
- Note
- The encoding result may be incomplete if the buffer size is not large enough to store the whole encoding result.