WARNING: The online documentation has moved to https://docs.pjsip.org.

Visit the new documentation at https://docs.pjsip.org:

BLOG | DOCUMENTATION | GITHUB

Home --> Documentations --> PJNATH Reference

ice_strans.h File Reference

ICE Stream Transport. More...

Go to the source code of this file.

Data Structures

struct  pj_ice_strans_cb
 
struct  pj_ice_strans_stun_cfg
 
struct  pj_ice_strans_turn_cfg
 
struct  pj_ice_strans_cfg
 

Typedefs

typedef struct pj_ice_strans pj_ice_strans
 

Enumerations

enum  pj_ice_strans_op {
  PJ_ICE_STRANS_OP_INIT ,
  PJ_ICE_STRANS_OP_NEGOTIATION ,
  PJ_ICE_STRANS_OP_KEEP_ALIVE ,
  PJ_ICE_STRANS_OP_ADDR_CHANGE
}
 
enum  pj_ice_strans_state {
  PJ_ICE_STRANS_STATE_NULL ,
  PJ_ICE_STRANS_STATE_INIT ,
  PJ_ICE_STRANS_STATE_READY ,
  PJ_ICE_STRANS_STATE_SESS_READY ,
  PJ_ICE_STRANS_STATE_NEGO ,
  PJ_ICE_STRANS_STATE_RUNNING ,
  PJ_ICE_STRANS_STATE_FAILED
}
 

Functions

void pj_ice_strans_cfg_default (pj_ice_strans_cfg *cfg)
 
void pj_ice_strans_stun_cfg_default (pj_ice_strans_stun_cfg *cfg)
 
void pj_ice_strans_turn_cfg_default (pj_ice_strans_turn_cfg *cfg)
 
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_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)
 
pj_ice_strans_state pj_ice_strans_get_state (pj_ice_strans *ice_st)
 
const char * pj_ice_strans_state_name (pj_ice_strans_state state)
 
pj_status_t pj_ice_strans_destroy (pj_ice_strans *ice_st)
 
void * pj_ice_strans_get_user_data (pj_ice_strans *ice_st)
 
pj_status_t pj_ice_strans_get_options (pj_ice_strans *ice_st, pj_ice_sess_options *opt)
 
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_comp_cnt (pj_ice_strans *ice_st, unsigned comp_cnt)
 
pj_grp_lock_tpj_ice_strans_get_grp_lock (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)
 
pj_bool_t pj_ice_strans_has_sess (pj_ice_strans *ice_st)
 
pj_bool_t pj_ice_strans_sess_is_running (pj_ice_strans *ice_st)
 
pj_bool_t pj_ice_strans_sess_is_complete (pj_ice_strans *ice_st)
 
unsigned pj_ice_strans_get_running_comp_cnt (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_cands_count (pj_ice_strans *ice_st, unsigned comp_id)
 
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_get_def_cand (pj_ice_strans *ice_st, unsigned comp_id, pj_ice_sess_cand *cand)
 
pj_ice_sess_role pj_ice_strans_get_role (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_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_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)
 
const pj_ice_sess_checkpj_ice_strans_get_valid_pair (const pj_ice_strans *ice_st, unsigned comp_id)
 
pj_status_t pj_ice_strans_stop_ice (pj_ice_strans *ice_st)
 
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_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)
 

 


PJNATH - Open Source NAT traversal helper library supporting STUN, TURN, and ICE
Copyright (C) 2006-2009 Teluu Inc.