libosip  5.3.0
Classes | Macros | Typedefs | Functions
osip_message.h File Reference

oSIP SIP Message Accessor Routines More...

#include <osipparser2/osip_const.h>
#include <osipparser2/osip_headers.h>
#include <osipparser2/osip_body.h>

Go to the source code of this file.

Classes

struct  osip_message
 

Macros

#define SIP_MESSAGE_MAX_LENGTH   8000
 
#define BODY_MESSAGE_MAX_SIZE   4000
 
#define MSG_IS_RESPONSE(msg)   ((msg)->status_code != 0)
 
#define MSG_IS_REQUEST(msg)   ((msg)->status_code == 0)
 
#define MSG_IS_INVITE(msg)   (MSG_IS_REQUEST(msg) && 0 == strcmp((msg)->sip_method, "INVITE"))
 
#define MSG_IS_ACK(msg)   (MSG_IS_REQUEST(msg) && 0 == strcmp((msg)->sip_method, "ACK"))
 
#define MSG_IS_REGISTER(msg)   (MSG_IS_REQUEST(msg) && 0 == strcmp((msg)->sip_method, "REGISTER"))
 
#define MSG_IS_BYE(msg)   (MSG_IS_REQUEST(msg) && 0 == strcmp((msg)->sip_method, "BYE"))
 
#define MSG_IS_OPTIONS(msg)   (MSG_IS_REQUEST(msg) && 0 == strcmp((msg)->sip_method, "OPTIONS"))
 
#define MSG_IS_INFO(msg)   (MSG_IS_REQUEST(msg) && 0 == strcmp((msg)->sip_method, "INFO"))
 
#define MSG_IS_CANCEL(msg)   (MSG_IS_REQUEST(msg) && 0 == strcmp((msg)->sip_method, "CANCEL"))
 
#define MSG_IS_REFER(msg)   (MSG_IS_REQUEST(msg) && 0 == strcmp((msg)->sip_method, "REFER"))
 
#define MSG_IS_NOTIFY(msg)   (MSG_IS_REQUEST(msg) && 0 == strcmp((msg)->sip_method, "NOTIFY"))
 
#define MSG_IS_SUBSCRIBE(msg)   (MSG_IS_REQUEST(msg) && 0 == strcmp((msg)->sip_method, "SUBSCRIBE"))
 
#define MSG_IS_MESSAGE(msg)   (MSG_IS_REQUEST(msg) && 0 == strcmp((msg)->sip_method, "MESSAGE"))
 
#define MSG_IS_PRACK(msg)   (MSG_IS_REQUEST(msg) && 0 == strcmp((msg)->sip_method, "PRACK"))
 
#define MSG_IS_UPDATE(msg)   (MSG_IS_REQUEST(msg) && 0 == strcmp((msg)->sip_method, "UPDATE"))
 
#define MSG_IS_PUBLISH(msg)   (MSG_IS_REQUEST(msg) && 0 == strcmp((msg)->sip_method, "PUBLISH"))
 
#define MSG_IS_STATUS_1XX(msg)   ((msg)->status_code >= 100 && (msg)->status_code < 200)
 
#define MSG_IS_STATUS_2XX(msg)   ((msg)->status_code >= 200 && (msg)->status_code < 300)
 
#define MSG_IS_STATUS_3XX(msg)   ((msg)->status_code >= 300 && (msg)->status_code < 400)
 
#define MSG_IS_STATUS_4XX(msg)   ((msg)->status_code >= 400 && (msg)->status_code < 500)
 
#define MSG_IS_STATUS_5XX(msg)   ((msg)->status_code >= 500 && (msg)->status_code < 600)
 
#define MSG_IS_STATUS_6XX(msg)   ((msg)->status_code >= 600 && (msg)->status_code < 700)
 
#define MSG_TEST_CODE(msg, code)   (MSG_IS_RESPONSE(msg) && (code) == (msg)->status_code)
 
#define MSG_IS_RESPONSE_FOR(msg, requestname)   (MSG_IS_RESPONSE(msg) && 0 == strcmp((msg)->cseq->method, (requestname)))
 
#define osip_generic_param_init(GP)   osip_uri_param_init(GP)
 
#define osip_generic_param_free(GP)   osip_uri_param_free(GP)
 
#define osip_generic_param_set(GP, NAME, VALUE)   osip_uri_param_set(GP, NAME, VALUE)
 
#define osip_generic_param_clone   osip_uri_param_clone
 
#define osip_generic_param_add(LIST, NAME, VALUE)   osip_uri_param_add(LIST, NAME, VALUE)
 
#define osip_generic_param_get_byname(LIST, NAME, DEST)   osip_uri_param_get_byname(LIST, NAME, DEST)
 

Typedefs

typedef struct osip_message osip_message_t
 

Functions

int osip_message_init (osip_message_t **sip)
 
void osip_message_free (osip_message_t *sip)
 
int osip_message_parse (osip_message_t *sip, const char *buf, size_t length)
 
int osip_message_parse_sipfrag (osip_message_t *sip, const char *buf, size_t length)
 
int osip_message_to_str (osip_message_t *sip, char **dest, size_t *message_length)
 
int osip_message_to_str_sipfrag (osip_message_t *sip, char **dest, size_t *message_length)
 
int osip_message_clone (const osip_message_t *sip, osip_message_t **dest)
 
void osip_message_set_reason_phrase (osip_message_t *sip, char *reason)
 
char * osip_message_get_reason_phrase (const osip_message_t *sip)
 
void osip_message_set_status_code (osip_message_t *sip, int statuscode)
 
int osip_message_get_status_code (const osip_message_t *sip)
 
void osip_message_set_method (osip_message_t *sip, char *method)
 
char * osip_message_get_method (const osip_message_t *sip)
 
void osip_message_set_version (osip_message_t *sip, char *version)
 
char * osip_message_get_version (const osip_message_t *sip)
 
void osip_message_set_uri (osip_message_t *sip, osip_uri_t *uri)
 
osip_uri_tosip_message_get_uri (const osip_message_t *sip)
 
void osip_generic_param_set_name (osip_generic_param_t *generic_param, char *name)
 
char * osip_generic_param_get_name (const osip_generic_param_t *generic_param)
 
void osip_generic_param_set_value (osip_generic_param_t *generic_param, char *value)
 
char * osip_generic_param_get_value (const osip_generic_param_t *generic_param)
 
int osip_message_get_knownheaderlist (osip_list_t *header_list, int pos, void **dest)
 

Detailed Description

oSIP SIP Message Accessor Routines

This is the SIP accessor and parser related API.