diff options
Diffstat (limited to 'channels/sip/include/sip.h')
-rw-r--r-- | channels/sip/include/sip.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/channels/sip/include/sip.h b/channels/sip/include/sip.h index f74446ab8..3af35b048 100644 --- a/channels/sip/include/sip.h +++ b/channels/sip/include/sip.h @@ -294,6 +294,7 @@ #define SIP_PROG_INBAND_NO (1 << 25) #define SIP_PROG_INBAND_YES (2 << 25) +#define SIP_USEPATH (1 << 27) /*!< GDP: Trust and use incoming Path headers? */ #define SIP_SENDRPID (3 << 29) /*!< DP: Remote Party-ID Support */ #define SIP_SENDRPID_NO (0 << 29) #define SIP_SENDRPID_PAI (1 << 29) /*!< Use "P-Asserted-Identity" for rpid */ @@ -304,7 +305,7 @@ #define SIP_FLAGS_TO_COPY \ (SIP_PROMISCREDIR | SIP_TRUSTRPID | SIP_SENDRPID | SIP_DTMF | SIP_REINVITE | \ SIP_PROG_INBAND | SIP_USECLIENTCODE | SIP_NAT_FORCE_RPORT | SIP_G726_NONSTANDARD | \ - SIP_USEREQPHONE | SIP_INSECURE) + SIP_USEREQPHONE | SIP_INSECURE | SIP_USEPATH) /*@}*/ /*! \name SIPflags2 @@ -737,6 +738,7 @@ struct __show_chan_arg { struct sip_settings { int peer_rtupdate; /*!< G: Update database with registration data for peer? */ int rtsave_sysname; /*!< G: Save system name at registration? */ + int rtsave_path; /*!< G: Save path header on registration */ int ignore_regexpire; /*!< G: Ignore expiration of peer */ int rtautoclear; /*!< Realtime ?? */ int directrtpsetup; /*!< Enable support for Direct RTP setup (no re-invites) */ @@ -1368,6 +1370,7 @@ struct sip_peer { int timer_t1; /*!< The maximum T1 value for the peer */ int timer_b; /*!< The maximum timer B (transaction timeouts) */ int fromdomainport; /*!< The From: domain port */ + struct sip_route *path; /*!< Head of linked list of out-of-dialog outgoing routing steps (fm Path headers) */ /*XXX Seems like we suddenly have two flags with the same content. Why? To be continued... */ enum sip_peer_type type; /*!< Distinguish between "user" and "peer" types. This is used solely for CLI and manager commands */ |