19#ifndef __PJNATH_ICE_STRANS_H__
20#define __PJNATH_ICE_STRANS_H__
119#ifndef DEPRECATED_FOR_TICKET_2229
120# define DEPRECATED_FOR_TICKET_2229 0
168 unsigned src_addr_len);
1017#if !DEPRECATED_FOR_TICKET_2229
#define PJ_ICE_MAX_TURN
Definition: config.h:272
#define PJ_ICE_MAX_STUN
Definition: config.h:261
#define PJ_ICE_MAX_COMP
Definition: config.h:288
pj_ice_sess_role
Definition: ice_session.h:553
void pj_ice_strans_cfg_copy(pj_pool_t *pool, pj_ice_strans_cfg *dst, const pj_ice_strans_cfg *src)
pj_status_t pj_ice_strans_set_options(pj_ice_strans *ice_st, const pj_ice_sess_options *opt)
pj_status_t pj_ice_strans_update_check_list(pj_ice_strans *ice_st, const pj_str_t *rem_ufrag, const pj_str_t *rem_passwd, unsigned rcand_cnt, const pj_ice_sess_cand rcand[], pj_bool_t rcand_end)
pj_bool_t pj_ice_strans_sess_is_complete(pj_ice_strans *ice_st)
pj_status_t pj_ice_strans_destroy(pj_ice_strans *ice_st)
pj_bool_t pj_ice_strans_sess_is_running(pj_ice_strans *ice_st)
pj_status_t pj_ice_strans_change_role(pj_ice_strans *ice_st, pj_ice_sess_role new_role)
pj_grp_lock_t * pj_ice_strans_get_grp_lock(pj_ice_strans *ice_st)
pj_status_t pj_ice_strans_sendto2(pj_ice_strans *ice_st, unsigned comp_id, const void *data, pj_size_t data_len, const pj_sockaddr_t *dst_addr, int dst_addr_len)
void pj_ice_strans_turn_cfg_default(pj_ice_strans_turn_cfg *cfg)
pj_ice_sess_role pj_ice_strans_get_role(pj_ice_strans *ice_st)
pj_status_t pj_ice_strans_start_ice(pj_ice_strans *ice_st, const pj_str_t *rem_ufrag, const pj_str_t *rem_passwd, unsigned rcand_cnt, const pj_ice_sess_cand rcand[])
pj_bool_t pj_ice_strans_has_sess(pj_ice_strans *ice_st)
pj_status_t pj_ice_strans_enum_cands(pj_ice_strans *ice_st, unsigned comp_id, unsigned *count, pj_ice_sess_cand cand[])
pj_status_t pj_ice_strans_sendto(pj_ice_strans *ice_st, unsigned comp_id, const void *data, pj_size_t data_len, const pj_sockaddr_t *dst_addr, int dst_addr_len)
pj_ice_strans_state pj_ice_strans_get_state(pj_ice_strans *ice_st)
pj_status_t pj_ice_strans_get_ufrag_pwd(pj_ice_strans *ice_st, pj_str_t *loc_ufrag, pj_str_t *loc_pwd, pj_str_t *rem_ufrag, pj_str_t *rem_pwd)
unsigned pj_ice_strans_get_running_comp_cnt(pj_ice_strans *ice_st)
pj_ice_strans_op
Definition: ice_strans.h:128
unsigned pj_ice_strans_get_cands_count(pj_ice_strans *ice_st, unsigned comp_id)
const pj_ice_sess_check * pj_ice_strans_get_valid_pair(const pj_ice_strans *ice_st, unsigned comp_id)
void pj_ice_strans_stun_cfg_default(pj_ice_strans_stun_cfg *cfg)
pj_ice_strans_state
Definition: ice_strans.h:555
void pj_ice_strans_cfg_default(pj_ice_strans_cfg *cfg)
struct pj_ice_strans pj_ice_strans
Definition: ice_strans.h:124
pj_status_t pj_ice_strans_stop_ice(pj_ice_strans *ice_st)
pj_status_t pj_ice_strans_init_ice(pj_ice_strans *ice_st, pj_ice_sess_role role, const pj_str_t *local_ufrag, const pj_str_t *local_passwd)
void * pj_ice_strans_get_user_data(pj_ice_strans *ice_st)
pj_status_t pj_ice_strans_create(const char *name, const pj_ice_strans_cfg *cfg, unsigned comp_cnt, void *user_data, const pj_ice_strans_cb *cb, pj_ice_strans **p_ice_st)
const char * pj_ice_strans_state_name(pj_ice_strans_state state)
pj_status_t pj_ice_strans_get_options(pj_ice_strans *ice_st, pj_ice_sess_options *opt)
pj_status_t pj_ice_strans_get_def_cand(pj_ice_strans *ice_st, unsigned comp_id, pj_ice_sess_cand *cand)
pj_status_t pj_ice_strans_update_comp_cnt(pj_ice_strans *ice_st, unsigned comp_cnt)
@ PJ_ICE_STRANS_OP_INIT
Definition: ice_strans.h:130
@ PJ_ICE_STRANS_OP_NEGOTIATION
Definition: ice_strans.h:133
@ PJ_ICE_STRANS_OP_KEEP_ALIVE
Definition: ice_strans.h:138
@ PJ_ICE_STRANS_OP_ADDR_CHANGE
Definition: ice_strans.h:142
@ PJ_ICE_STRANS_STATE_FAILED
Definition: ice_strans.h:591
@ PJ_ICE_STRANS_STATE_RUNNING
Definition: ice_strans.h:586
@ PJ_ICE_STRANS_STATE_INIT
Definition: ice_strans.h:564
@ PJ_ICE_STRANS_STATE_SESS_READY
Definition: ice_strans.h:575
@ PJ_ICE_STRANS_STATE_READY
Definition: ice_strans.h:570
@ PJ_ICE_STRANS_STATE_NEGO
Definition: ice_strans.h:580
@ PJ_ICE_STRANS_STATE_NULL
Definition: ice_strans.h:559
pj_turn_tp_type
Definition: turn_session.h:139
unsigned short pj_uint16_t
struct pj_grp_lock_t pj_grp_lock_t
struct pj_dns_resolver pj_dns_resolver
Definition: ice_session.h:242
Definition: ice_session.h:374
Definition: ice_session.h:637
Definition: ice_strans.h:151
void(* on_data_sent)(pj_ice_strans *sock, pj_ssize_t sent)
Definition: ice_strans.h:180
void(* on_valid_pair)(pj_ice_strans *ice_st)
Definition: ice_strans.h:189
void(* on_rx_data)(pj_ice_strans *ice_st, unsigned comp_id, void *pkt, pj_size_t size, const pj_sockaddr_t *src_addr, unsigned src_addr_len)
Definition: ice_strans.h:164
void(* on_new_candidate)(pj_ice_strans *ice_st, const pj_ice_sess_cand *cand, pj_bool_t end_of_cand)
Definition: ice_strans.h:217
void(* on_ice_complete)(pj_ice_strans *ice_st, pj_ice_strans_op op, pj_status_t status)
Definition: ice_strans.h:198
Definition: ice_strans.h:386
pj_ice_strans_turn_cfg turn_tp[PJ_ICE_MAX_TURN]
Definition: ice_strans.h:464
pj_ice_strans_stun_cfg stun
Definition: ice_strans.h:430
unsigned num_send_buf
Definition: ice_strans.h:477
pj_dns_resolver * resolver
Definition: ice_strans.h:413
pj_qos_type qos_type
Definition: ice_strans.h:501
pj_qos_params qos_params
Definition: ice_strans.h:510
unsigned turn_tp_cnt
Definition: ice_strans.h:459
unsigned so_sndbuf_size
Definition: ice_strans.h:544
pj_ice_sess_options opt
Definition: ice_strans.h:420
unsigned stun_tp_cnt
Definition: ice_strans.h:437
pj_ice_strans_turn_cfg turn
Definition: ice_strans.h:452
int af
Definition: ice_strans.h:395
unsigned so_rcvbuf_size
Definition: ice_strans.h:527
unsigned send_buf_size
Definition: ice_strans.h:484
pj_stun_config stun_cfg
Definition: ice_strans.h:405
pj_ice_strans_stun_cfg stun_tp[PJ_ICE_MAX_STUN]
Definition: ice_strans.h:443
struct pj_ice_strans_cfg::@1 comp[PJ_ICE_MAX_COMP]
Definition: ice_strans.h:228
pj_bool_t ignore_stun_error
Definition: ice_strans.h:301
unsigned max_host_cands
Definition: ice_strans.h:248
pj_uint16_t port
Definition: ice_strans.h:293
pj_stun_sock_cfg cfg
Definition: ice_strans.h:240
pj_bool_t loop_addr
Definition: ice_strans.h:255
pj_str_t server
Definition: ice_strans.h:281
int af
Definition: ice_strans.h:234
Definition: ice_strans.h:310
pj_turn_tp_type conn_type
Definition: ice_strans.h:361
int af
Definition: ice_strans.h:316
pj_turn_sock_cfg cfg
Definition: ice_strans.h:323
pj_turn_alloc_param alloc_param
Definition: ice_strans.h:375
pj_uint16_t port
Definition: ice_strans.h:354
pj_str_t server
Definition: ice_strans.h:342
pj_stun_auth_cred auth_cred
Definition: ice_strans.h:369
Definition: stun_auth.h:114
Definition: stun_config.h:48
Definition: stun_sock.h:219
Definition: turn_session.h:389
Definition: turn_sock.h:277
STUN aware socket transport.
TURN relay using UDP client as transport protocol.