osip.h   osip.h 
skipping to change at line 278 skipping to change at line 278
* Structure for NON-INVITE SERVER TRANSACTION. * Structure for NON-INVITE SERVER TRANSACTION.
* @struct osip_nist * @struct osip_nist
*/ */
struct osip_nist struct osip_nist
{ {
int timer_j_length; /**@internal J = 64*T1 (else 0) */ int timer_j_length; /**@internal J = 64*T1 (else 0) */
struct timeval timer_j_start; /**@internal */ struct timeval timer_j_start; /**@internal */
}; };
/** /**
* Structure for SRV record entry.
* @var osip_srv_entry_t
*/
typedef struct osip_srv_entry osip_srv_entry_t;
/**
* Structure for SRV record entry.
* @struct osip_srv_entry
*/
struct osip_srv_entry {
char srv[512];
int priority;
int weight;
int rweight;
int port;
};
/**
* Structure for SRV record.
* @var osip_srv_record_t
*/
typedef struct osip_srv_record osip_srv_record_t;
/**
* Structure for SRV record entry.
* @struct osip_srv_record
*/
struct osip_srv_record {
char name[512];
char protocol[64];
struct osip_srv_entry srventry[10];
};
/**
* Structure for transaction handling. * Structure for transaction handling.
* @var osip_transaction_t * @var osip_transaction_t
*/ */
typedef struct osip_transaction osip_transaction_t; typedef struct osip_transaction osip_transaction_t;
/** /**
* Structure for transaction handling * Structure for transaction handling
* @struct osip_transaction * @struct osip_transaction
*/ */
struct osip_transaction struct osip_transaction
skipping to change at line 319 skipping to change at line 354
int in_socket; /**< Optional socket for incoming message * / int in_socket; /**< Optional socket for incoming message * /
int out_socket; /**< Optional place for outgoing message */ int out_socket; /**< Optional place for outgoing message */
void *config; /**@internal transaction is managed by osip _t */ void *config; /**@internal transaction is managed by osip _t */
osip_fsm_type_t ctx_type; /**< Type of the transaction */ osip_fsm_type_t ctx_type; /**< Type of the transaction */
osip_ict_t *ict_context; /**@internal */ osip_ict_t *ict_context; /**@internal */
osip_ist_t *ist_context; /**@internal */ osip_ist_t *ist_context; /**@internal */
osip_nict_t *nict_context; /**@internal */ osip_nict_t *nict_context; /**@internal */
osip_nist_t *nist_context; /**@internal */ osip_nist_t *nist_context; /**@internal */
osip_srv_record_t record; /**@internal */
}; };
/** /**
* Enumeration for callback type. * Enumeration for callback type.
*/ */
typedef enum osip_message_callback_type typedef enum osip_message_callback_type
{ {
OSIP_ICT_INVITE_SENT = 0, /**< INVITE MESSAGE SENT */ OSIP_ICT_INVITE_SENT = 0, /**< INVITE MESSAGE SENT */
OSIP_ICT_INVITE_SENT_AGAIN, /**< INVITE MESSAGE RETRANSMITT ED */ OSIP_ICT_INVITE_SENT_AGAIN, /**< INVITE MESSAGE RETRANSMITT ED */
OSIP_ICT_ACK_SENT, /**< ACK MESSAGE SENT */ OSIP_ICT_ACK_SENT, /**< ACK MESSAGE SENT */
skipping to change at line 458 skipping to change at line 495
/** /**
* Structure for 2XX retransmission management. * Structure for 2XX retransmission management.
* @struct ixt * @struct ixt
*/ */
struct ixt_t struct ixt_t
{ {
/* any ACK received that match this context will set counter to -1 */ /* any ACK received that match this context will set counter to -1 */
struct osip_dialog *dialog; /**< related dialog */ struct osip_dialog *dialog; /**< related dialog */
osip_message_t *msg2xx; /**< buffer to retransmit */ osip_message_t *msg2xx; /**< buffer to retransmit */
osip_message_t *ack; /**< ack message if needed */ osip_message_t *ack; /**< ack message if needed */
time_t start; /**< Time of first retransmission */ struct timeval start; /**< Time of first retransmission */
int interval; /**< delay between retransmission, in ms */ int interval; /**< delay between retransmission, in ms */
char *dest; /**< destination host */ char *dest; /**< destination host */
int port; /**< destination port */ int port; /**< destination port */
int sock; /**< socket to use */ int sock; /**< socket to use */
int counter; /**< start at 7 */ int counter; /**< start at 7 */
}; };
/** /**
* Structure for osip handling. * Structure for osip handling.
* In order to use osip, you have to manage at least one global instance * In order to use osip, you have to manage at least one global instance
skipping to change at line 485 skipping to change at line 522
/** /**
* Structure for osip handling. * Structure for osip handling.
* @struct osip * @struct osip
*/ */
struct osip struct osip
{ {
void *application_context; /**< User defined Pointer */ void *application_context; /**< User defined Pointer */
/* list of transactions for ict, ist, nict, nist */ /* list of transactions for ict, ist, nict, nist */
osip_list_t *osip_ict_transactions; /**< list of ict transactions */ osip_list_t osip_ict_transactions; /**< list of ict transactions */
osip_list_t *osip_ist_transactions; /**< list of ist transactions */ osip_list_t osip_ist_transactions; /**< list of ist transactions */
osip_list_t *osip_nict_transactions; /**< list of nict transactions */ osip_list_t osip_nict_transactions; /**< list of nict transactions */
osip_list_t *osip_nist_transactions; /**< list of nist transactions */ osip_list_t osip_nist_transactions; /**< list of nist transactions */
osip_list_t *ixt_retransmissions; /**< list of ixt elements */ osip_list_t ixt_retransmissions; /**< list of ixt elements */
osip_message_cb_t msg_callbacks[OSIP_MESSAGE_CALLBACK_COUNT]; /* *@internal */ osip_message_cb_t msg_callbacks[OSIP_MESSAGE_CALLBACK_COUNT]; /* *@internal */
osip_kill_transaction_cb_t kill_callbacks[OSIP_KILL_CALLBACK_COUNT]; /* *@internal */ osip_kill_transaction_cb_t kill_callbacks[OSIP_KILL_CALLBACK_COUNT]; /* *@internal */
osip_transport_error_cb_t tp_error_callbacks[OSIP_TRANSPORT_ERROR_CALLB ACK_COUNT]; /**@internal */ osip_transport_error_cb_t tp_error_callbacks[OSIP_TRANSPORT_ERROR_CALLB ACK_COUNT]; /**@internal */
int (*cb_send_message) (osip_transaction_t *, osip_message_t *, char *, int (*cb_send_message) (osip_transaction_t *, osip_message_t *, char *,
int, int); int, int);
/**@internal */ /**@internal */
#if defined(HAVE_DICT_DICT_H) #if defined(HAVE_DICT_DICT_H)
skipping to change at line 657 skipping to change at line 694
* Get target ip and port for this request. * Get target ip and port for this request.
* (automaticly set by osip_transaction_init() for ict and nict) * (automaticly set by osip_transaction_init() for ict and nict)
* @param transaction The element to work on. * @param transaction The element to work on.
* @param ip The ip of host where to send initial request. * @param ip The ip of host where to send initial request.
* @param port The port where to send initial request. * @param port The port where to send initial request.
*/ */
int osip_transaction_get_destination (osip_transaction_t * transaction, int osip_transaction_get_destination (osip_transaction_t * transaction,
char **ip, int *port); char **ip, int *port);
/** /**
* Set SRV lookup information to be used by state machine.
*
* @param transaction The element to work on.
* @param record The SRV lookup results for this transaction.
*/
int osip_transaction_set_srv_record(osip_transaction_t *transaction, osip
_srv_record_t *record);
/**
* Set the socket for incoming message. * Set the socket for incoming message.
* NOTE: THIS HAS NEVER TESTED! Please send feedback. * NOTE: THIS HAS NEVER TESTED! Please send feedback.
* @param transaction The element to work on. * @param transaction The element to work on.
* @param sock The socket for incoming message. * @param sock The socket for incoming message.
*/ */
int osip_transaction_set_in_socket (osip_transaction_t * transaction, int sock); int osip_transaction_set_in_socket (osip_transaction_t * transaction, int sock);
/** /**
* Set the socket for outgoing message. * Set the socket for outgoing message.
* NOTE: THIS HAS NEVER TESTED! Please send feedback. * NOTE: THIS HAS NEVER TESTED! Please send feedback.
* @param transaction The element to work on. * @param transaction The element to work on.
 End of changes. 6 change blocks. 
6 lines changed or deleted 52 lines changed or added


 osip_accept.h   osip_accept.h 
skipping to change at line 81 skipping to change at line 81
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the copy of the element. * @param dest A pointer on the copy of the element.
*/ */
#define osip_accept_clone(header, dest) osip_content_type_clone(header, des t) #define osip_accept_clone(header, dest) osip_content_type_clone(header, des t)
/** /**
* Allocate and add a header parameter in an Accept element. * Allocate and add a header parameter in an Accept element.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name. * @param name The token name.
* @param value The token value. * @param value The token value.
*/ */
#define osip_accept_param_add(header,name,value) osip_generic_param_add((h eader)->gen_params,name,value) #define osip_accept_param_add(header,name,value) osip_generic_param_add((& (header)->gen_params),name,value)
/** /**
* Find a header parameter in an Accept element. * Find a header parameter in an Accept element.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name to search. * @param name The token name to search.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_accept_param_get_byname(header,name,dest) osip_generic_param_g et_byname((header)->gen_params,name,dest) #define osip_accept_param_get_byname(header,name,dest) osip_generic_param_g et_byname((&(header)->gen_params),name,dest)
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
/** @} */ /** @} */
#endif #endif
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 osip_accept_encoding.h   osip_accept_encoding.h 
skipping to change at line 48 skipping to change at line 48
* @var osip_accept_encoding_t * @var osip_accept_encoding_t
*/ */
typedef struct osip_accept_encoding osip_accept_encoding_t; typedef struct osip_accept_encoding osip_accept_encoding_t;
/** /**
* Definition of the Accept-Encoding header. * Definition of the Accept-Encoding header.
* @struct osip_accept_encoding * @struct osip_accept_encoding
*/ */
struct osip_accept_encoding struct osip_accept_encoding
{ {
char *element; /**< accept encoding main value */ char *element; /**< accept encoding main value */
osip_list_t *gen_params; /**< accept encoding parameters */ osip_list_t gen_params; /**< accept encoding parameters */
}; };
#ifdef __cplusplus #ifdef __cplusplus
extern "C" extern "C"
{ {
#endif #endif
/** /**
* Allocate a Accept-Encoding element. * Allocate a Accept-Encoding element.
* @param header The element to work on. * @param header The element to work on.
skipping to change at line 105 skipping to change at line 105
* Get the value of an Accept-Encoding element. * Get the value of an Accept-Encoding element.
* @param header The element to work on. * @param header The element to work on.
*/ */
char *osip_accept_encoding_get_element (const osip_accept_encoding_t * he ader); char *osip_accept_encoding_get_element (const osip_accept_encoding_t * he ader);
/** /**
* Allocate and Add a header parameter in an Accept-Encoding element. * Allocate and Add a header parameter in an Accept-Encoding element.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name for the new parameter. * @param name The token name for the new parameter.
* @param value The token value for the new parameter. * @param value The token value for the new parameter.
*/ */
#define osip_accept_encoding_param_add(header,name,value) osip_generic_par am_add((header)->gen_params,name,value) #define osip_accept_encoding_param_add(header,name,value) osip_generic_par am_add((&(header)->gen_params),name,value)
/** /**
* Find a header parameter in an Accept-Encoding element. * Find a header parameter in an Accept-Encoding element.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name to search. * @param name The token name to search.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_accept_encoding_param_get_byname(header,name,dest) osip_generi c_param_get_byname((header)->gen_params,name,dest) #define osip_accept_encoding_param_get_byname(header,name,dest) osip_generi c_param_get_byname((&(header)->gen_params),name,dest)
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
/** @} */ /** @} */
#endif #endif
 End of changes. 3 change blocks. 
4 lines changed or deleted 4 lines changed or added


 osip_accept_language.h   osip_accept_language.h 
skipping to change at line 93 skipping to change at line 93
* @param header The element to work on. * @param header The element to work on.
* @param value The value to set. * @param value The value to set.
*/ */
#define osip_accept_language_set_element(header, value) osip_accept_encodi ng_set_element(header, value) #define osip_accept_language_set_element(header, value) osip_accept_encodi ng_set_element(header, value)
/** /**
* Allocate and add a generic parameter element in an Accept-Language eleme nt. * Allocate and add a generic parameter element in an Accept-Language eleme nt.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name. * @param name The token name.
* @param value The token value. * @param value The token value.
*/ */
#define osip_accept_language_param_add(header,name,value) osip_generic_par am_add((header)->gen_params,name,value) #define osip_accept_language_param_add(header,name,value) osip_generic_par am_add((&(header)->gen_params),name,value)
/** /**
* Find a header parameter in a Accept-Language element. * Find a header parameter in a Accept-Language element.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name to search. * @param name The token name to search.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_accept_language_param_get_byname(header,name,dest) osip_generi c_param_get_byname((header)->gen_params,name,dest) #define osip_accept_language_param_get_byname(header,name,dest) osip_generi c_param_get_byname((&(header)->gen_params),name,dest)
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
/** @} */ /** @} */
#endif #endif
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 osip_call_info.h   osip_call_info.h 
skipping to change at line 49 skipping to change at line 49
*/ */
typedef struct osip_call_info osip_call_info_t; typedef struct osip_call_info osip_call_info_t;
/** /**
* Definition of the Call-Info header. * Definition of the Call-Info header.
* @struct osip_call_info * @struct osip_call_info
*/ */
struct osip_call_info struct osip_call_info
{ {
char *element; /**< Call-Info main value */ char *element; /**< Call-Info main value */
osip_list_t *gen_params; /**< Parameters for Call-Info header */ osip_list_t gen_params; /**< Parameters for Call-Info header */
}; };
#ifdef __cplusplus #ifdef __cplusplus
extern "C" extern "C"
{ {
#endif #endif
/** /**
* Allocate a Call-Info element. * Allocate a Call-Info element.
* @param header The element to work on. * @param header The element to work on.
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_contact.h   osip_contact.h 
skipping to change at line 110 skipping to change at line 110
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_contact_param_get(header,pos,dest) osip_from_param_get((osip_f rom_t*)header,pos,dest) #define osip_contact_param_get(header,pos,dest) osip_from_param_get((osip_f rom_t*)header,pos,dest)
/** /**
* Allocate and add a generic parameter element in a list. * Allocate and add a generic parameter element in a list.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name. * @param name The token name.
* @param value The token value. * @param value The token value.
*/ */
#define osip_contact_param_add(header,name, value) osip_generic_param_add(( header)->gen_params, name,value) #define osip_contact_param_add(header,name, value) osip_generic_param_add(( &(header)->gen_params), name,value)
/** /**
* Find a header parameter in a Contact element. * Find a header parameter in a Contact element.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name to search. * @param name The token name to search.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_contact_param_get_byname(header,name,dest) osip_generic_param_ get_byname((header)->gen_params,name,dest) #define osip_contact_param_get_byname(header,name,dest) osip_generic_param_ get_byname((&(header)->gen_params),name,dest)
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
/** @} */ /** @} */
#endif #endif
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 osip_content_type.h   osip_content_type.h 
skipping to change at line 50 skipping to change at line 50
typedef struct osip_content_type osip_content_type_t; typedef struct osip_content_type osip_content_type_t;
/** /**
* Definition of the Content-Type header. * Definition of the Content-Type header.
* @struct osip_content_type * @struct osip_content_type
*/ */
struct osip_content_type struct osip_content_type
{ {
char *type; /**< Type of attachement */ char *type; /**< Type of attachement */
char *subtype; /**< Sub-Type of attachement */ char *subtype; /**< Sub-Type of attachement */
osip_list_t *gen_params; /**< Content-Type parameters */ osip_list_t gen_params; /**< Content-Type parameters */
}; };
#ifdef __cplusplus #ifdef __cplusplus
extern "C" extern "C"
{ {
#endif #endif
/** /**
* Allocate a Content-Type element. * Allocate a Content-Type element.
* @param header The element to work on. * @param header The element to work on.
skipping to change at line 94 skipping to change at line 94
*/ */
int osip_content_type_clone (const osip_content_type_t * header, int osip_content_type_clone (const osip_content_type_t * header,
osip_content_type_t ** dest); osip_content_type_t ** dest);
/** /**
* Allocate and add a generic parameter element in a list. * Allocate and add a generic parameter element in a list.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name. * @param name The token name.
* @param value The token value. * @param value The token value.
*/ */
#define osip_content_type_param_add(header,name,value) osip_generic_param_ add((header)->gen_params,name,value) #define osip_content_type_param_add(header,name,value) osip_generic_param_ add((&(header)->gen_params),name,value)
/** /**
* Find a header parameter in a Content-Type element. * Find a header parameter in a Content-Type element.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name to search. * @param name The token name to search.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_content_type_param_get_byname(header,name,dest) osip_generic_p aram_get_byname((header)->gen_params,name,dest) #define osip_content_type_param_get_byname(header,name,dest) osip_generic_p aram_get_byname((&(header)->gen_params),name,dest)
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
/** @} */ /** @} */
#endif #endif
 End of changes. 3 change blocks. 
3 lines changed or deleted 3 lines changed or added


 osip_dialog.h   osip_dialog.h 
skipping to change at line 65 skipping to change at line 65
/** /**
* Structure for referencing a dialog. * Structure for referencing a dialog.
* @struct osip_dialog * @struct osip_dialog
*/ */
struct osip_dialog struct osip_dialog
{ {
char *call_id; /**< Call-ID*/ char *call_id; /**< Call-ID*/
char *local_tag; /**< local tag */ char *local_tag; /**< local tag */
char *remote_tag; /**< remote tag */ char *remote_tag; /**< remote tag */
osip_list_t *route_set; /**< route set */ osip_list_t route_set; /**< route set */
int local_cseq; /**< last local cseq */ int local_cseq; /**< last local cseq */
int remote_cseq; /**< last remote cseq*/ int remote_cseq; /**< last remote cseq*/
osip_to_t *remote_uri; /**< remote_uri */ osip_to_t *remote_uri; /**< remote_uri */
osip_from_t *local_uri; /**< local_uri */ osip_from_t *local_uri; /**< local_uri */
osip_contact_t *remote_contact_uri; /**< remote contact_uri */ osip_contact_t *remote_contact_uri; /**< remote contact_uri */
int secure; /**< use secure transport layer */ int secure; /**< use secure transport layer */
osip_dialog_type_t type; /**< type of dialog (CALLEE or CAL LER) */ osip_dialog_type_t type; /**< type of dialog (CALLEE or CAL LER) */
state_t state; /**< DIALOG_EARLY || DIALOG_CONFIR MED || DIALOG_CLOSED */ state_t state; /**< DIALOG_EARLY || DIALOG_CONFIR MED || DIALOG_CLOSED */
void *your_instance; /**< for application data referenc e */ void *your_instance; /**< for application data referenc e */
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_fifo.h   osip_fifo.h 
skipping to change at line 72 skipping to change at line 72
/** /**
* Structure for referencing a fifo. * Structure for referencing a fifo.
* @struct osip_fifo * @struct osip_fifo
*/ */
struct osip_fifo struct osip_fifo
{ {
#ifdef OSIP_MT #ifdef OSIP_MT
struct osip_mutex *qislocked; /**@internal */ struct osip_mutex *qislocked; /**@internal */
struct osip_sem *qisempty; /**@internal */ struct osip_sem *qisempty; /**@internal */
#endif #endif
osip_list_t *queue; /**< list of nodes containing elements * / osip_list_t queue; /**< list of nodes containing elements * /
int nb_elt; /**< nb of elements */ int nb_elt; /**< nb of elements */
osip_fifo_etat etat; /**@internal state of the fifo */ osip_fifo_etat etat; /**@internal state of the fifo */
}; };
/** /**
* Initialise a osip_fifo_t element. * Initialise a osip_fifo_t element.
* NOTE: this element MUST be previously allocated with * NOTE: this element MUST be previously allocated with
* osip_malloc(). The osip_free() call on the fifo is * osip_malloc(). The osip_free() call on the fifo is
* still automatically done by osip_fifo_free(). This * still automatically done by osip_fifo_free(). This
* also means you can't use a static osip_fifo_t variable * also means you can't use a static osip_fifo_t variable
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_from.h   osip_from.h 
skipping to change at line 51 skipping to change at line 51
typedef struct osip_from osip_from_t; typedef struct osip_from osip_from_t;
/** /**
* Definition of the From header. * Definition of the From header.
* @struct osip_from * @struct osip_from
*/ */
struct osip_from struct osip_from
{ {
char *displayname; /**< Display Name */ char *displayname; /**< Display Name */
osip_uri_t *url; /**< url */ osip_uri_t *url; /**< url */
osip_list_t *gen_params; /**< other From parameters */ osip_list_t gen_params; /**< other From parameters */
}; };
#ifdef __cplusplus #ifdef __cplusplus
extern "C" extern "C"
{ {
#endif #endif
/** /**
* Allocate a From element. * Allocate a From element.
* @param header The element to work on. * @param header The element to work on.
skipping to change at line 122 skipping to change at line 122
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
int osip_from_param_get (osip_from_t * header, int pos, osip_generic_para m_t ** dest); int osip_from_param_get (osip_from_t * header, int pos, osip_generic_para m_t ** dest);
/** /**
* Allocate and add a generic parameter element in a list. * Allocate and add a generic parameter element in a list.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name. * @param name The token name.
* @param value The token value. * @param value The token value.
*/ */
#define osip_from_param_add(header,name,value) osip_generic_param_add( (header)->gen_params,name,value) #define osip_from_param_add(header,name,value) osip_generic_param_add( (&(header)->gen_params),name,value)
/** /**
* Find a header parameter in a From element. * Find a header parameter in a From element.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name to search. * @param name The token name to search.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_from_param_get_byname(header,name,dest) osip_generic_param_get _byname((header)->gen_params,name,dest) #define osip_from_param_get_byname(header,name,dest) osip_generic_param_get _byname((&(header)->gen_params),name,dest)
/** /**
* Find the tag parameter in a From element. * Find the tag parameter in a From element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_from_get_tag(header,dest) osip_generic_param_get_byname((he ader)->gen_params, "tag",dest) #define osip_from_get_tag(header,dest) osip_generic_param_get_byname((&( header)->gen_params), "tag",dest)
/** /**
* Allocate and add a tag parameter element in a Contact element. * Allocate and add a tag parameter element in a Contact element.
* @param header The element to work on. * @param header The element to work on.
* @param value The token value. * @param value The token value.
*/ */
#define osip_from_set_tag(header,value) osip_generic_param_add((header) ->gen_params, osip_strdup("tag"),value) #define osip_from_set_tag(header,value) osip_generic_param_add((&(heade r)->gen_params), osip_strdup("tag"),value)
#ifndef DOXYGEN /* avoid DOXYGEN warning */ #ifndef DOXYGEN /* avoid DOXYGEN warning */
/* Compare the username, host and tag part (if exist) of the two froms */ /* Compare the username, host and tag part (if exist) of the two froms */
int osip_from_compare (osip_from_t * header1, osip_from_t * header2); int osip_from_compare (osip_from_t * header1, osip_from_t * header2);
#endif #endif
/** /**
* Check if the tags in the From headers match. * Check if the tags in the From headers match.
* NOTE: THIS IS AN INTERNAL METHOD ONLY * NOTE: THIS IS AN INTERNAL METHOD ONLY
* @param from1 The first From header. * @param from1 The first From header.
 End of changes. 5 change blocks. 
5 lines changed or deleted 5 lines changed or added


 osip_mt.h   osip_mt.h 
skipping to change at line 30 skipping to change at line 30
#ifndef _OSIP_MT_H_ #ifndef _OSIP_MT_H_
#define _OSIP_MT_H_ #define _OSIP_MT_H_
#ifdef OSIP_MT #ifdef OSIP_MT
#ifdef ENABLE_MPATROL #ifdef ENABLE_MPATROL
#include <mpatrol.h> #include <mpatrol.h>
#endif #endif
#include <stdio.h> #include <stdio.h>
#ifndef _WIN32_WCE
#include <errno.h> #include <errno.h>
#endif
/** /**
* @file osip_mt.h * @file osip_mt.h
* @brief oSIP Thread, Mutex and Semaphore definitions * @brief oSIP Thread, Mutex and Semaphore definitions
* *
* Those methods are only available if the library is compile * Those methods are only available if the library is compile
* in multi threaded mode. This is the default for oSIP. * in multi threaded mode. This is the default for oSIP.
*/ */
/** /**
 End of changes. 2 change blocks. 
0 lines changed or deleted 2 lines changed or added


 osip_parser.h   osip_parser.h 
skipping to change at line 218 skipping to change at line 218
int osip_message_set_contact (osip_message_t * sip, const char *hvalue); int osip_message_set_contact (osip_message_t * sip, const char *hvalue);
/** /**
* Get one Contact header. * Get one Contact header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
*/ */
int osip_message_get_contact (const osip_message_t * sip, int pos, int osip_message_get_contact (const osip_message_t * sip, int pos,
osip_contact_t ** dest); osip_contact_t ** dest);
/** /**
* Set the Content-disposition header.
* @param sip The element to work on.
* @param hvalue The string describing the element.
*/
int osip_message_set_content_disposition (osip_message_t * sip,
const char *hvalue);
/**
* Get one Content-disposition header.
* @param sip The element to work on.
* @param pos The index of the element to get.
* @param dest A pointer on the header found.
*/
int osip_message_get_content_disposition (const osip_message_t * sip,
int pos,
osip_content_disposition_t ** d
est);
/**
* Set the Content-encoding header. * Set the Content-encoding header.
* @param sip The element to work on. * @param sip The element to work on.
* @param hvalue The string describing the element. * @param hvalue The string describing the element.
*/ */
int osip_message_set_content_encoding (osip_message_t * sip, const char * hvalue); int osip_message_set_content_encoding (osip_message_t * sip, const char * hvalue);
/** /**
* Get one Content-encoding header. * Get one Content-encoding header.
* @param sip The element to work on. * @param sip The element to work on.
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the header found. * @param dest A pointer on the header found.
 End of changes. 1 change blocks. 
17 lines changed or deleted 0 lines changed or added


 osip_port.h   osip_port.h 
skipping to change at line 35 skipping to change at line 35
#include <stdio.h> #include <stdio.h>
#if defined(__PALMOS__) && (__PALMOS__ >= 0x06000000) #if defined(__PALMOS__) && (__PALMOS__ >= 0x06000000)
# define STDC_HEADERS 1 # define STDC_HEADERS 1
# define HAVE_CTYPE_H 1 # define HAVE_CTYPE_H 1
# define HAVE_STRING_H 1 # define HAVE_STRING_H 1
# define HAVE_SYS_TYPES_H 1 # define HAVE_SYS_TYPES_H 1
# define HAVE_TIME_H 1 # define HAVE_TIME_H 1
# define HAVE_STDARG_H 1 # define HAVE_STDARG_H 1
#elif defined(WIN32) #elif defined _WIN32_WCE
#define STDC_HEADERS 1 #define STDC_HEADERS 1
#define HAVE_CTYPE_H 1 #define HAVE_CTYPE_H 1
#define HAVE_STRING_H 1 #define HAVE_STRING_H 1
#define HAVE_SYS_TYPES_H 1
#define HAVE_TIME_H 1 #define HAVE_TIME_H 1
#define HAVE_STDARG_H 1 #define HAVE_STDARG_H 1
/* use win32 crypto routines for random number generation */ #define snprintf _snprintf
/* only use for vs .net (compiler v. 1300) or greater */ #define EBUSY 16
#if _MSC_VER >= 1300
#define WIN32_USE_CRYPTO 1
#endif
#elif defined _WIN32_WCE #elif defined(WIN32)
#define STDC_HEADERS 1 #define STDC_HEADERS 1
#define HAVE_CTYPE_H 1 #define HAVE_CTYPE_H 1
#define HAVE_STRING_H 1 #define HAVE_STRING_H 1
#define HAVE_SYS_TYPES_H 1
#define HAVE_TIME_H 1 #define HAVE_TIME_H 1
#define HAVE_STDARG_H 1 #define HAVE_STDARG_H 1
#define strnicmp _strnicmp #define snprintf _snprintf
#define stricmp _stricmp
#define EBUSY 16 /* use win32 crypto routines for random number generation */
/* only use for vs .net (compiler v. 1300) or greater */
#if _MSC_VER >= 1300
#define WIN32_USE_CRYPTO 1
#endif
#endif #endif
#ifdef __VXWORKS_OS__ #ifdef __VXWORKS_OS__
#include <string.h> #include <string.h>
#include <time.h> #include <time.h>
#include <sys/times.h> #include <sys/times.h>
#include <stdarg.h> #include <stdarg.h>
#include <sys/types.h> #include <sys/types.h>
#include <stdlib.h> #include <stdlib.h>
skipping to change at line 176 skipping to change at line 177
#ifdef __cplusplus #ifdef __cplusplus
extern "C" extern "C"
{ {
#endif #endif
/**************************/ /**************************/
/* MALLOC redirections */ /* MALLOC redirections */
/**************************/ /**************************/
#ifndef WIN32 #if !defined(WIN32) && !defined(_WIN32_WCE)
typedef void *osip_malloc_func_t (size_t size); typedef void *osip_malloc_func_t (size_t size);
typedef void osip_free_func_t (void *ptr); typedef void osip_free_func_t (void *ptr);
typedef void *osip_realloc_func_t (void *ptr, size_t size); typedef void *osip_realloc_func_t (void *ptr, size_t size);
extern osip_malloc_func_t *osip_malloc_func; extern osip_malloc_func_t *osip_malloc_func;
extern osip_realloc_func_t *osip_realloc_func; extern osip_realloc_func_t *osip_realloc_func;
extern osip_free_func_t *osip_free_func; extern osip_free_func_t *osip_free_func;
void osip_set_allocators (osip_malloc_func_t * malloc_func, void osip_set_allocators (osip_malloc_func_t * malloc_func,
skipping to change at line 346 skipping to change at line 347
/* INPUT: chfr | format string for next args */ /* INPUT: chfr | format string for next args */
int osip_trace (char *fi, int li, osip_trace_level_t level, FILE * f, int osip_trace (char *fi, int li, osip_trace_level_t level, FILE * f,
char *chfr, ...); char *chfr, ...);
#ifdef ENABLE_TRACE #ifdef ENABLE_TRACE
#define OSIP_TRACE(P) P #define OSIP_TRACE(P) P
#else #else
#define OSIP_TRACE(P) do {} while (0) #define OSIP_TRACE(P) do {} while (0)
#endif #endif
#define REMOVE_ELEMENT(first_element, element) \
if (element->parent==NULL) \
{ first_element = element->next; \
if (first_element!=NULL) \
first_element->parent = NULL; } \
else \
{ element->parent->next = element->next; \
if (element->next!=NULL) \
element->next->parent = element->parent; \
element->next = NULL; \
element->parent = NULL; }
#define ADD_ELEMENT(first_element, element) \
if (first_element==NULL) \
{ \
first_element = element; \
element->next = NULL; \
element->parent = NULL; \
} \
else \
{ \
element->next = first_element; \
element->parent = NULL; \
element->next->parent = element; \
first_element = element; \
}
#define APPEND_ELEMENT(type_of_element_t, first_element, element) \
if (first_element==NULL) \
{ first_element = element; \
element->next = NULL; /* useless */ \
element->parent = NULL; /* useless */ } \
else \
{ type_of_element_t *f; \
for (f=first_element; f->next!=NULL; f=f->next) \
{ } \
f->next = element; \
element->parent = f; \
element->next = NULL; \
}
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
#endif /* _PORT_H_ */ #endif /* _PORT_H_ */
 End of changes. 8 change blocks. 
12 lines changed or deleted 54 lines changed or added


 osip_record_route.h   osip_record_route.h 
skipping to change at line 99 skipping to change at line 99
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_record_route_param_get(header,pos,dest) osip_from_param_get(( osip_from_t*)header,pos,dest) #define osip_record_route_param_get(header,pos,dest) osip_from_param_get(( osip_from_t*)header,pos,dest)
/** /**
* Allocate and add a generic parameter element in a list. * Allocate and add a generic parameter element in a list.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name. * @param name The token name.
* @param value The token value. * @param value The token value.
*/ */
#define osip_record_route_param_add(header,name,value) osip_generic_param_a dd((header)->gen_params,name,value) #define osip_record_route_param_add(header,name,value) osip_generic_param_a dd((&(header)->gen_params),name,value)
/** /**
* Find a header parameter in a Record-Route element. * Find a header parameter in a Record-Route element.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name to search. * @param name The token name to search.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_record_route_param_get_byname(header,name,dest) osip_generic_p aram_get_byname((header)->gen_params,name,dest) #define osip_record_route_param_get_byname(header,name,dest) osip_generic_p aram_get_byname((&(header)->gen_params),name,dest)
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
/** @} */ /** @} */
#endif #endif
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 osip_route.h   osip_route.h 
skipping to change at line 99 skipping to change at line 99
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_route_param_get(header,pos,dest) osip_from_param_get((osip_fro m_t*)header,pos,dest) #define osip_route_param_get(header,pos,dest) osip_from_param_get((osip_fro m_t*)header,pos,dest)
/** /**
* Allocate and add a generic parameter element in a Route element. * Allocate and add a generic parameter element in a Route element.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name. * @param name The token name.
* @param value The token value. * @param value The token value.
*/ */
#define osip_route_param_add(header,name,value) osip_generic_param_add((h eader)->gen_params,name,value) #define osip_route_param_add(header,name,value) osip_generic_param_add((& (header)->gen_params),name,value)
/** /**
* Find a header parameter in a Route element. * Find a header parameter in a Route element.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name to search. * @param name The token name to search.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_route_param_get_byname(header,name,dest) osip_generic_param_ge t_byname((header)->gen_params,name,dest) #define osip_route_param_get_byname(header,name,dest) osip_generic_param_ge t_byname((&(header)->gen_params),name,dest)
#ifdef __cplusplus #ifdef __cplusplus
} }
#endif #endif
/** @} */ /** @} */
#endif #endif
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added


 osip_time.h   osip_time.h 
skipping to change at line 13 skipping to change at line 13
#ifndef _OSIP_TIME_H_ #ifndef _OSIP_TIME_H_
#define _OSIP_TIME_H_ #define _OSIP_TIME_H_
#ifdef __cplusplus #ifdef __cplusplus
extern "C" extern "C"
{ {
#endif #endif
/* Common time-related functions and data types */ /* Common time-related functions and data types */
#if defined(_WIN32_WCE)
struct _timeb {
time_t time;
unsigned short millitm;
short timezone;
short dstflag;
};
#endif
/* struct timeval, as defined in <sys/time.h>, <winsock.h> or <winsock2.h> */ /* struct timeval, as defined in <sys/time.h>, <winsock.h> or <winsock2.h> */
struct timeval; struct timeval;
/* Time manipulation functions */ /* Time manipulation functions */
void add_gettimeofday (struct timeval *atv, int ms); void add_gettimeofday (struct timeval *atv, int ms);
void min_timercmp (struct timeval *tv1, struct timeval *tv2); void min_timercmp (struct timeval *tv1, struct timeval *tv2);
/* OS-dependent */ /* OS-dependent */
#if defined(WIN32) || defined(_WIN32_WCE) || defined (__VXWORKS_OS__) #if defined(WIN32) || defined(_WIN32_WCE) || defined (__VXWORKS_OS__)
/* Operations on struct timeval */ /* Operations on struct timeval */
 End of changes. 1 change blocks. 
0 lines changed or deleted 10 lines changed or added


 osip_to.h   osip_to.h 
skipping to change at line 110 skipping to change at line 110
* @param pos The index of the element to get. * @param pos The index of the element to get.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_to_param_get(header,pos,dest) osip_from_param_get((osip_from_t *)header,pos,dest) #define osip_to_param_get(header,pos,dest) osip_from_param_get((osip_from_t *)header,pos,dest)
/** /**
* Find a header parameter in a To element. * Find a header parameter in a To element.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name to search. * @param name The token name to search.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_to_param_get_byname(header,name,dest) osip_generic_param_get_b yname((header)->gen_params,name,dest) #define osip_to_param_get_byname(header,name,dest) osip_generic_param_get_b yname((&(header)->gen_params),name,dest)
/** /**
* Allocate and add a generic parameter element in a list. * Allocate and add a generic parameter element in a list.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name. * @param name The token name.
* @param value The token value. * @param value The token value.
*/ */
#define osip_to_param_add(header,name,value) osip_generic_param_add((header )->gen_params,name,value) #define osip_to_param_add(header,name,value) osip_generic_param_add((&(head er)->gen_params),name,value)
/** /**
* Allocate and add a tag parameter element in a list. * Allocate and add a tag parameter element in a list.
* @param header The element to work on. * @param header The element to work on.
* @param value The token value. * @param value The token value.
*/ */
#define osip_to_set_tag(header,value) osip_generic_param_add((header)->gen_ params, osip_strdup("tag"),value) #define osip_to_set_tag(header,value) osip_generic_param_add((&(header)->ge n_params), osip_strdup("tag"),value)
/** /**
* Find a tag parameter in a To element. * Find a tag parameter in a To element.
* @param header The element to work on. * @param header The element to work on.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_to_get_tag(header,dest) osip_generic_param_get_byname((header) ->gen_params, "tag",dest) #define osip_to_get_tag(header,dest) osip_generic_param_get_byname((&(heade r)->gen_params), "tag",dest)
#ifndef DOXYGEN /* avoid DOXYGEN warning */ #ifndef DOXYGEN /* avoid DOXYGEN warning */
/* Compare the username, host and tag part of the two froms */ /* Compare the username, host and tag part of the two froms */
#define osip_to_compare(header1, header2) osip_from_compare((osip_from_t *) header1, (osip_from_t *)header2) #define osip_to_compare(header1, header2) osip_from_compare((osip_from_t *) header1, (osip_from_t *)header2)
#endif #endif
/** /**
* Check if the tags in the To headers match. * Check if the tags in the To headers match.
* NOTE: THIS IS AN INTERNAL METHOD ONLY * NOTE: THIS IS AN INTERNAL METHOD ONLY
* @param to1 The first To header. * @param to1 The first To header.
 End of changes. 4 change blocks. 
4 lines changed or deleted 4 lines changed or added


 osip_uri.h   osip_uri.h 
skipping to change at line 177 skipping to change at line 177
* Structure for referencing SIP urls. * Structure for referencing SIP urls.
* @struct osip_uri * @struct osip_uri
*/ */
struct osip_uri struct osip_uri
{ {
char *scheme; /**< Uri Scheme (sip or sips) */ char *scheme; /**< Uri Scheme (sip or sips) */
char *username; /**< Username */ char *username; /**< Username */
char *password; /**< Password */ char *password; /**< Password */
char *host; /**< Domain */ char *host; /**< Domain */
char *port; /**< Port number */ char *port; /**< Port number */
osip_list_t *url_params; /**< Uri parameters */ osip_list_t url_params; /**< Uri parameters */
osip_list_t *url_headers; /**< Uri headers */ osip_list_t url_headers; /**< Uri headers */
char *string; /**< Space for other url schemes. (http, mailto...) */ char *string; /**< Space for other url schemes. (http, mailto...) */
}; };
/** /**
* Allocate a url element. * Allocate a url element.
* @param url The element to work on. * @param url The element to work on.
*/ */
int osip_uri_init (osip_uri_t ** url); int osip_uri_init (osip_uri_t ** url);
/** /**
skipping to change at line 293 skipping to change at line 293
/** /**
* Get the port of a url element. * Get the port of a url element.
* @param url The element to work on. * @param url The element to work on.
*/ */
char *osip_uri_get_port (osip_uri_t * url); char *osip_uri_get_port (osip_uri_t * url);
/** /**
* Set the transport parameter to UDP in a url element. * Set the transport parameter to UDP in a url element.
* @param url The element to work on. * @param url The element to work on.
*/ */
#define osip_uri_set_transport_udp(url) osip_uri_param_add((url)->url_par ams, osip_strdup("transport"), osip_strdup("udp")) #define osip_uri_set_transport_udp(url) osip_uri_param_add((&(url)->url_p arams), osip_strdup("transport"), osip_strdup("udp"))
/** /**
* Set the transport parameter to TCP in a url element. * Set the transport parameter to TCP in a url element.
* @param url The element to work on. * @param url The element to work on.
*/ */
#define osip_uri_set_transport_tcp(url) osip_uri_param_add((url)->url_par ams, osip_strdup("transport"), osip_strdup("tcp")) #define osip_uri_set_transport_tcp(url) osip_uri_param_add((&(url)->url_p arams), osip_strdup("transport"), osip_strdup("tcp"))
/** /**
* Set the transport parameter to SCTP in a url element. * Set the transport parameter to SCTP in a url element.
* @param url The element to work on. * @param url The element to work on.
*/ */
#define osip_uri_set_transport_sctp(url) osip_uri_param_add((url)->url_par ams, osip_strdup("transport"), osip_strdup("sctp")) #define osip_uri_set_transport_sctp(url) osip_uri_param_add((&(url)->url_p arams), osip_strdup("transport"), osip_strdup("sctp"))
/** /**
* Set the transport parameter to TLS in a url element. * Set the transport parameter to TLS in a url element.
* @param url The element to work on. * @param url The element to work on.
*/ */
#define osip_uri_set_transport_tls(url) osip_uri_param_add((url)->url_par ams, osip_strdup("transport"), osip_strdup("tls")) #define osip_uri_set_transport_tls(url) osip_uri_param_add((&(url)->url_p arams), osip_strdup("transport"), osip_strdup("tls"))
/** /**
* Set the transport parameter to TLS in a url element. * Set the transport parameter to TLS in a url element.
* @param url The element to work on. * @param url The element to work on.
* @param value The value describing the transport protocol. * @param value The value describing the transport protocol.
*/ */
#define osip_uri_set_transport(url,value) osip_uri_param_add((url)->url_par ams, osip_strdup("transport"), value) #define osip_uri_set_transport(url,value) osip_uri_param_add((&(url)->url_p arams), osip_strdup("transport"), value)
/** /**
* Set the user parameter to PHONE in a url element. * Set the user parameter to PHONE in a url element.
* @param url The element to work on. * @param url The element to work on.
*/ */
#define osip_uri_set_user_phone(url) osip_uri_param_add((url)->url_params , osip_strdup("user"), osip_strdup("phone")) #define osip_uri_set_user_phone(url) osip_uri_param_add((&(url)->url_para ms), osip_strdup("user"), osip_strdup("phone"))
/** /**
* Set the user parameter to IP in a url element. * Set the user parameter to IP in a url element.
* @param url The element to work on. * @param url The element to work on.
*/ */
#define osip_uri_set_user_ip(url) osip_uri_param_add((url)->url_params , osip_strdup("user"), osip_strdup("ip")) #define osip_uri_set_user_ip(url) osip_uri_param_add((&(url)->url_para ms), osip_strdup("user"), osip_strdup("ip"))
/** /**
* Set a method parameter to INVITE in a url element. * Set a method parameter to INVITE in a url element.
* @param url The element to work on. * @param url The element to work on.
*/ */
#define osip_uri_set_method_invite(url) osip_uri_param_add((url)->url_para ms, osip_strdup("method"), osip_strdup("INVITE")) #define osip_uri_set_method_invite(url) osip_uri_param_add((&(url)->url_pa rams), osip_strdup("method"), osip_strdup("INVITE"))
/** /**
* Set a method parameter to ACK in a url element. * Set a method parameter to ACK in a url element.
* @param url The element to work on. * @param url The element to work on.
*/ */
#define osip_uri_set_method_ack(url) osip_uri_param_add((url)->url_para ms, osip_strdup("method"), osip_strdup("ACK")) #define osip_uri_set_method_ack(url) osip_uri_param_add((&(url)->url_pa rams), osip_strdup("method"), osip_strdup("ACK"))
/** /**
* Set a method parameter to OPTIONS in a url element. * Set a method parameter to OPTIONS in a url element.
* @param url The element to work on. * @param url The element to work on.
*/ */
#define osip_uri_set_method_options(url) osip_uri_param_add((url)->url_para ms, osip_strdup("method"), osip_strdup("OPTIONS")) #define osip_uri_set_method_options(url) osip_uri_param_add((&(url)->url_pa rams), osip_strdup("method"), osip_strdup("OPTIONS"))
/** /**
* Set a method parameter to BYE in a url element. * Set a method parameter to BYE in a url element.
* @param url The element to work on. * @param url The element to work on.
*/ */
#define osip_uri_set_method_bye(url) osip_uri_param_add((url)->url_para ms, osip_strdup("method"), osip_strdup("BYE")) #define osip_uri_set_method_bye(url) osip_uri_param_add((&(url)->url_pa rams), osip_strdup("method"), osip_strdup("BYE"))
/** /**
* Set a method parameter to CANCEL in a url element. * Set a method parameter to CANCEL in a url element.
* @param url The element to work on. * @param url The element to work on.
*/ */
#define osip_uri_set_method_cancel(url) osip_uri_param_add((url)->url_para ms, osip_strdup("method"), osip_strdup("CANCEL")) #define osip_uri_set_method_cancel(url) osip_uri_param_add((&(url)->url_pa rams), osip_strdup("method"), osip_strdup("CANCEL"))
/** /**
* Set a method parameter to REGISTER in a url element. * Set a method parameter to REGISTER in a url element.
* @param url The element to work on. * @param url The element to work on.
*/ */
#define osip_uri_set_method_register(url) osip_uri_param_add((url)->url_par ams,osip_strdup("method"), osip_strdup("REGISTER")) #define osip_uri_set_method_register(url) osip_uri_param_add((&(url)->url_p arams),osip_strdup("method"), osip_strdup("REGISTER"))
/** /**
* Set a method parameter in a url element. * Set a method parameter in a url element.
* @param url The element to work on. * @param url The element to work on.
* @param value The value for the method parameter. * @param value The value for the method parameter.
*/ */
#define osip_uri_set_method(url, value) osip_uri_param_add((url)->url_param s, osip_strdup("method"), value) #define osip_uri_set_method(url, value) osip_uri_param_add((&(url)->url_par ams), osip_strdup("method"), value)
/** /**
* Set a ttl parameter in a url element. * Set a ttl parameter in a url element.
* @param url The element to work on. * @param url The element to work on.
* @param value The value for the ttl parameter. * @param value The value for the ttl parameter.
*/ */
#define osip_uri_set_ttl(url, value) osip_uri_param_add((url)->url_param s, osip_strdup("ttl"), value) #define osip_uri_set_ttl(url, value) osip_uri_param_add((&(url)->url_par ams), osip_strdup("ttl"), value)
/** /**
* Set a maddr parameter in a url element. * Set a maddr parameter in a url element.
* @param url The element to work on. * @param url The element to work on.
* @param value The value for the maddr parameter. * @param value The value for the maddr parameter.
*/ */
#define osip_uri_set_maddr(url, value) osip_uri_param_add((url)->url_param s, osip_strdup("maddr"), value) #define osip_uri_set_maddr(url, value) osip_uri_param_add((&(url)->url_par ams), osip_strdup("maddr"), value)
/** /**
* Allocate and add a url parameter element in a url element. * Allocate and add a url parameter element in a url element.
* @param url The element to work on. * @param url The element to work on.
* @param name The token name. * @param name The token name.
* @param value The token value. * @param value The token value.
*/ */
#define osip_uri_uparam_add(url,name,value) osip_uri_param_add((url)->url_p arams,name,value) #define osip_uri_uparam_add(url,name,value) osip_uri_param_add((&(url)->url _params),name,value)
/** /**
* Find in a url parameter element in a url element. * Find in a url parameter element in a url element.
* @param url The element to work on. * @param url The element to work on.
* @param name The name of the url parameter element to find. * @param name The name of the url parameter element to find.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_uri_uparam_get_byname(url,name,dest) osip_uri_param_get_bynam e((url)->url_params,name,dest) #define osip_uri_uparam_get_byname(url,name,dest) osip_uri_param_get_bynam e((&(url)->url_params),name,dest)
/** /**
* Allocate and add a url header element in a url element. * Allocate and add a url header element in a url element.
* @param url The element to work on. * @param url The element to work on.
* @param name The token name. * @param name The token name.
* @param value The token value. * @param value The token value.
*/ */
#define osip_uri_uheader_add(url,name,value) osip_uri_header_add(url->ur l_headers,name,value) #define osip_uri_uheader_add(url,name,value) osip_uri_header_add((&(url) ->url_headers),name,value)
/** /**
* Find in a url header element in a url element. * Find in a url header element in a url element.
* @param url The element to work on. * @param url The element to work on.
* @param name The name of the url header element to find. * @param name The name of the url header element to find.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_uri_uheader_get_byname(url,name,dest) osip_uri_header_get_byna me(url->url_headers,name,dest) #define osip_uri_uheader_get_byname(url,name,dest) osip_uri_header_get_byna me((&(url)->url_headers),name,dest)
#ifndef DOXYGEN #ifndef DOXYGEN
/* internal method */ /* internal method */
char *next_separator (const char *ch, int separator_osip_to_find, char *next_separator (const char *ch, int separator_osip_to_find,
int before_separator); int before_separator);
char *__osip_uri_escape_nonascii_and_nondef (const char *string, char *__osip_uri_escape_nonascii_and_nondef (const char *string,
const char *def); const char *def);
char *__osip_uri_escape_userinfo (const char *string); char *__osip_uri_escape_userinfo (const char *string);
char *__osip_uri_escape_password (const char *string); char *__osip_uri_escape_password (const char *string);
 End of changes. 21 change blocks. 
22 lines changed or deleted 22 lines changed or added


 osip_via.h   osip_via.h 
skipping to change at line 53 skipping to change at line 53
* Definition of the Via header. * Definition of the Via header.
* @struct osip_via * @struct osip_via
*/ */
struct osip_via struct osip_via
{ {
char *version; /**< SIP Version */ char *version; /**< SIP Version */
char *protocol; /**< Protocol used by SIP Agent */ char *protocol; /**< Protocol used by SIP Agent */
char *host; /**< Host where to send answers */ char *host; /**< Host where to send answers */
char *port; /**< Port where to send answers */ char *port; /**< Port where to send answers */
char *comment; /**< Comments about SIP Agent */ char *comment; /**< Comments about SIP Agent */
osip_list_t *via_params; /**< Via parameters */ osip_list_t via_params; /**< Via parameters */
}; };
#ifdef __cplusplus #ifdef __cplusplus
extern "C" extern "C"
{ {
#endif #endif
/** /**
* Allocate a Via element. * Allocate a Via element.
* @param header The element to work on. * @param header The element to work on.
skipping to change at line 159 skipping to change at line 159
* Get the comment from a Via header. * Get the comment from a Via header.
* @param header The element to work on. * @param header The element to work on.
*/ */
#define osip_via_get_comment via_get_comment #define osip_via_get_comment via_get_comment
char *via_get_comment (osip_via_t * header); char *via_get_comment (osip_via_t * header);
/** /**
* Allocate and add a hidden parameter element in a list. * Allocate and add a hidden parameter element in a list.
* @param header The element to work on. * @param header The element to work on.
*/ */
#define osip_via_set_hidden(header) osip_generic_param_add((header)->via _params,osip_strdup("hidden"),NULL) #define osip_via_set_hidden(header) osip_generic_param_add((&(header)->v ia_params),osip_strdup("hidden"),NULL)
/** /**
* Allocate and add a ttl parameter element in a list. * Allocate and add a ttl parameter element in a list.
* @param header The element to work on. * @param header The element to work on.
* @param value The token value. * @param value The token value.
*/ */
#define osip_via_set_ttl(header,value) osip_generic_param_add((header)->v ia_params,osip_strdup("ttl"),value) #define osip_via_set_ttl(header,value) osip_generic_param_add((&(header)- >via_params),osip_strdup("ttl"),value)
/** /**
* Allocate and add a maddr parameter element in a list. * Allocate and add a maddr parameter element in a list.
* @param header The element to work on. * @param header The element to work on.
* @param value The token value. * @param value The token value.
*/ */
#define osip_via_set_maddr(header,value) osip_generic_param_add((header)- >via_params,osip_strdup("maddr"),value) #define osip_via_set_maddr(header,value) osip_generic_param_add((&(header )->via_params),osip_strdup("maddr"),value)
/** /**
* Allocate and add a received parameter element in a list. * Allocate and add a received parameter element in a list.
* @param header The element to work on. * @param header The element to work on.
* @param value The token value. * @param value The token value.
*/ */
#define osip_via_set_received(header,value) osip_generic_param_add((header) ->via_params,osip_strdup("received"),value) #define osip_via_set_received(header,value) osip_generic_param_add((&(heade r)->via_params),osip_strdup("received"),value)
/** /**
* Allocate and add a branch parameter element in a list. * Allocate and add a branch parameter element in a list.
* @param header The element to work on. * @param header The element to work on.
* @param value The token value. * @param value The token value.
*/ */
#define osip_via_set_branch(header,value) osip_generic_param_add((header)- >via_params,osip_strdup("branch"),value) #define osip_via_set_branch(header,value) osip_generic_param_add((&(header )->via_params),osip_strdup("branch"),value)
/** /**
* Allocate and add a generic parameter element in a list. * Allocate and add a generic parameter element in a list.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name. * @param name The token name.
* @param value The token value. * @param value The token value.
*/ */
#define osip_via_param_add(header,name,value) osip_generic_param_add(( header)->via_params,name,value) #define osip_via_param_add(header,name,value) osip_generic_param_add(( &(header)->via_params),name,value)
/** /**
* Find a header parameter in a Via element. * Find a header parameter in a Via element.
* @param header The element to work on. * @param header The element to work on.
* @param name The token name to search. * @param name The token name to search.
* @param dest A pointer on the element found. * @param dest A pointer on the element found.
*/ */
#define osip_via_param_get_byname(header,name,dest) osip_generic_param_get_ byname((header)->via_params,name,dest) #define osip_via_param_get_byname(header,name,dest) osip_generic_param_get_ byname((&(header)->via_params),name,dest)
/** /**
* Check if the Via headers match. * Check if the Via headers match.
* NOTE: THIS IS AN INTERNAL METHOD ONLY * NOTE: THIS IS AN INTERNAL METHOD ONLY
* @param via1 The first Via header. * @param via1 The first Via header.
* @param via2 The second Via header. * @param via2 The second Via header.
*/ */
int osip_via_match (osip_via_t * via1, osip_via_t * via2); int osip_via_match (osip_via_t * via1, osip_via_t * via2);
#ifdef __cplusplus #ifdef __cplusplus
 End of changes. 8 change blocks. 
8 lines changed or deleted 8 lines changed or added


 sdp_message.h   sdp_message.h 
skipping to change at line 88 skipping to change at line 88
typedef struct sdp_time_descr sdp_time_descr_t; typedef struct sdp_time_descr sdp_time_descr_t;
/** /**
* SDP Time description definition. * SDP Time description definition.
* @struct sdp_time_descr * @struct sdp_time_descr
*/ */
struct sdp_time_descr struct sdp_time_descr
{ {
char *t_start_time; /**< start time */ char *t_start_time; /**< start time */
char *t_stop_time; /**< stop time */ char *t_stop_time; /**< stop time */
osip_list_t *r_repeats; /**< repeat headers */ osip_list_t r_repeats; /**< repeat headers */
}; };
/** /**
* Allocate a time description element. * Allocate a time description element.
* @param elem The element to work on. * @param elem The element to work on.
*/ */
int sdp_time_descr_init (sdp_time_descr_t ** elem); int sdp_time_descr_init (sdp_time_descr_t ** elem);
/** /**
* Free a time description element. * Free a time description element.
* @param elem The element to work on. * @param elem The element to work on.
skipping to change at line 202 skipping to change at line 202
/** /**
* SDP media definition. * SDP media definition.
* @struct sdp_media * @struct sdp_media
*/ */
struct sdp_media struct sdp_media
{ {
char *m_media; /**< media type */ char *m_media; /**< media type */
char *m_port; /**< port number */ char *m_port; /**< port number */
char *m_number_of_port; /**< number of port */ char *m_number_of_port; /**< number of port */
char *m_proto; /**< protocol to be used */ char *m_proto; /**< protocol to be used */
osip_list_t *m_payloads; /**< list of payloads (as strings) */ osip_list_t m_payloads; /**< list of payloads (as strings) */
char *i_info; /**< information header */ char *i_info; /**< information header */
osip_list_t *c_connections; /**< list of sdp_connection_t * */ osip_list_t c_connections; /**< list of sdp_connection_t * */
osip_list_t *b_bandwidths; /**< list of sdp_bandwidth_t * */ osip_list_t b_bandwidths; /**< list of sdp_bandwidth_t * */
osip_list_t *a_attributes; /**< list of sdp_attribute_t * */ osip_list_t a_attributes; /**< list of sdp_attribute_t * */
sdp_key_t *k_key; /**< key informations */ sdp_key_t *k_key; /**< key informations */
}; };
/** /**
* Allocate a media element. * Allocate a media element.
* @param elem The element to work on. * @param elem The element to work on.
*/ */
int sdp_media_init (sdp_media_t ** elem); int sdp_media_init (sdp_media_t ** elem);
/** /**
* Free a media element. * Free a media element.
skipping to change at line 244 skipping to change at line 244
char *v_version; /**< version header */ char *v_version; /**< version header */
char *o_username; /**< Username */ char *o_username; /**< Username */
char *o_sess_id; /**< Identifier for session */ char *o_sess_id; /**< Identifier for session */
char *o_sess_version; /**< Version of session */ char *o_sess_version; /**< Version of session */
char *o_nettype; /**< Network type */ char *o_nettype; /**< Network type */
char *o_addrtype; /**< Address type */ char *o_addrtype; /**< Address type */
char *o_addr; /**< Address */ char *o_addr; /**< Address */
char *s_name; /**< Subject header */ char *s_name; /**< Subject header */
char *i_info; /**< Information header */ char *i_info; /**< Information header */
char *u_uri; /**< Uri header */ char *u_uri; /**< Uri header */
osip_list_t *e_emails; /**< list of mail address */ osip_list_t e_emails; /**< list of mail address */
osip_list_t *p_phones; /**< list of phone numbers * */ osip_list_t p_phones; /**< list of phone numbers * */
sdp_connection_t *c_connection; /**< Connection information */ sdp_connection_t *c_connection; /**< Connection information */
osip_list_t *b_bandwidths; /**< list of bandwidth info (sdp_bandwidth_ osip_list_t b_bandwidths; /**< list of bandwidth info (sdp_bandwidth_t
t) */ ) */
osip_list_t *t_descrs; /**< list of time description (sdp_time_des osip_list_t t_descrs; /**< list of time description (sdp_time_desc
cr_t) */ r_t) */
char *z_adjustments; /**< Time adjustment header */ char *z_adjustments; /**< Time adjustment header */
sdp_key_t *k_key; /**< Key information header */ sdp_key_t *k_key; /**< Key information header */
osip_list_t *a_attributes; /**< list of global attributes (sdp_attribu osip_list_t a_attributes; /**< list of global attributes (sdp_attribut
te_t) */ e_t) */
osip_list_t *m_medias; /**< list of supported media (sdp_media_t) osip_list_t m_medias; /**< list of supported media (sdp_media_t) *
*/ /
}; };
/** /**
* Allocate a SDP packet. * Allocate a SDP packet.
* @param sdp The element to work on. * @param sdp The element to work on.
*/ */
int sdp_message_init (sdp_message_t ** sdp); int sdp_message_init (sdp_message_t ** sdp);
/** /**
* Parse a SDP packet. * Parse a SDP packet.
* @param sdp The element to work on. * @param sdp The element to work on.
 End of changes. 6 change blocks. 
15 lines changed or deleted 15 lines changed or added

This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/