libosip  4.1.0
Classes | Macros | Typedefs | Functions
oSIP via header definition.
oSIP headers definitions

Classes

struct  osip_via

Macros

#define osip_via_set_version   via_set_version
#define osip_via_get_version   via_get_version
#define osip_via_set_protocol   via_set_protocol
#define osip_via_get_protocol   via_get_protocol
#define osip_via_set_host   via_set_host
#define osip_via_get_host   via_get_host
#define osip_via_set_port   via_set_port
#define osip_via_get_port   via_get_port
#define osip_via_set_comment   via_set_comment
#define osip_via_get_comment   via_get_comment
#define osip_via_set_hidden(header)   osip_generic_param_add((&(header)->via_params),osip_strdup("hidden"),NULL)
#define osip_via_set_ttl(header, value)   osip_generic_param_add((&(header)->via_params),osip_strdup("ttl"),value)
#define osip_via_set_maddr(header, value)   osip_generic_param_add((&(header)->via_params),osip_strdup("maddr"),value)
#define osip_via_set_received(header, value)   osip_generic_param_add((&(header)->via_params),osip_strdup("received"),value)
#define osip_via_set_branch(header, value)   osip_generic_param_add((&(header)->via_params),osip_strdup("branch"),value)
#define osip_via_param_add(header, name, value)   osip_generic_param_add((&(header)->via_params),name,value)
#define osip_via_param_get_byname(header, name, dest)   osip_generic_param_get_byname((&(header)->via_params),name,dest)

Typedefs

typedef struct osip_via osip_via_t

Functions

int osip_via_init (osip_via_t **header)
void osip_via_free (osip_via_t *header)
int osip_via_parse (osip_via_t *header, const char *hvalue)
int osip_via_to_str (const osip_via_t *header, char **dest)
int osip_via_clone (const osip_via_t *header, osip_via_t **dest)
void via_set_version (osip_via_t *header, char *value)
char * via_get_version (osip_via_t *header)
void via_set_protocol (osip_via_t *header, char *value)
char * via_get_protocol (osip_via_t *header)
void via_set_host (osip_via_t *header, char *value)
char * via_get_host (osip_via_t *header)
void via_set_port (osip_via_t *header, char *value)
char * via_get_port (osip_via_t *header)
void via_set_comment (osip_via_t *header, char *value)
char * via_get_comment (osip_via_t *header)
int osip_via_match (osip_via_t *via1, osip_via_t *via2)

Detailed Description

Macro Definition Documentation

#define osip_via_param_add (   header,
  name,
  value 
)    osip_generic_param_add((&(header)->via_params),name,value)

Allocate and add a generic parameter element in a list.

Parameters
headerThe element to work on.
nameThe token name.
valueThe token value.
#define osip_via_param_get_byname (   header,
  name,
  dest 
)    osip_generic_param_get_byname((&(header)->via_params),name,dest)

Find a header parameter in a Via element.

Parameters
headerThe element to work on.
nameThe token name to search.
destA pointer on the element found.

Referenced by osip_message_fix_last_via_header(), osip_response_get_destination(), and osip_transaction_find().

#define osip_via_set_branch (   header,
  value 
)    osip_generic_param_add((&(header)->via_params),osip_strdup("branch"),value)

Allocate and add a branch parameter element in a list.

Parameters
headerThe element to work on.
valueThe token value.
#define osip_via_set_hidden (   header)    osip_generic_param_add((&(header)->via_params),osip_strdup("hidden"),NULL)

Allocate and add a hidden parameter element in a list.

Parameters
headerThe element to work on.
#define osip_via_set_maddr (   header,
  value 
)    osip_generic_param_add((&(header)->via_params),osip_strdup("maddr"),value)

Allocate and add a maddr parameter element in a list.

Parameters
headerThe element to work on.
valueThe token value.
#define osip_via_set_received (   header,
  value 
)    osip_generic_param_add((&(header)->via_params),osip_strdup("received"),value)

