Asterisk - The Open Source Telephony Project  18.5.0
Data Structures | Data Fields
sip_pvt Struct Reference

Structure used for each SIP dialog, ie. a call, a registration, a subscribe. Created and initialized by sip_alloc(), the descriptor goes into the list of descriptors (dialoglist). More...

#include <sip.h>

Collaboration diagram for sip_pvt:
Collaboration graph
[legend]

Data Structures

struct  request_queue
 

Data Fields

struct ast_string_field_pool__field_mgr_pool
 
const ast_string_field accountcode
 
unsigned int allowed_methods
 
enum transfermodes allowtransfer
 
unsigned short alreadygone:1
 
int amaflags
 
unsigned short answered_elsewhere:1
 
const ast_string_field authname
 
int authtries
 
unsigned short autoframing:1
 
int autokillid
 
long branch
 
ast_group_t callgroup
 
const ast_string_field callid
 
int callingpres
 
struct ast_format_capcaps
 
struct ast_cc_config_paramscc_params
 
struct ast_variablechanvars
 
const ast_string_field cid_name
 
const ast_string_field cid_num
 
const ast_string_field cid_tag
 
const ast_string_field context
 
uint32_t dialogver
 
const ast_string_field dialstring
 
struct ast_acl_listdirectmediaacl
 
unsigned int disallowed_methods
 
unsigned short do_history:1
 
const ast_string_field domain
 
struct ast_dspdsp
 
struct ast_rtp_dtls_cfg dtls_cfg
 
const ast_string_field engine
 
struct sip_epa_entryepa_entry
 
int expiry
 
const ast_string_field exten
 
unsigned short final_destruction_scheduled:1
 
struct ast_flags flags [3]
 
const ast_string_field from
 
const ast_string_field fromdomain
 
int fromdomainport
 
const ast_string_field fromname
 
const ast_string_field fromuser
 
const ast_string_field fullcontact
 
uint32_t glareinvite
 
int hangupcause
 
struct sip_history_headhistory
 
size_t history_entries
 
uint32_t icseq
 
uint32_t init_icseq
 
int initid
 
struct sip_request initreq
 
const ast_string_field initviabranch
 
const ast_string_field initviasentby
 
long invite_branch
 
enum invitestates invitestate
 
struct ast_format_capjointcaps
 
int jointnoncodeccapability
 
const ast_string_field language
 
struct ao2_containerlast_device_state_info
 
const ast_string_field last_presence_message
 
int last_presence_state
 
const ast_string_field last_presence_subtype
 
const char * last_provisional
 
struct timeval last_ringing_channel_time
 
uint32_t lastinvite
 
char lastmsg [256]
 
time_t lastrtprx
 
time_t lastrtptx
 
int laststate
 
ast_callid logger_callid
 
int maxcallbitrate
 
int maxforwards
 
const ast_string_field messagecontext
 
int method
 
const ast_string_field mohinterpret
 
const ast_string_field mohsuggest
 
const ast_string_field msg_body
 
struct {
   struct sip_msg_hdr *   first
 
   struct sip_msg_hdr *   last
 
msg_headers
 
struct sip_subscription_mwimwi
 
const ast_string_field mwi_from
 
struct ast_namedgroups * named_callgroups
 
struct ast_namedgroups * named_pickupgroups
 
unsigned short natdetected:1
 
unsigned short needdestroy:1
 
struct sip_pvtnext
 
const ast_string_field nonce
 
int noncecount
 
int noncodeccapability
 
unsigned short notext:1
 
struct sip_notifynotify
 
unsigned short novideo:1
 
uint32_t ocseq
 
struct {
   struct offered_media *   first
 
