Home --> Documentations --> PJNATH Reference

Data Fields

char obj_name [PJ_MAX_OBJ_NAME]
void * user_data
pj_ice_sess_role role
pj_ice_sess_options opt
pj_timestamp tie_breaker
pj_bool_t is_nominating
pj_bool_t is_complete
pj_bool_t is_destroying
pj_status_t ice_status
pj_timer_entry timer
pj_ice_sess_cb cb
pj_stun_config stun_cfg
pj_str_t tx_ufrag
pj_str_t tx_uname
pj_str_t tx_pass
pj_str_t rx_ufrag
pj_str_t rx_uname
pj_str_t rx_pass
unsigned comp_cnt
pj_ice_sess_comp comp [PJ_ICE_MAX_COMP]
unsigned comp_ka
unsigned lcand_cnt
pj_ice_sess_cand lcand [PJ_ICE_MAX_CAND]
unsigned rcand_cnt
pj_ice_sess_cand rcand [PJ_ICE_MAX_CAND]
pj_ice_msg_data tp_data [PJ_ICE_MAX_STUN+PJ_ICE_MAX_TURN]
pj_ice_rx_check early_check
pj_ice_sess_checklist clist
pj_ice_sess_checklist valid_list
union {
   char   txt [128]
   char   errmsg [PJ_ERR_MSG_SIZE]

Detailed Description

This structure describes the ICE session. For this version of PJNATH, an ICE session corresponds to a single media stream (unlike the ICE session described in the ICE standard where an ICE session covers the whole media and may consist of multiple media streams). The decision to support only a single media session was chosen for simplicity, while still allowing application to utilize multiple media streams by creating multiple ICE sessions, one for each media stream.

Forward declaration for pj_ice_sess

Field Documentation

pj_ice_sess_cb pj_ice_sess::cb


pj_ice_sess_checklist pj_ice_sess::clist

Active checklist

pj_ice_sess_comp pj_ice_sess::comp[PJ_ICE_MAX_COMP]

Component array

unsigned pj_ice_sess::comp_cnt

of components.

unsigned pj_ice_sess::comp_ka

Next comp for KA

pj_ice_rx_check pj_ice_sess::early_check

Early checks.

pj_grp_lock_t* pj_ice_sess::grp_lock

Group lock

pj_status_t pj_ice_sess::ice_status

Error status.

pj_bool_t pj_ice_sess::is_complete


pj_bool_t pj_ice_sess::is_destroying

Destroy is called

pj_bool_t pj_ice_sess::is_nominating

Nominating stage

pj_ice_sess_cand pj_ice_sess::lcand[PJ_ICE_MAX_CAND]

Array of cand.

unsigned pj_ice_sess::lcand_cnt

of local cand.

char pj_ice_sess::obj_name[PJ_MAX_OBJ_NAME]

Object name.

pj_ice_sess_options pj_ice_sess::opt


pj_pool_t* pj_ice_sess::pool

Pool instance.

pj_uint8_t* pj_ice_sess::prefs

Type preference.

pj_ice_sess_cand pj_ice_sess::rcand[PJ_ICE_MAX_CAND]

Array of cand.

unsigned pj_ice_sess::rcand_cnt

of remote cand.

pj_ice_sess_role pj_ice_sess::role

ICE role.

pj_str_t pj_ice_sess::rx_pass

Local password.

pj_str_t pj_ice_sess::rx_ufrag

Local ufrag.

pj_str_t pj_ice_sess::rx_uname

Uname for RX

pj_stun_config pj_ice_sess::stun_cfg

STUN settings.

pj_timestamp pj_ice_sess::tie_breaker

Tie breaker value

pj_timer_entry pj_ice_sess::timer

ICE timer.

union { ... } pj_ice_sess::tmp

Temporary buffer for misc stuffs to avoid using stack too much

Array of transport datas

pj_str_t pj_ice_sess::tx_pass

Remote password.

pj_str_t pj_ice_sess::tx_ufrag

Remote ufrag.

pj_str_t pj_ice_sess::tx_uname

Uname for TX.

void* pj_ice_sess::user_data

App. data.

pj_ice_sess_checklist pj_ice_sess::valid_list

Valid list.

The documentation for this struct was generated from the following file:


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