Allocate and add a received parameter element in a list.

Parameters
headerThe element to work on.
valueThe token value.

Referenced by osip_message_fix_last_via_header().

#define osip_via_set_ttl (   header,
  value 
)    osip_generic_param_add((&(header)->via_params),osip_strdup("ttl"),value)

Allocate and add a ttl parameter element in a list.

Parameters
headerThe element to work on.
valueThe token value.

Typedef Documentation

Structure for Via headers.

Function Documentation

int osip_via_clone ( const osip_via_t header,
osip_via_t **  dest 
)

Clone a Via element.

Parameters
headerThe element to work on.
destA pointer on the copy of the element.

References osip_via::comment, osip_via::host, osip_generic_param_clone, osip_list_clone(), osip_via_free(), osip_via_init(), osip_via::port, osip_via::protocol, osip_via::version, and osip_via::via_params.

Referenced by osip_message_clone().

void osip_via_free ( osip_via_t header)
int osip_via_init ( osip_via_t **  header)

Allocate a Via element.

Parameters
headerThe element to work on.

References osip_list_init().

Referenced by osip_message_append_via(), osip_message_set_via(), and osip_via_clone().

int osip_via_match ( osip_via_t via1,
osip_via_t via2 
)

Check if the Via headers match. NOTE: THIS IS AN INTERNAL METHOD ONLY

Parameters
via1The first Via header.
via2The second Via header.

References osip_via_to_str().

int osip_via_parse ( osip_via_t header,
const char *  hvalue 
)

Parse a Via element.

Parameters
headerThe element to work on.
hvalueThe string to parse.

References osip_via::comment, osip_via::host, osip_via::port, osip_via::protocol, osip_via::version, and osip_via::via_params.

Referenced by osip_message_append_via(), and osip_message_set_via().

int osip_via_to_str ( const osip_via_t header,
char **  dest 
)

Get a string representation of a Via element.

Parameters
headerThe element to work on.
destA pointer on the new allocated string.

References osip_via::comment, osip_uri_param::gname, osip_uri_param::gvalue, osip_via::host, osip_list_eol(), osip_list_get(), osip_via::port, osip_via::protocol, osip_via::version, and osip_via::via_params.

Referenced by osip_via_match().

char* via_get_comment ( osip_via_t header)

Get the comment from a Via header.

Parameters
headerThe element to work on.

References osip_via::comment.

char* via_get_host ( osip_via_t header)

Get the host from a Via header.

Parameters
headerThe element to work on.

References osip_via::host.

char* via_get_port ( osip_via_t header)

Get the port from a Via header.

Parameters
headerThe element to work on.

References osip_via::port.

char* via_get_protocol ( osip_via_t header)

Get the protocol from a Via header.

Parameters
headerThe element to work on.

References osip_via::protocol.

char* via_get_version ( osip_via_t header)

Get the SIP version from a Via header.

Parameters
headerThe element to work on.

References osip_via::version.

void via_set_comment ( osip_via_t header,
char *  value 
)

Set the comment in the Via element.

Parameters
headerThe element to work on.
valueThe value of the element.

References osip_via::comment.

void via_set_host ( osip_via_t header,
char *  value 
)

Set the host in the Via element.

Parameters
headerThe element to work on.
valueThe value of the element.

References osip_via::host.

void via_set_port ( osip_via_t header,
char *  value 
)

Set the port in the Via element.

Parameters
headerThe element to work on.
valueThe value of the element.

References osip_via::port.

void via_set_protocol ( osip_via_t header,
char *  value 
)

Set the protocol in the Via element.

Parameters
headerThe element to work on.
valueThe value of the element.

References osip_via::protocol.

void via_set_version ( osip_via_t header,
char *  value 
)

Set the SIP version in the Via element.

Parameters
headerThe element to work on.
valueThe value of the element.

References osip_via::version.