libosip  5.3.0
xixt.h
1 /*
2  The oSIP library implements the Session Initiation Protocol (SIP -rfc2543-)
3  Copyright (C) 2001-2020 Aymeric MOIZARD amoizard@antisip.com
4 
5  This library is free software; you can redistribute it and/or
6  modify it under the terms of the GNU Lesser General Public
7  License as published by the Free Software Foundation; either
8  version 2.1 of the License, or (at your option) any later version.
9 
10  This library is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13  Lesser General Public License for more details.
14 
15  You should have received a copy of the GNU Lesser General Public
16  License along with this library; if not, write to the Free Software
17  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 */
19 
20 #ifndef _XIXT_H_
21 #define _XIXT_H_
22 
23 #include <osipparser2/osip_const.h>
24 #include <osipparser2/osip_port.h>
25 
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29 
30 void __osip_message_callback(int type, osip_transaction_t *, osip_message_t *);
31 void __osip_kill_transaction_callback(int type, osip_transaction_t *);
32 void __osip_transport_error_callback(int type, osip_transaction_t *, int error);
33 
41 int __osip_ict_init(osip_ict_t **ict, osip_t *osip, osip_message_t *invite);
47 int __osip_ict_free(osip_ict_t *ict);
48 
56 osip_event_t *__osip_ict_need_timer_a_event(osip_ict_t *ict, state_t state, int transactionid);
64 osip_event_t *__osip_ict_need_timer_b_event(osip_ict_t *ict, state_t state, int transactionid);
72 osip_event_t *__osip_ict_need_timer_d_event(osip_ict_t *ict, state_t state, int transactionid);
73 
81 int __osip_nict_init(osip_nict_t **nict, osip_t *osip, osip_message_t *request);
87 int __osip_nict_free(osip_nict_t *nict);
88 
96 osip_event_t *__osip_nict_need_timer_e_event(osip_nict_t *nict, state_t state, int transactionid);
104 osip_event_t *__osip_nict_need_timer_f_event(osip_nict_t *nict, state_t state, int transactionid);
112 osip_event_t *__osip_nict_need_timer_k_event(osip_nict_t *nict, state_t state, int transactionid);
113 
121 int __osip_ist_init(osip_ist_t **ist, osip_t *osip, osip_message_t *invite);
127 int __osip_ist_free(osip_ist_t *ist);
128 
136 osip_event_t *__osip_ist_need_timer_g_event(osip_ist_t *ist, state_t state, int transactionid);
144 osip_event_t *__osip_ist_need_timer_h_event(osip_ist_t *ist, state_t state, int transactionid);
152 osip_event_t *__osip_ist_need_timer_i_event(osip_ist_t *ist, state_t state, int transactionid);
153 
161 int __osip_nist_init(osip_nist_t **nist, osip_t *osip, osip_message_t *request);
162 
168 int __osip_nist_free(osip_nist_t *nist);
169 
176 osip_event_t *__osip_nist_need_timer_j_event(osip_nist_t *nist, state_t state, int transactionid);
177 
184 int __osip_transaction_matching_response_osip_to_xict_17_1_3(osip_transaction_t *tr, osip_message_t *resp);
185 
192 int __osip_transaction_matching_request_osip_to_xist_17_2_3(osip_transaction_t *tr, osip_message_t *request);
193 
199 int osip_ict_lock(osip_t *osip);
205 int osip_ict_unlock(osip_t *osip);
211 int osip_ist_lock(osip_t *osip);
217 int osip_ist_unlock(osip_t *osip);
223 int osip_nict_lock(osip_t *osip);
229 int osip_nict_unlock(osip_t *osip);
235 int osip_nist_lock(osip_t *osip);
241 int osip_nist_unlock(osip_t *osip);
242 
249 int __osip_add_ict(osip_t *osip, osip_transaction_t *ict);
256 int __osip_add_ist(osip_t *osip, osip_transaction_t *ist);
263 int __osip_add_nict(osip_t *osip, osip_transaction_t *nict);
270 int __osip_add_nist(osip_t *osip, osip_transaction_t *nist);
271 
277 int __osip_remove_ict_transaction(osip_t *osip, osip_transaction_t *ict);
283 int __osip_remove_ist_transaction(osip_t *osip, osip_transaction_t *ist);
289 int __osip_remove_nict_transaction(osip_t *osip, osip_transaction_t *nict);
295 int __osip_remove_nist_transaction(osip_t *osip, osip_transaction_t *nist);
296 
303 osip_event_t *__osip_event_new(type_t type, int transactionid);
304 
310 
311 #ifdef __cplusplus
312 }
313 #endif
314 #endif
osip_event_t * osip_new_outgoing_sipmessage(osip_message_t *sip)
Definition: osip_event.c:90
enum _state_t state_t
type_t
Definition: osip.h:109
Definition: osip.h:627
Definition: osip.h:207
Definition: osip.h:249
Definition: osip_message.h:54
Definition: osip.h:228
Definition: osip.h:268
Definition: osip.h:364
Definition: osip.h:558