   struct offered_media *   last
 
offered_media
 
const ast_string_field okcontacturi
 
unsigned int ongoing_reinvite:1
 
const ast_string_field opaque
 
struct sip_invite_paramoptions
 
const ast_string_field our_contact
 
struct ast_sockaddr ourip
 
struct sip_proxyoutboundproxy
 
unsigned short outgoing_call:1
 
struct ast_channelowner
 
struct sip_pktpackets
 
const ast_string_field parkinglot
 
struct sip_auth_containerpeerauth
 
struct ast_format_cappeercaps
 
const ast_string_field peermd5secret
 
const ast_string_field peername
 
const ast_string_field peersecret
 
uint32_t pendinginvite
 
ast_group_t pickupgroup
 
unsigned int portinuri:1
 
struct ast_format_capprefcaps
 
int provisional_keepalive_sched_id
 
const ast_string_field qop
 
const ast_string_field rdnis
 
const ast_string_field realm
 
struct ast_sockaddr recv
 
int red
 
struct ast_format_capredircaps
 
const ast_string_field redircause
 
struct ast_sockaddr redirip
 
struct sip_referrefer
 
struct sip_registryregistry
 
int reinviteid
 
struct sip_peerrelatedpeer
 
unsigned short req_secure_signaling:1
 
unsigned int reqsipoptions
 
struct sip_pvt::request_queue request_queue
 
int request_queue_sched_id
 
struct sip_route route
 
unsigned short route_persistent:1
 
struct ast_rtp_instancertp
 
int rtpholdtimeout
 
int rtpkeepalive
 
int rtptimeout
 
struct ast_sockaddr sa
 
unsigned short session_modify:1
 
int sessionid
 
const ast_string_field sessionunique_remote
 
int sessionversion
 
int64_t sessionversion_remote
 
unsigned int sipoptions
 
struct sip_socket socket
 
struct ast_sdp_srtpsrtp
 
unsigned int stalenonce:1
 
int stateid
 
struct sip_st_dlgstimer
 
const ast_string_field subscribecontext
 
enum subscriptiontype subscribed
 
const ast_string_field subscribeuri
 
struct t38properties t38
 
int t38_maxdatagram
 
int t38id
 
const ast_string_field tag
 
const ast_string_field tel_phone_context
 
const ast_string_field theirprovtag
 
const ast_string_field theirtag
 
int timer_b
 
int timer_t1
 
const ast_string_field todnid
 
const ast_string_field tohost
 
struct ast_sockaddr tredirip
 
struct ast_rtp_instancetrtp
 
struct ast_sdp_srtptsrtp
 
struct ast_udptludptl
 
struct ast_sockaddr udptlredirip
 
const ast_string_field uri
 
const ast_string_field url
 
const ast_string_field useragent
 
const ast_string_field username
 
char via [128]
 
struct ast_sockaddr vredirip
 
struct ast_rtp_instancevrtp
 
struct ast_sdp_srtpvsrtp
 
int waitid
 
char zone [MAX_TONEZONE_COUNTRY]
 

Detailed Description

Structure used for each SIP dialog, ie. a call, a registration, a subscribe. Created and initialized by sip_alloc(), the descriptor goes into the list of descriptors (dialoglist).

Definition at line 1005 of file sip.h.

Field Documentation

◆ __field_mgr_pool

struct ast_string_field_pool* __field_mgr_pool

Definition at line 1063 of file sip.h.

◆ accountcode

const ast_string_field accountcode

Account code

Definition at line 1063 of file sip.h.

Referenced by sip_new().

◆ allowed_methods

unsigned int allowed_methods

The SIP methods supported by this peer. We get this information from the Allow header of the first message we receive from an endpoint during a dialog.

Definition at line 1196 of file sip.h.

Referenced by __sip_alloc(), create_addr(), handle_response(), handle_response_info(), handle_response_message(), handle_response_publish(), set_pvt_allowed_methods(), sip_sendtext(), and update_connectedline().

◆ allowtransfer

enum transfermodes allowtransfer

REFER: restriction scheme

Definition at line 1137 of file sip.h.

Referenced by __sip_alloc(), check_peer_ok(), create_addr_from_peer(), handle_request_refer(), and sip_show_channel().

◆ alreadygone

unsigned short alreadygone

the peer has sent a message indicating termination of the dialog

Definition at line 1079 of file sip.h.

Referenced by __sip_autodestruct(), handle_incoming(), handle_response_invite(), sip_alreadygone(), sip_hangup(), and sip_set_rtp_peer().

◆ amaflags

int amaflags

AMA Flags

Definition at line 1146 of file sip.h.

Referenced by check_peer_ok(), create_addr_from_peer(), and sip_new().

◆ answered_elsewhere

unsigned short answered_elsewhere

This call is cancelled due to answer on another channel

Definition at line 1084 of file sip.h.

Referenced by sip_hangup(), and transmit_request().

◆ authname

const ast_string_field authname

Who we use for authentication

Definition at line 1063 of file sip.h.

Referenced by build_reply_digest(), handle_response(), handle_response_notify(), and handle_response_refer().

◆ authtries

int authtries

◆ autoframing

unsigned short autoframing

Whether to use our local configuration for frame sizes (off) or respect the other endpoint's request for frame sizes (on) for incoming calls

Definition at line 1089 of file sip.h.

Referenced by __sip_alloc(), check_peer_ok(), create_addr_from_peer(), and process_sdp_a_audio().

◆ autokillid

int autokillid

◆ branch

long branch

The branch identifier of this session

Definition at line 1121 of file sip.h.

Referenced by __sip_alloc(), build_via(), forked_invite_init(), reqprep(), transmit_invite(), transmit_register(), and transmit_response_using_temp().

◆ callgroup

ast_group_t callgroup

Call group

Definition at line 1070 of file sip.h.

Referenced by check_peer_ok(), create_addr_from_peer(), and sip_new().

◆ callid

const ast_string_field callid

◆ callingpres

int callingpres

◆ caps

struct ast_format_cap* caps

◆ cc_params

struct ast_cc_config_params* cc_params

◆ chanvars

struct ast_variable* chanvars

Channel variables to set for inbound call

Definition at line 1180 of file sip.h.

Referenced by check_peer_ok(), create_addr_from_peer(), sip_new(), and sip_pvt_dtor().

◆ cid_name

const ast_string_field cid_name

Caller*ID name

Definition at line 1063 of file sip.h.

Referenced by get_pai(), get_rpid(), handle_request_invite(), handle_request_update(), handle_response_invite(), sip_call(), and sip_new().

◆ cid_num

const ast_string_field cid_num

◆ cid_tag

const ast_string_field cid_tag

◆ context

const ast_string_field context

◆ dialogver

uint32_t dialogver

SUBSCRIBE: Version for subscription dialog-info

Definition at line 1167 of file sip.h.

Referenced by handle_request_subscribe(), state_notify_build_xml(), and transmit_state_notify().

◆ dialstring

const ast_string_field dialstring

The dialstring used to call this SIP endpoint

Definition at line 1063 of file sip.h.

Referenced by sip_handle_cc(), and sip_queryoption().

◆ directmediaacl

struct ast_acl_list* directmediaacl

Which IPs are allowed to interchange direct media with this peer - copied from sip_peer

Definition at line 1134 of file sip.h.

Referenced by create_addr_from_peer(), and sip_pvt_dtor().

◆ disallowed_methods

unsigned int disallowed_methods

Some peers are not trustworthy with their Allow headers, and so we need to override their wicked ways through configuration. This is a copy of the peer's disallowed_methods, so that we can apply them to the sip_pvt at various stages of dialog establishment

Definition at line 1201 of file sip.h.

Referenced by check_peer_ok(), create_addr_from_peer(), and set_pvt_allowed_methods().

◆ do_history

unsigned short do_history

◆ domain

Authorization domain

Definition at line 1063 of file sip.h.

Referenced by build_reply_digest(), get_destination(), reply_digest(), sip_new(), and Registration::write().

◆ dsp

struct ast_dsp* dsp

Inband DTMF or Fax CNG tone Detection dsp

Definition at line 1169 of file sip.h.

Referenced by disable_dsp_detect(), enable_dsp_detect(), sip_queryoption(), and sip_rtp_read().

◆ dtls_cfg

struct ast_rtp_dtls_cfg dtls_cfg

◆ engine

const ast_string_field engine

RTP engine to use

Definition at line 1063 of file sip.h.

Referenced by dialog_initialize_rtp().

◆ epa_entry

struct sip_epa_entry* epa_entry

Definition at line 1219 of file sip.h.

Referenced by handle_response_publish(), sip_pvt_dtor(), transmit_invite(), and transmit_publish().

◆ expiry

int expiry

◆ exten

const ast_string_field exten

◆ final_destruction_scheduled

unsigned short final_destruction_scheduled

final dialog destruction is scheduled. Keep dialog around until then to handle retransmits.

Definition at line 1081 of file sip.h.

Referenced by pvt_set_needdestroy(), sip_cancel_destroy(), sip_scheddestroy(), and sip_scheddestroy_final().

◆ first [1/2]

struct sip_msg_hdr* first

Definition at line 1181 of file sip.h.

◆ first [2/2]

struct offered_media* first

Definition at line 1217 of file sip.h.

◆ flags

struct ast_flags flags[3]

SIP_ flags

Definition at line 1075 of file sip.h.

Referenced by __sip_alloc(), __sip_subscribe_mwi_do(), __transmit_response(), add_codec_to_sdp(), add_rpid(), add_sdp(), add_supported(), build_via(), change_hold_state(), check_for_nat(), check_peer_ok(), check_pendings(), check_rtp_timeout(), check_user_full(), check_via(), configure_rtcp(), copy_via_headers(), create_addr_from_peer(), dialog_initialize_rtp(), do_setnat(), enable_dsp_detect(), extensionstate_update(), forked_invite_init(), get_destination(), get_rpid(), handle_incoming(), handle_request_bye(), handle_request_cancel(), handle_request_info(), handle_request_invite(), handle_request_refer(), handle_request_subscribe(), handle_response(), handle_response_invite(), handle_response_message(), handle_response_notify(), initialize_udptl(), initreqprep(), interpret_t38_parameters(), local_attended_transfer(), manager_sipnotify(), match_req_to_dialog(), parse_moved_contact(), parse_register_contact(), process_crypto(), process_sdp(), process_sdp_a_audio(), process_sdp_a_ice(), process_sdp_o(), register_verify(), reqprep(), respprep(), retrans_pkt(), send_request(), set_address_from_contact(), set_ice_components(), set_pvt_allowed_methods(), set_t38_capabilities(), show_channels_cb(), sip_allow_anyrtp_remote(), sip_answer(), sip_call(), sip_cc_agent_destructor(), sip_cc_agent_init(), sip_cc_agent_respond(), sip_cc_monitor_request_cc(), sip_cli_notify(), sip_dtmfmode(), sip_get_rtp_peer(), sip_get_trtp_peer(), sip_get_vrtp_peer(), sip_hangup(), sip_indicate(), sip_msg_send(), sip_nat_mode(), sip_new(), sip_poke_peer(), sip_pvt_dtor(), sip_queryoption(), sip_read(), sip_real_dst(), sip_reinvite_retry(), sip_request_call(), sip_rtp_read(), sip_send_mwi_to_peer(), sip_senddigit_begin(), sip_senddigit_end(), sip_sendhtml(), sip_set_rtp_peer(), sip_setoption(), sip_show_channel(), sip_write(), transmit_info_with_digit(), transmit_invite(), transmit_notify_with_mwi(), transmit_publish(), transmit_refer(), transmit_register(), transmit_reinvite_with_sdp(), transmit_request_with_auth(), transmit_response_using_temp(), transmit_response_with_sdp(), transmit_state_notify(), update_call_counter(), update_connectedline(), update_redirecting(), and use_reason_header().

◆ from

const ast_string_field from

The From: header

Definition at line 1063 of file sip.h.

Referenced by sip_acf_channel_read(), sip_report_chal_sent(), and sip_report_failed_challenge_response().

◆ fromdomain

const ast_string_field fromdomain

Domain to show in the from field

Definition at line 1063 of file sip.h.

Referenced by add_rpid(), build_callid_pvt(), initreqprep(), sip_new(), state_notify_build_xml(), transmit_notify_with_mwi(), and transmit_register().

◆ fromdomainport

int fromdomainport

Domain port to show in from field

Definition at line 1220 of file sip.h.

Referenced by __sip_alloc(), create_addr_from_peer(), initreqprep(), transmit_notify_with_mwi(), transmit_register(), and transmit_response_using_temp().

◆ fromname

const ast_string_field fromname

Name to show in the user field

Definition at line 1063 of file sip.h.

Referenced by initreqprep().

◆ fromuser

const ast_string_field fromuser

User to show in the user field

Definition at line 1063 of file sip.h.

Referenced by initreqprep().

◆ fullcontact

const ast_string_field fullcontact

The Contact: that the UA registers with us

Definition at line 1063 of file sip.h.

Referenced by forked_invite_init(), initreqprep(), respprep(), and set_address_from_contact().

◆ glareinvite

uint32_t glareinvite

A invite received while a pending invite is already present is stored here. Its seqno is the value. Since this glare invite's seqno is not the same as the pending invite's, it must be held in order to properly process acknowledgements for our 491 response.

Definition at line 1148 of file sip.h.

Referenced by handle_incoming(), and handle_request_invite().

◆ hangupcause

int hangupcause

Storage of hangupcause copied from our owner before we disconnect from the AST channel (only used at hangup)

Definition at line 1190 of file sip.h.

Referenced by __transmit_response(), handle_response_invite(), sip_hangup(), and transmit_request_with_auth().

◆ history

struct sip_history_head* history

History of this SIP dialog

Definition at line 1178 of file sip.h.

Referenced by sip_dump_history(), sip_pvt_dtor(), and sip_show_history().

◆ history_entries

size_t history_entries

Number of entires in the history

Definition at line 1179 of file sip.h.

Referenced by sip_pvt_dtor().

◆ icseq

uint32_t icseq

Current incoming seqno

Definition at line 1068 of file sip.h.

Referenced by handle_incoming().

◆ init_icseq

uint32_t init_icseq

Initial incoming seqno from first request

Definition at line 1069 of file sip.h.

Referenced by __sip_alloc(), and match_req_to_dialog().

◆ initid

int initid

Auto-congest ID if appropriate (scheduler)

Definition at line 1155 of file sip.h.

Referenced by __sip_alloc(), auto_congest(), do_dialog_unlink_sched_items(), handle_response_invite(), and sip_call().

◆ initreq

struct sip_request initreq

◆ initviabranch

const ast_string_field initviabranch

The branch ID from the topmost Via header in the initial request

Definition at line 1063 of file sip.h.

Referenced by match_req_to_dialog().

◆ initviasentby

const ast_string_field initviasentby

The sent-by from the topmost Via header in the initial request

Definition at line 1063 of file sip.h.

Referenced by match_req_to_dialog().

◆ invite_branch

long invite_branch

The branch used when we sent the initial INVITE

Definition at line 1122 of file sip.h.

Referenced by match_req_to_dialog(), reqprep(), and transmit_invite().

◆ invitestate

enum invitestates invitestate

◆ jointcaps

struct ast_format_cap* jointcaps

◆ jointnoncodeccapability

int jointnoncodeccapability

Joint Non codec capability

Definition at line 1105 of file sip.h.

Referenced by add_sdp(), check_peer_ok(), create_addr_from_peer(), process_sdp(), sip_call(), and sip_dtmfmode().

◆ language

const ast_string_field language

Default language for this call

Definition at line 1063 of file sip.h.

Referenced by sip_new().

◆ last [1/2]

struct sip_msg_hdr* last

Definition at line 1181 of file sip.h.

◆ last [2/2]

struct offered_media* last

Definition at line 1217 of file sip.h.

◆ last_device_state_info

struct ao2_container* last_device_state_info

SUBSCRIBE: last known extended extension state (take care of refs)

Definition at line 1164 of file sip.h.

Referenced by extensionstate_update(), handle_response_notify(), and sip_pvt_dtor().

◆ last_presence_message

const ast_string_field last_presence_message

The last presence message for a subscription

Definition at line 1063 of file sip.h.

Referenced by extensionstate_update(), and handle_response_notify().

◆ last_presence_state

int last_presence_state

SUBSCRIBE: Last known presence state

Definition at line 1166 of file sip.h.

Referenced by extensionstate_update(), and handle_response_notify().

◆ last_presence_subtype

const ast_string_field last_presence_subtype

The last presence subtype sent for a subscription.

Definition at line 1063 of file sip.h.

Referenced by extensionstate_update(), and handle_response_notify().

◆ last_provisional

const char* last_provisional

The last successfully transmitted provisonal response message

Definition at line 1110 of file sip.h.

Referenced by send_provisional_keepalive_full(), and transmit_provisional_response().

◆ last_ringing_channel_time

struct timeval last_ringing_channel_time

SUBSCRIBE: channel timestamp of the channel which caused the last early-state notification

Definition at line 1165 of file sip.h.

Referenced by extensionstate_update(), and handle_request_subscribe().

◆ lastinvite

uint32_t lastinvite

◆ lastmsg

char lastmsg[256]

Last Message sent/received

Definition at line 1145 of file sip.h.

Referenced by __sip_autodestruct(), handle_incoming(), initreqprep(), reqprep(), show_channels_cb(), and sip_show_channel().

◆ lastrtprx

time_t lastrtprx

Last RTP received

Definition at line 1129 of file sip.h.

Referenced by add_sdp(), check_rtp_timeout(), process_sdp(), sip_read(), and sip_set_rtp_peer().

◆ lastrtptx

time_t lastrtptx

Last RTP sent

Definition at line 1130 of file sip.h.

Referenced by add_sdp(), check_rtp_timeout(), process_sdp(), sip_set_rtp_peer(), and sip_write().

◆ laststate

int laststate

SUBSCRIBE: Last known extension state

Definition at line 1163 of file sip.h.

Referenced by extensionstate_update(), handle_request_subscribe(), handle_response_notify(), and show_channels_cb().

◆ logger_callid

ast_callid logger_callid

Identifier for call used in log messages

Definition at line 1008 of file sip.h.

Referenced by forked_invite_init(), handle_request_do(), handle_request_invite(), and sip_pvt_callid_set().

◆ maxcallbitrate

int maxcallbitrate

Maximum Call Bitrate for Video Calls

Definition at line 1106 of file sip.h.

Referenced by __sip_alloc(), add_sdp(), check_peer_ok(), create_addr_from_peer(), and sip_show_channel().

◆ maxforwards

int maxforwards

SIP Loop prevention

Definition at line 1065 of file sip.h.

Referenced by __sip_alloc(), add_max_forwards(), check_peer_ok(), sip_call(), and sip_msg_send().

◆ messagecontext

const ast_string_field messagecontext

Default context for outofcall messages.

Definition at line 1063 of file sip.h.

Referenced by receive_message().

◆ method

int method

◆ mohinterpret

const ast_string_field mohinterpret

MOH class to use when put on hold

Definition at line 1063 of file sip.h.

Referenced by sip_indicate().

◆ mohsuggest

const ast_string_field mohsuggest

MOH class to suggest when putting a peer on hold

Definition at line 1063 of file sip.h.

Referenced by process_sdp().

◆ msg_body

const ast_string_field msg_body

Text for a MESSAGE body

Definition at line 1063 of file sip.h.

Referenced by add_text().

◆ msg_headers

struct { ... } msg_headers

Additional MESSAGE headers to send.

Referenced by add_msg_header(), add_text(), and destroy_msg_headers().

◆ mwi

struct sip_subscription_mwi* mwi

If this is a subscription MWI dialog, to which subscription

Definition at line 1192 of file sip.h.

Referenced by __sip_subscribe_mwi_do(), handle_request_notify(), handle_response_subscribe(), sip_pvt_dtor(), and sip_subscribe_mwi_destroy().

◆ mwi_from

const ast_string_field mwi_from

Name to place in the From header in outgoing NOTIFY requests

Definition at line 1063 of file sip.h.

Referenced by initreqprep().

◆ named_callgroups

struct ast_namedgroups* named_callgroups

Named call group

Definition at line 1072 of file sip.h.

Referenced by check_peer_ok(), create_addr_from_peer(), sip_new(), and sip_pvt_dtor().

◆ named_pickupgroups

struct ast_namedgroups* named_pickupgroups

Named pickup group

Definition at line 1073 of file sip.h.

Referenced by check_peer_ok(), create_addr_from_peer(), sip_new(), and sip_pvt_dtor().

◆ natdetected

unsigned short natdetected

Whether we detected a NAT when processing the Via

Definition at line 1094 of file sip.h.

Referenced by check_for_nat(), check_peer_ok(), set_peer_nat(), and sip_request_call().

◆ needdestroy

unsigned short needdestroy

this dialog needs to be destroyed by the monitor thread

Definition at line 1080 of file sip.h.

Referenced by __sip_autodestruct(), dialog_needdestroy(), handle_request_subscribe(), pvt_set_needdestroy(), show_channels_cb(), and sip_show_channel().

◆ next

struct sip_pvt* next

Next dialog in chain

Definition at line 1006 of file sip.h.

◆ nonce

const ast_string_field nonce

◆ noncecount

int noncecount

Nonce-count

Definition at line 1142 of file sip.h.

Referenced by build_reply_digest(), reply_digest(), transmit_register(), and transmit_response_with_auth().

◆ noncodeccapability

int noncodeccapability

DTMF RFC2833 telephony-event

Definition at line 1104 of file sip.h.

Referenced by __sip_alloc(), check_peer_ok(), create_addr_from_peer(), process_sdp(), sip_call(), and sip_show_channel().

◆ notext

unsigned short notext

Text not supported (?)

Definition at line 1086 of file sip.h.

Referenced by add_sdp(), and process_sdp().

◆ notify

struct sip_notify* notify

Custom notify type

Definition at line 1140 of file sip.h.

Referenced by handle_response_notify(), manager_sipnotify(), sip_cli_notify(), sip_notify_alloc(), sip_pvt_dtor(), and transmit_invite().

◆ novideo

unsigned short novideo

Didn't get video in invite, don't offer

Definition at line 1085 of file sip.h.

Referenced by add_sdp(), process_sdp(), and sip_indicate().

◆ ocseq

uint32_t ocseq

◆ offered_media

struct { ... } offered_media

When receiving an SDP offer, it is important to take note of what media types were offered. By doing this, even if we don't want to answer a particular media stream with something meaningful, we can still put an m= line in our answer with the port set to 0.

The reason for the length being 4 (OFFERED_MEDIA_COUNT) is that in this branch of Asterisk, the only media types supported are image, audio, text, and video. Therefore we need to keep track of which types of media were offered. Note that secure RTP defines new types of SDP media.

If we wanted to be 100% correct, we would keep a list of all media streams offered. That way we could respond even to unknown media types, and we could respond to multiple streams of the same type. Such large-scale changes are not a good idea for released branches, though, so we're compromising by just making sure that for the common cases: audio and video, audio and T.38, and audio and text, we give the appropriate response to both media streams.

The large-scale changes would be a good idea for implementing during an SDP rewrite.

Referenced by __sip_alloc(), add_sdp(), has_media_stream(), offered_media_list_destroy(), and process_sdp().

◆ okcontacturi

const ast_string_field okcontacturi

URI from the 200 OK on INVITE

Definition at line 1063 of file sip.h.

Referenced by reqprep(), and update_connectedline().

◆ ongoing_reinvite

unsigned int ongoing_reinvite

There is a reinvite in progress that might need to be cleaned up

Definition at line 1144 of file sip.h.

Referenced by __sip_autodestruct(), check_pendings(), handle_response_invite(), sip_hangup(), and transmit_reinvite_with_sdp().

◆ opaque

const ast_string_field opaque

Opaque nonsense

Definition at line 1063 of file sip.h.

Referenced by build_reply_digest(), and reply_digest().

◆ options

struct sip_invite_param* options

◆ our_contact

const ast_string_field our_contact

◆ ourip

struct ast_sockaddr ourip

◆ outboundproxy

struct sip_proxy* outboundproxy

Outbound proxy for this dialog. Use ref_proxy to set this instead of setting it directly

Definition at line 1112 of file sip.h.

Referenced by __sip_ack(), get_transport_pvt(), ref_proxy(), send_request(), sip_prepare_socket(), sip_pvt_dtor(), and sip_real_dst().

◆ outgoing_call

unsigned short outgoing_call

◆ owner

struct ast_channel* owner

◆ packets

struct sip_pkt* packets

◆ parkinglot

const ast_string_field parkinglot

Parkinglot

Definition at line 1063 of file sip.h.

Referenced by sip_new().

◆ peerauth

struct sip_auth_container* peerauth

Realm authentication credentials

Definition at line 1141 of file sip.h.

Referenced by build_reply_digest(), create_addr_from_peer(), and sip_pvt_dtor().

◆ peercaps

struct ast_format_cap* peercaps

Supported peer capability

Definition at line 1101 of file sip.h.

Referenced by __sip_alloc(), check_peer_ok(), process_sdp(), sip_pvt_dtor(), and sip_show_channel().

◆ peermd5secret

const ast_string_field peermd5secret

Definition at line 1063 of file sip.h.

Referenced by build_reply_digest(), and check_peer_ok().

◆ peername

const ast_string_field peername

◆ peersecret

const ast_string_field peersecret

Password

Definition at line 1063 of file sip.h.

Referenced by build_reply_digest(), and check_peer_ok().

◆ pendinginvite

uint32_t pendinginvite

◆ pickupgroup

ast_group_t pickupgroup

Pickup group

Definition at line 1071 of file sip.h.

Referenced by check_peer_ok(), create_addr_from_peer(), and sip_new().

◆ portinuri

unsigned int portinuri

Non zero if a port has been specified, will also disable srv lookups

Definition at line 1124 of file sip.h.

Referenced by create_addr(), create_addr_from_peer(), and initreqprep().

◆ prefcaps

struct ast_format_cap* prefcaps

Preferred codec (outbound only)

Definition at line 1103 of file sip.h.

Referenced by __sip_alloc(), add_sdp(), sip_call(), sip_new(), sip_pvt_dtor(), and sip_request_call().

◆ provisional_keepalive_sched_id

int provisional_keepalive_sched_id

Scheduler ID for provisional responses that need to be sent out to avoid cancellation

Definition at line 1109 of file sip.h.

Referenced by __sip_alloc(), __stop_provisional_keepalive(), __update_provisional_keepalive_full(), do_dialog_unlink_sched_items(), and send_provisional_keepalive_full().

◆ qop

const ast_string_field qop

Quality of Protection struct ast_string_field_mgr __field_mgr since SIP wasn't complicated enough yet.

Definition at line 1063 of file sip.h.

Referenced by build_reply_digest(), and reply_digest().

◆ rdnis

const ast_string_field rdnis

Referring DNIS

Definition at line 1063 of file sip.h.

Referenced by sip_new().

◆ realm

const ast_string_field realm

◆ recv

struct ast_sockaddr recv

◆ red

int red

T.140 RTP Redundancy

Definition at line 1189 of file sip.h.

Referenced by process_sdp(), and sip_write().

◆ redircaps

struct ast_format_cap* redircaps

Redirect codecs

Definition at line 1102 of file sip.h.

Referenced by __sip_alloc(), add_sdp(), sip_pvt_dtor(), and sip_set_rtp_peer().

◆ redircause

const ast_string_field redircause

Referring cause

Definition at line 1063 of file sip.h.

Referenced by get_rdnis().

◆ redirip

struct ast_sockaddr redirip

Where our RTP should be going if not to us

Definition at line 1126 of file sip.h.

Referenced by add_sdp(), check_rtp_timeout(), get_our_media_address(), process_sdp(), sip_set_rtp_peer(), sip_show_channel(), and transmit_reinvite_with_sdp().

◆ refer

struct sip_refer* refer

◆ registry

struct sip_registry* registry

◆ reinviteid

int reinviteid

Reinvite in case of provisional, but no final response

Definition at line 1157 of file sip.h.

Referenced by __sip_alloc(), __stop_reinviteid(), check_pendings(), do_dialog_unlink_sched_items(), reinvite_timeout(), and sip_hangup().

◆ relatedpeer

struct sip_peer* relatedpeer

◆ req_secure_signaling

unsigned short req_secure_signaling

Whether we are required to have secure signaling or not

Definition at line 1093 of file sip.h.

Referenced by sip_call(), sip_queryoption(), and sip_setoption().

◆ reqsipoptions

unsigned int reqsipoptions

Required SIP options on the other end

Definition at line 1098 of file sip.h.

Referenced by handle_request_invite(), and handle_request_invite_st().

◆ request_queue

Requests that arrived but could not be processed immediately

Referenced by __sip_alloc(), and sip_pvt_dtor().

◆ request_queue_sched_id

int request_queue_sched_id

Scheduler ID of any scheduled action to process queued requests

Definition at line 1108 of file sip.h.

Referenced by __sip_alloc(), and do_dialog_unlink_sched_items().

◆ route

struct sip_route route

List of routing steps (fm Record-Route)

Definition at line 1139 of file sip.h.

Referenced by build_route(), create_addr_from_peer(), handle_response_invite(), initreqprep(), reqprep(), sip_poke_peer(), sip_pvt_dtor(), and sip_show_channel().

◆ route_persistent

unsigned short route_persistent

Is this the "real" route?

Definition at line 1088 of file sip.h.

Referenced by build_route().

◆ rtp

struct ast_rtp_instance* rtp

◆ rtpholdtimeout

int rtpholdtimeout

RTP timeout time on hold

Definition at line 1132 of file sip.h.

Referenced by check_peer_ok(), check_user_full(), create_addr(), create_addr_from_peer(), and dialog_initialize_rtp().

◆ rtpkeepalive

int rtpkeepalive

RTP send packets for keepalive

Definition at line 1133 of file sip.h.

Referenced by check_peer_ok(), check_user_full(), create_addr(), create_addr_from_peer(), and dialog_initialize_rtp().

◆ rtptimeout

int rtptimeout

RTP timeout time

Definition at line 1131 of file sip.h.

Referenced by check_peer_ok(), check_user_full(), create_addr(), create_addr_from_peer(), and dialog_initialize_rtp().

◆ sa

struct ast_sockaddr sa

◆ session_modify

unsigned short session_modify

Session modification request true/false

Definition at line 1087 of file sip.h.

Referenced by __sip_alloc(), handle_request_invite(), process_sdp(), and process_sdp_o().

◆ sessionid

int sessionid

SDP Session ID

Definition at line 1120 of file sip.h.

Referenced by add_sdp().

◆ sessionunique_remote

const ast_string_field sessionunique_remote

Remote UA's SDP Session unique parts

Definition at line 1063 of file sip.h.

Referenced by process_sdp_o().

◆ sessionversion

int sessionversion

SDP Session Version

Definition at line 1119 of file sip.h.

Referenced by add_sdp().

◆ sessionversion_remote

int64_t sessionversion_remote

Remote UA's SDP Session Version

Definition at line 1123 of file sip.h.

Referenced by __sip_alloc(), and process_sdp_o().

◆ sipoptions

unsigned int sipoptions

Supported SIP options on the other end

Definition at line 1097 of file sip.h.

Referenced by check_peer_ok(), handle_request_invite(), handle_request_invite_st(), parse_register_contact(), and sip_show_channel().

◆ socket

struct sip_socket socket

◆ srtp

struct ast_sdp_srtp* srtp

Structure to hold Secure RTP session data for audio

Definition at line 1185 of file sip.h.

Referenced by add_sdp(), dialog_clean_rtp(), dialog_initialize_rtp(), handle_request_invite(), process_sdp(), sip_acf_channel_read(), sip_call(), sip_get_rtp_peer(), and sip_show_channel().

◆ stalenonce

unsigned int stalenonce

Marks the current nonce as responded too

Definition at line 1143 of file sip.h.

Referenced by build_nonce(), and check_auth().

◆ stateid

int stateid

SUBSCRIBE: ID for devicestate subscriptions

Definition at line 1162 of file sip.h.

Referenced by __sip_alloc(), dialog_unlink_all(), and handle_request_subscribe().

◆ stimer

struct sip_st_dlg* stimer

◆ subscribecontext

const ast_string_field subscribecontext

Subscribecontext

Definition at line 1063 of file sip.h.

Referenced by get_destination(), and handle_request_subscribe().

◆ subscribed

enum subscriptiontype subscribed

◆ subscribeuri

const ast_string_field subscribeuri

Subscribecontext

Definition at line 1063 of file sip.h.

Referenced by handle_request_subscribe(), and show_channels_cb().

◆ t38

struct t38properties t38

◆ t38_maxdatagram

int t38_maxdatagram

T.38 FaxMaxDatagram override

Definition at line 1107 of file sip.h.

Referenced by check_peer_ok(), initialize_udptl(), and process_sdp_a_image().

◆ t38id

int t38id

◆ tag

const ast_string_field tag

◆ tel_phone_context

const ast_string_field tel_phone_context

The phone-context portion of a TEL URI

Definition at line 1063 of file sip.h.

Referenced by sip_new().

◆ theirprovtag

const ast_string_field theirprovtag

Provisional their tag, used when evaluating responses to invites

Definition at line 1063 of file sip.h.

Referenced by handle_response_invite().

◆ theirtag

const ast_string_field theirtag

◆ timer_b

int timer_b

SIP timer B, ms

Definition at line 1096 of file sip.h.

Referenced by __sip_alloc(), check_peer_ok(), create_addr(), create_addr_from_peer(), sip_call(), and sip_scheddestroy_full().

◆ timer_t1

int timer_t1

◆ todnid

const ast_string_field todnid

DNID of this call (overrides host)

Definition at line 1063 of file sip.h.

Referenced by initreqprep().

◆ tohost

const ast_string_field tohost

Host we should put in the "to" field

Definition at line 1063 of file sip.h.

Referenced by create_addr_from_peer(), initreqprep(), sip_prepare_socket(), and transmit_register().

◆ tredirip

struct ast_sockaddr tredirip

Where our Text RTP should be going if not to us

Definition at line 1128 of file sip.h.

Referenced by get_our_media_address(), and sip_set_rtp_peer().

◆ trtp

struct ast_rtp_instance* trtp

◆ tsrtp

struct ast_sdp_srtp* tsrtp

Structure to hold Secure RTP session data for text

Definition at line 1187 of file sip.h.

Referenced by add_sdp(), dialog_clean_rtp(), dialog_initialize_rtp(), process_sdp(), and sip_call().

◆ udptl

struct ast_udptl* udptl

◆ udptlredirip

struct ast_sockaddr udptlredirip

Where our T.38 UDPTL should be going if not to us

Definition at line 1114 of file sip.h.

◆ uri

const ast_string_field uri

Original requested URI

Definition at line 1063 of file sip.h.

Referenced by build_reply_digest(), forked_invite_init(), initreqprep(), reqprep(), sip_acf_channel_read(), sip_new(), and sip_show_channel().

◆ url

const ast_string_field url

URL to be sent with next message to peer

Definition at line 1063 of file sip.h.

Referenced by reqprep(), and respprep().

◆ useragent

const ast_string_field useragent

User agent in SIP request

Definition at line 1063 of file sip.h.

Referenced by allow_notify_user_presence(), handle_request_subscribe(), sip_acf_channel_read(), sip_show_channel(), and sipinfo_send().

◆ username

const ast_string_field username

◆ via

char via[128]

Via: header

Definition at line 1063 of file sip.h.

Referenced by build_via(), initreqprep(), reqprep(), and transmit_register().

◆ vredirip

struct ast_sockaddr vredirip

Where our Video RTP should be going if not to us

Definition at line 1127 of file sip.h.

Referenced by get_our_media_address(), and sip_set_rtp_peer().

◆ vrtp

struct ast_rtp_instance* vrtp

◆ vsrtp

struct ast_sdp_srtp* vsrtp

Structure to hold Secure RTP session data for video

Definition at line 1186 of file sip.h.

Referenced by add_sdp(), dialog_initialize_rtp(), process_sdp(), sip_call(), and sip_pvt_dtor().

◆ waitid

int waitid

Wait ID for scheduler after 491 or other delays

Definition at line 1156 of file sip.h.

Referenced by __sip_alloc(), __stop_reinvite_retry(), check_pendings(), do_dialog_unlink_sched_items(), handle_response_invite(), and sip_reinvite_retry().

◆ zone

Default tone zone for channels created by this dialog

Definition at line 1116 of file sip.h.

Referenced by __sip_alloc(), check_peer_ok(), create_addr_from_peer(), and sip_new().


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