19#ifndef __PJNATH_TURN_SOCK_H__
20#define __PJNATH_TURN_SOCK_H__
168#ifndef PJ_TURN_TLS_DEFAULT_PROTO
169# define PJ_TURN_TLS_DEFAULT_PROTO (PJ_SSL_SOCK_PROTO_TLS1 | \
170 PJ_SSL_SOCK_PROTO_TLS1_1 | \
171 PJ_SSL_SOCK_PROTO_TLS1_2)
pj_turn_tp_type
Definition: turn_session.h:139
pj_turn_state_t
Definition: turn_session.h:162
pj_status_t pj_turn_sock_disconnect(pj_turn_sock *turn_sock, const pj_sockaddr_t *peer, unsigned addr_len)
void pj_turn_sock_set_log(pj_turn_sock *turn_sock, unsigned flags)
struct pj_turn_sock pj_turn_sock
Definition: turn_sock.h:62
pj_status_t pj_turn_sock_connect(pj_turn_sock *turn_sock, const pj_sockaddr_t *peer, unsigned addr_len)
void pj_turn_sock_tls_cfg_wipe_keys(pj_turn_sock_tls_cfg *tls_cfg)
void pj_turn_sock_tls_cfg_default(pj_turn_sock_tls_cfg *tls_cfg)
pj_status_t pj_turn_sock_create(pj_stun_config *cfg, int af, pj_turn_tp_type conn_type, const pj_turn_sock_cb *cb, const pj_turn_sock_cfg *setting, void *user_data, pj_turn_sock **p_turn_sock)
pj_status_t pj_turn_sock_bind_channel(pj_turn_sock *turn_sock, const pj_sockaddr_t *peer, unsigned addr_len)
void * pj_turn_sock_get_user_data(pj_turn_sock *turn_sock)
void pj_turn_sock_destroy(pj_turn_sock *turn_sock)
pj_status_t pj_turn_sock_set_user_data(pj_turn_sock *turn_sock, void *user_data)
void pj_turn_sock_cfg_default(pj_turn_sock_cfg *cfg)
pj_status_t pj_turn_sock_get_info(pj_turn_sock *turn_sock, pj_turn_session_info *info)
pj_status_t pj_turn_sock_lock(pj_turn_sock *turn_sock)
void pj_turn_sock_tls_cfg_dup(pj_pool_t *pool, pj_turn_sock_tls_cfg *dst, const pj_turn_sock_tls_cfg *src)
pj_status_t pj_turn_sock_alloc(pj_turn_sock *turn_sock, const pj_str_t *domain, int default_port, pj_dns_resolver *resolver, const pj_stun_auth_cred *cred, const pj_turn_alloc_param *param)
pj_status_t pj_turn_sock_set_software_name(pj_turn_sock *turn_sock, const pj_str_t *sw)
pj_status_t pj_turn_sock_set_perm(pj_turn_sock *turn_sock, unsigned addr_cnt, const pj_sockaddr addr[], unsigned options)
pj_status_t pj_turn_sock_unlock(pj_turn_sock *turn_sock)
pj_grp_lock_t * pj_turn_sock_get_grp_lock(pj_turn_sock *turn_sock)
pj_status_t pj_turn_sock_sendto(pj_turn_sock *turn_sock, const pj_uint8_t *pkt, unsigned pkt_len, const pj_sockaddr_t *peer_addr, unsigned addr_len)
unsigned short pj_uint16_t
struct pj_grp_lock_t pj_grp_lock_t
struct pj_dns_resolver pj_dns_resolver
Definition: stun_auth.h:114
Definition: stun_config.h:48
Definition: turn_session.h:389
Definition: turn_session.h:435
Definition: turn_sock.h:69
pj_bool_t(* on_data_sent)(pj_turn_sock *sock, pj_ssize_t sent)
Definition: turn_sock.h:103
void(* on_state)(pj_turn_sock *turn_sock, pj_turn_state_t old_state, pj_turn_state_t new_state)
Definition: turn_sock.h:114
pj_status_t(* on_connection_attempt)(pj_turn_sock *turn_sock, pj_uint32_t conn_id, const pj_sockaddr_t *peer_addr, unsigned addr_len)
Definition: turn_sock.h:140
void(* on_connection_status)(pj_turn_sock *turn_sock, pj_status_t status, pj_uint32_t conn_id, const pj_sockaddr_t *peer_addr, unsigned addr_len)
Definition: turn_sock.h:155
void(* on_rx_data)(pj_turn_sock *turn_sock, void *pkt, unsigned pkt_len, const pj_sockaddr_t *peer_addr, unsigned addr_len)
Definition: turn_sock.h:83
Definition: turn_sock.h:277
pj_bool_t qos_ignore_error
Definition: turn_sock.h:317
unsigned max_pkt_size
Definition: turn_sock.h:291
unsigned so_rcvbuf_size
Definition: turn_sock.h:344
pj_qos_params qos_params
Definition: turn_sock.h:309
pj_turn_sock_tls_cfg tls_cfg
Definition: turn_sock.h:360
pj_uint16_t port_range
Definition: turn_sock.h:334
unsigned so_sndbuf_size
Definition: turn_sock.h:354
pj_qos_type qos_type
Definition: turn_sock.h:300
pj_grp_lock_t * grp_lock
Definition: turn_sock.h:284
pj_sockaddr bound_addr
Definition: turn_sock.h:325
Definition: turn_sock.h:178
pj_ssl_cert_buffer cert_buf
Definition: turn_sock.h:212
pj_ssl_cert_buffer privkey_buf
Definition: turn_sock.h:219
pj_ssl_cert_buffer ca_buf
Definition: turn_sock.h:204
pj_str_t ca_list_file
Definition: turn_sock.h:182
pj_str_t ca_list_path
Definition: turn_sock.h:187
pj_str_t password
Definition: turn_sock.h:224
pj_ssl_sock_param ssock_param
Definition: turn_sock.h:241
pj_str_t privkey_file
Definition: turn_sock.h:198
pj_str_t cert_file
Definition: turn_sock.h:193
Transport independent TURN client session.