osip.h   osip.h 
skipping to change at line 446 skipping to change at line 446
/** /**
* Structure for INVITE CLIENT TRANSACTION (outgoing INVITE transaction). * Structure for INVITE CLIENT TRANSACTION (outgoing INVITE transaction).
* @defvar osip_ict_t * @defvar osip_ict_t
*/ */
typedef struct osip_ict osip_ict_t; typedef struct osip_ict osip_ict_t;
struct osip_ict struct osip_ict
{ {
/* state machine is implied... */ /* state machine is implied... */
#ifdef NEW_TIMER
int timer_a_length; /* A=T1, A=2xT1... (unreliable tr only)
*/
struct timeval timer_a_start;
int timer_b_length; /* B = 64* T1
*/
struct timeval timer_b_start; /* fire when transaction timeouts
*/
int timer_d_length; /* D >= 32s for unreliable tr (or 0)
*/
struct timeval timer_d_start; /* should be equal to timer H
*/
#else
int timer_a_length; /* A=T1, A=2xT1... (unreliable transport only) */ int timer_a_length; /* A=T1, A=2xT1... (unreliable transport only) */
time_t timer_a_start; time_t timer_a_start;
int timer_b_length; /* B = 64* T1 */ int timer_b_length; /* B = 64* T1 */
time_t timer_b_start; /* fire when transaction timeouts */ time_t timer_b_start; /* fire when transaction timeouts */
int timer_d_length; /* D >= 32s for unreliable transport (else = 0) */ int timer_d_length; /* D >= 32s for unreliable transport (else = 0) */
time_t timer_d_start; /* should be equal to timer H */ time_t timer_d_start; /* should be equal to timer H
*/
#endif
char *destination; /* url used to send requests */ char *destination; /* url used to send requests */
int port; /* port of next hop */ int port; /* port of next hop */
}; };
/** /**
* Structure for NON-INVITE CLIENT TRANSACTION (outgoing NON-INVITE transac tion). * Structure for NON-INVITE CLIENT TRANSACTION (outgoing NON-INVITE transac tion).
* @defvar osip_nict_t * @defvar osip_nict_t
*/ */
typedef struct osip_nict osip_nict_t; typedef struct osip_nict osip_nict_t;
struct osip_nict struct osip_nict
{ {
/* state machine is implied... */ /* state machine is implied... */
#ifdef NEW_TIMER
int timer_e_length; /* A=T1, A=2xT1... (unreliable tr. only)
*/
struct timeval timer_e_start; /* (else = -1) not active
*/
int timer_f_length; /* B = 64* T1
*/
struct timeval timer_f_start; /* fire when transaction timeouts
*/
int timer_k_length; /* K = T4 (else = 0)
*/
struct timeval timer_k_start;
#else
int timer_e_length; /* A=T1, A=2xT1... (unreliable transport only) */ int timer_e_length; /* A=T1, A=2xT1... (unreliable transport only) */
time_t timer_e_start; /* (else = -1) not active */ time_t timer_e_start; /* (else = -1) not active */
int timer_f_length; /* B = 64* T1 */ int timer_f_length; /* B = 64* T1 */
time_t timer_f_start; /* fire when transaction timeouts */ time_t timer_f_start; /* fire when transaction timeouts */
int timer_k_length; /* K = T4 (else = 0) */ int timer_k_length; /* K = T4 (else = 0) */
time_t timer_k_start; time_t timer_k_start;
#endif
char *destination; /* url used to send requests */ char *destination; /* url used to send requests */
int port; /* port of next hop */ int port; /* port of next hop */
}; };
/** /**
* Structure for INVITE SERVER TRANSACTION (incoming INVITE transaction). * Structure for INVITE SERVER TRANSACTION (incoming INVITE transaction).
* @defvar osip_ist_t * @defvar osip_ist_t
*/ */
typedef struct osip_ist osip_ist_t; typedef struct osip_ist osip_ist_t;
struct osip_ist struct osip_ist
{ {
#ifdef NEW_TIMER
int timer_g_length; /* G=MIN(T1*2,T2) for unreliable trans.
*/
struct timeval timer_g_start; /* 0 when reliable transport is used!
*/
int timer_h_length; /* H = 64* T1
*/
struct timeval timer_h_start; /* fire when if no ACK is received
*/
int timer_i_length; /* I = T4 for unreliable transport (or 0
)*/
struct timeval timer_i_start; /* absorb all ACK
*/
#else
int timer_g_length; /* G=MIN(T1*2,T2) for unreliable transport */ int timer_g_length; /* G=MIN(T1*2,T2) for unreliable transport */
time_t timer_g_start; /* else = 0 when reliable transport is used! */ time_t timer_g_start; /* else = 0 when reliable transport is used! */
int timer_h_length; /* H = 64* T1 */ int timer_h_length; /* H = 64* T1 */
time_t timer_h_start; /* fire when if no ACK is received */ time_t timer_h_start; /* fire when if no ACK is received */
int timer_i_length; /* I = T4 for unreliable transport (else = 0) */ int timer_i_length; /* I = T4 for unreliable transport (else = 0) */
time_t timer_i_start; /* absorb all ACK */ time_t timer_i_start; /* absorb all ACK */
#endif
}; };
/** /**
* Structure for NON-INVITE SERVER TRANSACTION (incoming SERVER transaction ). * Structure for NON-INVITE SERVER TRANSACTION (incoming SERVER transaction ).
* @defvar osip_nist_t * @defvar osip_nist_t
*/ */
typedef struct osip_nist osip_nist_t; typedef struct osip_nist osip_nist_t;
struct osip_nist struct osip_nist
{ {
#ifdef NEW_TIMER
int timer_j_length; /* J = 64*T1 (else 0) */
struct timeval timer_j_start;
#else
int timer_j_length; /* J = 64*T1 (else 0) */ int timer_j_length; /* J = 64*T1 (else 0) */
time_t timer_j_start; time_t timer_j_start;
#endif
}; };
/** /**
* Structure for transaction handling. * Structure for transaction handling.
* @defvar osip_transaction_t * @defvar osip_transaction_t
*/ */
typedef struct osip_transaction osip_transaction_t; typedef struct osip_transaction osip_transaction_t;
struct osip_transaction struct osip_transaction
{ {
skipping to change at line 894 skipping to change at line 919
* Consume ALL pending osip_event_t previously added in the fifos of nict t ransactions. * Consume ALL pending osip_event_t previously added in the fifos of nict t ransactions.
* @param osip The element to work on. * @param osip The element to work on.
*/ */
int osip_nict_execute (osip_t * osip); int osip_nict_execute (osip_t * osip);
/** /**
* Consume ALL pending osip_event_t previously added in the fifos of nist t ransactions. * Consume ALL pending osip_event_t previously added in the fifos of nist t ransactions.
* @param osip The element to work on. * @param osip The element to work on.
*/ */
int osip_nist_execute (osip_t * osip); int osip_nist_execute (osip_t * osip);
#ifdef NEW_TIMER
/**
* Retreive the minimum timer value to be used by an application
* so that the osip_timer_*_execute method don't have to be called
* often.
*
* @param osip The element to work on.
* @param lower_tv The minimum timer when the application should wake up.
*/
void osip_timers_gettimeout(osip_t * osip, struct timeval *lower_tv);
#endif
/** /**
* Check if an ict transactions needs a timer event. * Check if an ict transactions needs a timer event.
* @param osip The element to work on. * @param osip The element to work on.
*/ */
void osip_timers_ict_execute (osip_t * osip); void osip_timers_ict_execute (osip_t * osip);
/** /**
* Check if an ist transactions needs a timer event. * Check if an ist transactions needs a timer event.
* @param osip The element to work on. * @param osip The element to work on.
*/ */
void osip_timers_ist_execute (osip_t * osip); void osip_timers_ist_execute (osip_t * osip);
 End of changes. 9 change blocks. 
8 lines changed or deleted 61 lines changed or added


 osip_authorization.h   osip_authorization.h 
skipping to change at line 24 skipping to change at line 24
You should have received a copy of the GNU Lesser General Public You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/ */
#ifndef _OSIP_AUTHORIZATION_H_ #ifndef _OSIP_AUTHORIZATION_H_
#define _OSIP_AUTHORIZATION_H_ #define _OSIP_AUTHORIZATION_H_
/** /**
* @file osip_proxy_authorization.h * @file osip_authorization.h
* @brief oSIP osip_proxy_authorization header definition. * @brief oSIP osip_authorization header definition.
*/ */
/** /**
* @defgroup oSIP_TYPES oSIP type definitions * @defgroup oSIP_TYPES oSIP type definitions
* @ingroup oSIP * @ingroup oSIP
* @{ * @{
*/ */
/** /**
* Structure for Authorization headers. * Structure for Authorization headers.
 End of changes. 1 change blocks. 
2 lines changed or deleted 2 lines changed or added


 osip_dialog.h   osip_dialog.h 
skipping to change at line 26 skipping to change at line 26
License along with this library; if not, write to the Free Software License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/ */
#ifndef _DIALOG_H_ #ifndef _DIALOG_H_
#define _DIALOG_H_ #define _DIALOG_H_
#include <osip2/osip.h> #include <osip2/osip.h>
/** /**
* @file dialog.h * @file osip_dialog.h
* @brief oSIP dialog Routines * @brief oSIP dialog Routines
* *
* Dialog management is a powerful facility given by oSIP. This feature is * Dialog management is a powerful facility given by oSIP. This feature is
* needed by SIP end point who has the capability to answer calls. (i.e. * needed by SIP end point who has the capability to answer calls. (i.e.
* answering 200 OK to an INVITE). * answering 200 OK to an INVITE).
* <BR> * <BR>
* A Dialog is a context for a call establishment in oSIP. It's not useless * A Dialog is a context for a call establishment in oSIP. It's not useless
* to say that ONE invite request can lead to several call establishment. * to say that ONE invite request can lead to several call establishment.
* This can happen if your call has been forked by a proxy and several * This can happen if your call has been forked by a proxy and several
* user agent was contacted and replied at the same time. It is true that * user agent was contacted and replied at the same time. It is true that
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_error_info.h   osip_error_info.h 
skipping to change at line 26 skipping to change at line 26
License along with this library; if not, write to the Free Software License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/ */
#ifndef _OSIP_ERROR_INFO_H_ #ifndef _OSIP_ERROR_INFO_H_
#define _OSIP_ERROR_INFO_H_ #define _OSIP_ERROR_INFO_H_
#include <osipparser2/headers/osip_call_info.h> #include <osipparser2/headers/osip_call_info.h>
/** /**
* @file osip_cseq.h * @file osip_error_info.h
* @brief oSIP osip_cseq header definition. * @brief oSIP error info header definition.
*/ */
/** /**
* @defgroup oSIP_TYPES oSIP type definitions * @defgroup oSIP_TYPES oSIP type definitions
* @ingroup oSIP * @ingroup oSIP
* @{ * @{
*/ */
/** /**
* Structure for Error-Info headers. * Structure for Error-Info headers.
 End of changes. 1 change blocks. 
2 lines changed or deleted 2 lines changed or added


 osip_fifo.h   osip_fifo.h 
skipping to change at line 29 skipping to change at line 29
#ifndef _FIFO_H_ #ifndef _FIFO_H_
#define _FIFO_H_ #define _FIFO_H_
#ifdef OSIP_MT #ifdef OSIP_MT
#include <osip2/osip_mt.h> #include <osip2/osip_mt.h>
#endif #endif
#include <osipparser2/osip_list.h> #include <osipparser2/osip_list.h>
/** /**
* @file fifo.h * @file osip_fifo.h
* @brief oSIP fifo Routines * @brief oSIP fifo Routines
* *
* This is a very simple implementation of a fifo. * This is a very simple implementation of a fifo.
* <BR>There is not much to say about it... * <BR>There is not much to say about it...
*/ */
/** /**
* @defgroup oSIP_FIFO oSIP fifo Handling * @defgroup oSIP_FIFO oSIP fifo Handling
* @ingroup oSIP * @ingroup oSIP
* @{ * @{
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_header.h   osip_header.h 
skipping to change at line 26 skipping to change at line 26
License along with this library; if not, write to the Free Software License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/ */
#ifndef _OSIP_HEADER_H_ #ifndef _OSIP_HEADER_H_
#define _OSIP_HEADER_H_ #define _OSIP_HEADER_H_
#include <osipparser2/osip_uri.h> #include <osipparser2/osip_uri.h>
/** /**
* @file osip_message.h * @file osip_header.h
* @brief oSIP SIP Headers Routines * @brief oSIP SIP Headers Routines
* *
*/ */
/** /**
* @defgroup oSIP_HEADER oSIP header API * @defgroup oSIP_HEADER oSIP header API
* @ingroup oSIP_HEADER * @ingroup oSIP_HEADER
* @{ * @{
*/ */
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_list.h   osip_list.h 
skipping to change at line 28 skipping to change at line 28
*/ */
#ifndef _LIST_H_ #ifndef _LIST_H_
#define _LIST_H_ #define _LIST_H_
#ifdef ENABLE_MPATROL #ifdef ENABLE_MPATROL
#include <mpatrol.h> #include <mpatrol.h>
#endif #endif
/** /**
* @file list.h * @file osip_list.h
* @brief oSIP list Routines * @brief oSIP list Routines
* *
* This is a very simple implementation of a linked list. * This is a very simple implementation of a linked list.
* <BR>There is not much to say about it... Except that it * <BR>There is not much to say about it... Except that it
* could be a lot improved. Sadly, it would be difficult * could be a lot improved. Sadly, it would be difficult
* to improve it without breaking the compatibility with * to improve it without breaking the compatibility with
* older version! * older version!
*/ */
/** /**
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_negotiation.h   osip_negotiation.h 
skipping to change at line 26 skipping to change at line 26
License along with this library; if not, write to the Free Software License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/ */
#ifndef _SDP_NEGOC_H_ #ifndef _SDP_NEGOC_H_
#define _SDP_NEGOC_H_ #define _SDP_NEGOC_H_
#include <osipparser2/sdp_message.h> #include <osipparser2/sdp_message.h>
/** /**
* @file sdp_negoc.h * @file osip_negotiation.h
* @brief oSIP and SDP offer/answer model Routines * @brief oSIP and SDP offer/answer model Routines
* *
* The SDP offer/answer model is where most SIP interoperability issue * The SDP offer/answer model is where most SIP interoperability issue
* comes from. The SDP specification (rfc2327.txt) is often not fully * comes from. The SDP specification (rfc2327.txt) is often not fully
* respected. As an example, most SIP applications forget to add the * respected. As an example, most SIP applications forget to add the
* mandatory 's' field in the SDP packet. Another mistake is to assume * mandatory 's' field in the SDP packet. Another mistake is to assume
* that an SDP packet don't need a 'p' and a 'e' field. Even if they * that an SDP packet don't need a 'p' and a 'e' field. Even if they
* are both optional, at least of those is mandatory! I have never * are both optional, at least of those is mandatory! I have never
* seen ONE implementation that send at least one 'p' or 'e' field!! * seen ONE implementation that send at least one 'p' or 'e' field!!
* <BR>For all the reasons, that make negotiation a hard task, I have * <BR>For all the reasons, that make negotiation a hard task, I have
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 osip_proxy_authenticate.h   osip_proxy_authenticate.h 
skipping to change at line 26 skipping to change at line 26
License along with this library; if not, write to the Free Software License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/ */
#ifndef _OSIP_PROXY_AUHTHENTICATE_H_ #ifndef _OSIP_PROXY_AUHTHENTICATE_H_
#define _OSIP_PROXY_AUHTHENTICATE_H_ #define _OSIP_PROXY_AUHTHENTICATE_H_
#include <osipparser2/headers/osip_www_authenticate.h> #include <osipparser2/headers/osip_www_authenticate.h>
/** /**
* @file osip_proxy_authorization.h * @file osip_proxy_authenticate.h
* @brief oSIP osip_proxy_authorization header definition. * @brief oSIP osip_proxy_authenticate header definition.
*/ */
/** /**
* @defgroup oSIP_TYPES oSIP type definitions * @defgroup oSIP_TYPES oSIP type definitions
* @ingroup oSIP * @ingroup oSIP
* @{ * @{
*/ */
/** /**
* Structure for Proxy-Authenticate headers. * Structure for Proxy-Authenticate headers.
 End of changes. 1 change blocks. 
2 lines changed or deleted 2 lines changed or added


 osip_uri.h   osip_uri.h 
skipping to change at line 27 skipping to change at line 27
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/ */
#ifndef _URLS_H_ #ifndef _URLS_H_
#define _URLS_H_ #define _URLS_H_
#include <osipparser2/osip_const.h> #include <osipparser2/osip_const.h>
#include <osipparser2/osip_list.h> #include <osipparser2/osip_list.h>
/** /**
* @file urls.h * @file osip_uri.h
* @brief oSIP url parser Routines * @brief oSIP url parser Routines
* *
* This is the implementation of sip url scheme. It also partially support * This is the implementation of sip url scheme. It also partially support
* any unrecognised scheme (not starting with 'sip:' or 'sips:'). Unrecogni sed * any unrecognised scheme (not starting with 'sip:' or 'sips:'). Unrecogni sed
* scheme are stored in url->string. * scheme are stored in url->string.
*/ */
/** /**
* @defgroup oSIP_URLS oSIP url parser Handling * @defgroup oSIP_URLS oSIP url parser Handling
* @ingroup oSIP * @ingroup oSIP
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 lines changed or added


 sdp_message.h   sdp_message.h 
skipping to change at line 30 skipping to change at line 30
#ifndef _SDP_H_ #ifndef _SDP_H_
#define _SDP_H_ #define _SDP_H_
#ifdef ENABLE_MPATROL #ifdef ENABLE_MPATROL
#include <mpatrol.h> #include <mpatrol.h>
#endif #endif
#include <osipparser2/osip_list.h> #include <osipparser2/osip_list.h>
/** /**
* @file sdp.h * @file sdp_message.h
* @brief oSIP SDP parser Routines * @brief oSIP SDP parser Routines
* *
* This is the SDP accessor and parser related API. * This is the SDP accessor and parser related API.
*/ */
/** /**
* @defgroup oSIP_SDP oSIP SDP parser Handling * @defgroup oSIP_SDP oSIP SDP parser Handling
* @ingroup oSIP * @ingroup oSIP
* @{ * @{
*/ */
 End of changes. 1 change blocks. 
1 lines changed or deleted 1 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/