Asterisk - The Open Source Telephony Project GIT-master-7e7a603
Data Structures | Data Fields
chan_iax2_pvt Struct Reference
Collaboration diagram for chan_iax2_pvt:
Collaboration graph
[legend]

Data Structures

struct  signaling_queue
 

Data Fields

struct ast_string_field_mgr __field_mgr
 
struct ast_string_field_pool__field_mgr_pool
 
const ast_string_field accountcode
 
struct ast_sockaddr addr
 
int adsi
 
int amaflags
 
const ast_string_field ani
 
unsigned char aseqno
 
int authfail
 
int authid
 
int authmethods
 
int authrej
 
int autoid
 
unsigned short bridgecallno
 
ast_callid callid
 
int calling_ani2
 
int calling_pres
 
int calling_tns
 
int calling_ton
 
unsigned short callno
 
callno_entry callno_entry
 
unsigned char calltoken_ie_len
 
iax2_format capability
 
const ast_string_field challenge
 
iax2_format chosenformat
 
const ast_string_field cid_name
 
const ast_string_field cid_num
 
const ast_string_field context
 
ast_aes_decrypt_key dcx
 
int destroy_initiated
 
const ast_string_field dnid
 
struct {
   struct iax2_dpcache *   first
 
   struct iax2_dpcache *   last
 
dpentries
 
const ast_string_field dproot
 
ast_aes_encrypt_key ecx
 
int eff_auth_method
 
int encmethods
 
int error
 
int expiry
 
const ast_string_field exten
 
int first_iax_message
 
uint64_t flags
 
int frames_dropped
 
int frames_received
 
char hold_signaling
 
const ast_string_field host
 
struct ast_variableiaxvars
 
int initid
 
const ast_string_field inkeys
 
unsigned char iseqno
 
jitterbufjb
 
int jbid
 
int keyrotateid
 
int lag
 
int lagid
 
const ast_string_field language
 
unsigned int last
 
int last_iax_message
 
unsigned int lastsent
 
unsigned int lastvsent
 
int maxtime
 
int min
 
const ast_string_field mohinterpret
 
const ast_string_field mohsuggest
 
ast_aes_decrypt_key mydcx
 
unsigned int nextpred
 
unsigned int notsilenttx:1
 
struct timeval offset
 
unsigned char oseqno
 
const ast_string_field osptoken
 
const ast_string_field outkey
 
struct ast_channelowner
 
const ast_string_field parkinglot
 
const ast_string_field peer
 
int peeradsicpe
 
unsigned short peercallno
 
iax2_format peercapability
 
iax2_format peerformat
 
struct iax2_peerpeerpoke
 
int pingid
 
unsigned int pingtime
 
struct iax2_codec_pref prefs
 
const ast_string_field rdnis
 
struct iax2_registryreg
 
struct iax_rr remote_rr
 
struct iax2_codec_pref rprefs
 
unsigned char rseqno
 
struct timeval rxcore
 
const ast_string_field secret
 
unsigned char semirand [32]
 
struct chan_iax2_pvt::signaling_queue signaling_queue
 
int sockfd
 
struct ast_flags state
 
iax2_format svideoformat
 
iax2_format svoiceformat
 
ast_aes_encrypt_key tdcx
 
struct ast_sockaddr transfer
 
unsigned short transfercallno
 
int transferid
 
enum iax_transfer_state transferring
 
const ast_string_field username
 
struct ast_variablevars
 
iax2_format videoformat
 
iax2_format voiceformat
 

Detailed Description

Definition at line 742 of file chan_iax2.c.

Field Documentation

◆ __field_mgr

struct ast_string_field_mgr __field_mgr

Definition at line 861 of file chan_iax2.c.

◆ __field_mgr_pool

struct ast_string_field_pool* __field_mgr_pool

Peer name

Default Context

Caller ID if available

Hidden Caller ID (i.e. ANI) if appropriate

DNID

RDNIS

Requested Extension

Expected Username

Expected Secret

MD5 challenge

Public keys permitted keys for incoming authentication

Private key for outgoing authentication

Preferred language

Hostname/peername for naming purposes

received OSP token

Default parkinglot

Definition at line 861 of file chan_iax2.c.

◆ accountcode

const ast_string_field accountcode

Definition at line 861 of file chan_iax2.c.

Referenced by ast_iax2_new().

◆ addr

struct ast_sockaddr addr

◆ adsi

int adsi

Definition at line 887 of file chan_iax2.c.

Referenced by ast_iax2_new(), check_access(), and iax2_call().

◆ amaflags

int amaflags

Definition at line 916 of file chan_iax2.c.

Referenced by __find_callno(), ast_iax2_new(), and check_access().

◆ ani

const ast_string_field ani

Definition at line 861 of file chan_iax2.c.

Referenced by ast_iax2_new().

◆ aseqno

unsigned char aseqno

Last incoming sequence number we have acknowledged

Definition at line 820 of file chan_iax2.c.

Referenced by complete_transfer(), iax2_send(), resend_with_token(), and socket_process_helper().

◆ authfail

int authfail

Reason to report failure

Definition at line 910 of file chan_iax2.c.

Referenced by auth_fail().

◆ authid

int authid

Authentication rejection ID

Definition at line 909 of file chan_iax2.c.

Referenced by auth_fail(), auth_reject(), and iax2_destroy_helper().

◆ authmethods

int authmethods

permitted authentication methods

Definition at line 865 of file chan_iax2.c.

Referenced by authenticate_request(), authenticate_verify(), check_access(), registry_authrequest(), and socket_process_helper().

◆ authrej

int authrej

AUTHREJ all AUTHREP frames

Definition at line 863 of file chan_iax2.c.

Referenced by authenticate_verify(), and check_access().

◆ autoid

int autoid

Auto hangup for Dialplan requestor

Definition at line 908 of file chan_iax2.c.

Referenced by auto_hangup(), iax2_destroy_helper(), iax2_dprequest(), and iax2_provision().

◆ bridgecallno

unsigned short bridgecallno

Callno of native bridge peer. (Valid if nonzero)

Definition at line 904 of file chan_iax2.c.

Referenced by socket_process_helper().

◆ callid

ast_callid callid

ast_callid bound to dialog

Definition at line 746 of file chan_iax2.c.

Referenced by iax_pvt_callid_get(), iax_pvt_callid_new(), and iax_pvt_callid_set().

◆ calling_ani2

int calling_ani2

Definition at line 915 of file chan_iax2.c.

Referenced by ast_iax2_new(), and check_access().

◆ calling_pres

int calling_pres

Definition at line 914 of file chan_iax2.c.

Referenced by ast_iax2_new(), check_access(), and socket_process_helper().

◆ calling_tns

int calling_tns

Definition at line 913 of file chan_iax2.c.

Referenced by ast_iax2_new(), and check_access().

◆ calling_ton

int calling_ton

Definition at line 912 of file chan_iax2.c.

Referenced by ast_iax2_new(), and check_access().

◆ callno

unsigned short callno

◆ callno_entry

Our callno_entry entry

Definition at line 784 of file chan_iax2.c.

Referenced by __find_callno(), make_trunk(), and pvt_destructor().

◆ calltoken_ie_len

unsigned char calltoken_ie_len

num bytes used for calltoken ie, even an empty ie should contain 2

Definition at line 933 of file chan_iax2.c.

Referenced by add_empty_calltoken_ie(), and resend_with_token().

◆ capability

iax2_format capability

What we are capable of sending

Definition at line 756 of file chan_iax2.c.

Referenced by ast_iax2_new(), cache_get_callno_locked(), check_access(), and socket_process_helper().

◆ challenge

const ast_string_field challenge

Definition at line 861 of file chan_iax2.c.

Referenced by authenticate_reply(), authenticate_request(), and authenticate_verify().

◆ chosenformat

iax2_format chosenformat

Negotiated format, this is only used to remember what format was chosen for an unauthenticated call so that the channel can get created later using the right format

Definition at line 790 of file chan_iax2.c.

Referenced by socket_process_helper().

◆ cid_name

const ast_string_field cid_name

Definition at line 861 of file chan_iax2.c.

Referenced by ast_iax2_new().

◆ cid_num

const ast_string_field cid_num

Definition at line 861 of file chan_iax2.c.

Referenced by ast_iax2_new(), and socket_process_helper().

◆ context

const ast_string_field context

Definition at line 861 of file chan_iax2.c.

Referenced by ast_iax2_new(), check_access(), and socket_process_helper().

◆ dcx

Decryption AES-128 Key used to decrypt peer frames

Definition at line 875 of file chan_iax2.c.

Referenced by authenticate_reply(), build_encryption_keys(), and socket_process_helper().

◆ destroy_initiated

int destroy_initiated

Destroying this call initiated.

Definition at line 931 of file chan_iax2.c.

Referenced by iax2_destroy_helper().

◆ dnid

const ast_string_field dnid

Definition at line 861 of file chan_iax2.c.

Referenced by ast_iax2_new().

◆ 

struct { ... } dpentries

Referenced by socket_process_helper().

◆ dproot

const ast_string_field dproot

Definition at line 861 of file chan_iax2.c.

◆ ecx

Encryption AES-128 Key

Definition at line 871 of file chan_iax2.c.

Referenced by authenticate_reply(), build_ecx_key(), and iax2_send().

◆ eff_auth_method

int eff_auth_method

effective authentication method

Definition at line 867 of file chan_iax2.c.

Referenced by authenticate(), authenticate_verify(), and socket_process_helper().

◆ encmethods

int encmethods

◆ error

int error

Error, as discovered by the manager

Definition at line 806 of file chan_iax2.c.

Referenced by __attempt_transmit(), and socket_process_helper().

◆ expiry

int expiry

Expiry (optional)

Definition at line 812 of file chan_iax2.c.

Referenced by __find_callno(), register_verify(), and Registration::write().

◆ exten

const ast_string_field exten

Definition at line 861 of file chan_iax2.c.

Referenced by ast_iax2_new(), new_iax(), and socket_process_helper().

◆ first

struct iax2_dpcache* first

Definition at line 917 of file chan_iax2.c.

◆ first_iax_message

int first_iax_message

iax frame subclass that began iax2_pvt entry. 0x8000 bit is set on TX

Definition at line 766 of file chan_iax2.c.

Referenced by ast_cli_netstats(), iax2_send(), and socket_process_helper().

◆ flags

uint64_t flags

IAX_ flags

Definition at line 886 of file chan_iax2.c.

◆ frames_dropped

int frames_dropped

Dropped frame count: (just for stats)

Definition at line 927 of file chan_iax2.c.

◆ frames_received

int frames_received

received frame count: (just for stats)

Definition at line 929 of file chan_iax2.c.

Referenced by pvt_cmp_cb(), socket_process_helper(), and transfercallno_pvt_cmp_cb().

◆ hold_signaling

char hold_signaling

hold all signaling frames from the pbx thread until we have a destination callno

Definition at line 935 of file chan_iax2.c.

Referenced by queue_signalling(), send_signaling(), and socket_process_helper().

◆ host

const ast_string_field host

Definition at line 861 of file chan_iax2.c.

Referenced by __find_callno(), ast_iax2_new(), new_iax(), and Registration::write().

◆ iaxvars

struct ast_variable* iaxvars

variables transmitted in a NEW packet

Definition at line 921 of file chan_iax2.c.

Referenced by ast_iax2_new(), and socket_process_helper().

◆ initid

int initid

Initial peer auto-congest ID (based on qualified peers)

Definition at line 911 of file chan_iax2.c.

Referenced by __auto_congest(), iax2_call(), iax2_destroy_helper(), and socket_process_helper().

◆ inkeys

const ast_string_field inkeys

Definition at line 861 of file chan_iax2.c.

Referenced by authenticate_verify(), and socket_process_helper().

◆ iseqno

unsigned char iseqno

Next incoming sequence number

Definition at line 818 of file chan_iax2.c.

Referenced by complete_transfer(), iax2_send(), resend_with_token(), socket_process_helper(), and update_packet().

◆ jb

jitterbuf* jb

The jitterbuffer

Definition at line 800 of file chan_iax2.c.

Referenced by __get_from_jb(), complete_transfer(), construct_rr(), pvt_destructor(), schedule_delivery(), and update_jbsched().

◆ jbid

int jbid

active jb read scheduler id

Definition at line 802 of file chan_iax2.c.

Referenced by __get_from_jb(), iax2_destroy_helper(), and update_jbsched().

◆ keyrotateid

int keyrotateid

scheduler id associated with iax_key_rotate for encrypted calls

Definition at line 878 of file chan_iax2.c.

Referenced by iax2_destroy_helper(), iax2_key_rotate(), iax2_send(), and merge_encryption().

◆ lag

int lag

LAG

Definition at line 804 of file chan_iax2.c.

Referenced by complete_transfer(), and socket_process_helper().

◆ lagid

int lagid

Retransmit lag request

Definition at line 907 of file chan_iax2.c.

Referenced by __find_callno(), __send_lagrq(), iax2_destroy_helper(), and make_trunk().

◆ language

const ast_string_field language

Definition at line 861 of file chan_iax2.c.

Referenced by ast_iax2_new().

◆ last [1/2]

unsigned int last

Last received timestamp

Definition at line 758 of file chan_iax2.c.

Referenced by complete_transfer(), socket_process_helper(), socket_process_meta(), and unwrap_timestamp().

◆ last [2/2]

struct iax2_dpcache* last

Definition at line 917 of file chan_iax2.c.

◆ last_iax_message

int last_iax_message

Last iax frame subclass sent or received for a iax2_pvt. 0x8000 bit is set on TX

Definition at line 768 of file chan_iax2.c.

Referenced by ast_cli_netstats(), iax2_send(), and socket_process_helper().

◆ lastsent

unsigned int lastsent

Last sent timestamp - never send the same timestamp twice in a single call

Definition at line 760 of file chan_iax2.c.

Referenced by calc_timestamp(), complete_transfer(), and iax2_send().

◆ lastvsent

unsigned int lastvsent

Timestamp of the last video frame sent

Definition at line 762 of file chan_iax2.c.

Referenced by iax2_send().

◆ maxtime

int maxtime

Max time for initial response

Definition at line 774 of file chan_iax2.c.

Referenced by iax2_call(), and iax2_request().

◆ min

int min

Current base time: (just for stats)

Definition at line 925 of file chan_iax2.c.

◆ mohinterpret

const ast_string_field mohinterpret

Definition at line 861 of file chan_iax2.c.

Referenced by iax2_indicate().

◆ mohsuggest

const ast_string_field mohsuggest

Definition at line 861 of file chan_iax2.c.

Referenced by socket_process_helper().

◆ mydcx

Decryption AES-128 Key corresponding to ecx

Definition at line 873 of file chan_iax2.c.

Referenced by build_ecx_key(), and iax2_send().

◆ nextpred

unsigned int nextpred

Next outgoing timestamp if everything is good

Definition at line 764 of file chan_iax2.c.

Referenced by calc_timestamp(), and complete_transfer().

◆ notsilenttx

unsigned int notsilenttx

True if the last voice we transmitted was not silence/CNG

Definition at line 770 of file chan_iax2.c.

Referenced by calc_timestamp().

◆ offset

struct timeval offset

timeval that we base our transmission on

Definition at line 796 of file chan_iax2.c.

Referenced by calc_timestamp(), and complete_transfer().

◆ oseqno

unsigned char oseqno

Next outgoing sequence number

Definition at line 814 of file chan_iax2.c.

Referenced by complete_transfer(), iax2_send(), resend_with_token(), and socket_process_helper().

◆ osptoken

const ast_string_field osptoken

Definition at line 861 of file chan_iax2.c.

Referenced by acf_channel_read().

◆ outkey

const ast_string_field outkey

Definition at line 861 of file chan_iax2.c.

Referenced by socket_process_helper().

◆ owner

struct ast_channel* owner

◆ parkinglot

const ast_string_field parkinglot

Definition at line 861 of file chan_iax2.c.

Referenced by __find_callno(), and ast_iax2_new().

◆ peer

const ast_string_field peer

Definition at line 861 of file chan_iax2.c.

Referenced by ast_iax2_new(), authenticate_reply(), and Registration::write().

◆ peeradsicpe

int peeradsicpe

Status of knowledge of peer ADSI capability

Definition at line 901 of file chan_iax2.c.

Referenced by ast_iax2_new(), and check_access().

◆ peercallno

unsigned short peercallno

◆ peercapability

iax2_format peercapability

Peer capability

Definition at line 794 of file chan_iax2.c.

Referenced by check_access(), and socket_process_helper().

◆ peerformat

iax2_format peerformat

Peer selected format

Definition at line 792 of file chan_iax2.c.

Referenced by __get_from_jb(), check_access(), and socket_process_helper().

◆ peerpoke

struct iax2_peer* peerpoke

Associated peer for poking

Definition at line 884 of file chan_iax2.c.

Referenced by iax2_poke_peer(), and socket_process_helper().

◆ pingid

int pingid

Transmit PING request

Definition at line 906 of file chan_iax2.c.

Referenced by __find_callno(), __send_ping(), iax2_destroy_helper(), and make_trunk().

◆ pingtime

unsigned int pingtime

◆ prefs

struct iax2_codec_pref prefs

Actual used codec preferences

Definition at line 778 of file chan_iax2.c.

Referenced by check_access(), and socket_process_helper().

◆ rdnis

const ast_string_field rdnis

Definition at line 861 of file chan_iax2.c.

Referenced by ast_iax2_new().

◆ reg

struct iax2_registry* reg

◆ remote_rr

struct iax_rr remote_rr

last received remote rr

Definition at line 923 of file chan_iax2.c.

Referenced by ast_cli_netstats(), handle_cli_iax2_show_channels(), log_jitterstats(), and save_rr().

◆ rprefs

struct iax2_codec_pref rprefs

Requested codec preferences

Definition at line 780 of file chan_iax2.c.

Referenced by check_access(), and socket_process_helper().

◆ rseqno

unsigned char rseqno

Next sequence number they have not yet acknowledged

Definition at line 816 of file chan_iax2.c.

Referenced by complete_transfer(), resend_with_token(), and socket_process_helper().

◆ rxcore

struct timeval rxcore

timeval that we base our delivery on

Definition at line 798 of file chan_iax2.c.

Referenced by __get_from_jb(), calc_rxstamp(), complete_transfer(), fix_peerts(), schedule_delivery(), and update_jbsched().

◆ secret

const ast_string_field secret

◆ semirand

unsigned char semirand[32]

32 bytes of semi-random data

Definition at line 880 of file chan_iax2.c.

Referenced by build_ecx_key(), and iax2_send().

◆ signaling_queue

◆ sockfd

int sockfd

Socket to send/receive on for this call

Definition at line 744 of file chan_iax2.c.

Referenced by __find_callno(), find_callno(), find_callno_locked(), iax2_call(), and iax2_trunk_queue().

◆ state

struct ast_flags state

What's our state?

Definition at line 810 of file chan_iax2.c.

Referenced by authenticate_verify(), socket_process_helper(), and socket_process_meta().

◆ svideoformat

iax2_format svideoformat

Last sent video format

Definition at line 754 of file chan_iax2.c.

Referenced by complete_transfer(), and iax2_send().

◆ svoiceformat

iax2_format svoiceformat

Last sent voice format

Definition at line 752 of file chan_iax2.c.

Referenced by complete_transfer(), and iax2_send().

◆ tdcx

Transfer encrypt AES-128 Key

Definition at line 898 of file chan_iax2.c.

◆ transfer

struct ast_sockaddr transfer

Who we are IAX transferring to

Definition at line 894 of file chan_iax2.c.

Referenced by __find_callno(), complete_transfer(), iax2_send(), match(), send_packet(), socket_process_helper(), and try_transfer().

◆ transfercallno

unsigned short transfercallno

What's the new call number for the transfer

Definition at line 896 of file chan_iax2.c.

Referenced by complete_transfer(), iax2_destroy(), iax2_send(), match(), remove_by_transfercallno(), store_by_transfercallno(), transfercallno_pvt_hash_cb(), and try_transfer().

◆ transferid

int transferid

Transfer identifier

Definition at line 892 of file chan_iax2.c.

Referenced by try_transfer().

◆ transferring

enum iax_transfer_state transferring

Transferring status

Definition at line 890 of file chan_iax2.c.

Referenced by complete_transfer(), iax2_send(), match(), socket_process_helper(), and try_transfer().

◆ username

const ast_string_field username

◆ vars

struct ast_variable* vars

variables inherited from the user definition

Definition at line 919 of file chan_iax2.c.

Referenced by ast_iax2_new(), check_access(), and pvt_destructor().

◆ videoformat

iax2_format videoformat

Last received video format

Definition at line 750 of file chan_iax2.c.

Referenced by complete_transfer(), and socket_process_helper().

◆ voiceformat

iax2_format voiceformat

Last received voice format

Definition at line 748 of file chan_iax2.c.

Referenced by __get_from_jb(), complete_transfer(), socket_process_helper(), and socket_process_meta().


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