diff options
author | Kevin Harwell <kharwell@digium.com> | 2015-06-30 15:19:31 -0500 |
---|---|---|
committer | Kevin Harwell <kharwell@digium.com> | 2015-07-06 10:49:08 -0500 |
commit | 74135c8efa826a9ce47604dadb6a65b56c10c71d (patch) | |
tree | 2e4a36d9ef747d2abcabd836dc88dff5243d74fd /include/asterisk/res_pjsip.h | |
parent | c12ace3ab31bd61606252f5a3721ce720d2ad209 (diff) |
res_pjsip: Failover when server is not available
Previously Asterisk did not properly failover to the next resolved DNS
address when a endpoint could not be reached. With this patch, and while
using res_pjsip, SIP requests (both in/out of dialog) now attempt to use
the next address in the list of resolved addresses until a proper response
is received or no more addresses are left.
ASTERISK-25076 #close
Reported by: Joshua Colp
Change-Id: Ief14f4ebd82474881f72f4538f4577f30af2a764
Diffstat (limited to 'include/asterisk/res_pjsip.h')
-rw-r--r-- | include/asterisk/res_pjsip.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/include/asterisk/res_pjsip.h b/include/asterisk/res_pjsip.h index 9475d6d22..f199b8fef 100644 --- a/include/asterisk/res_pjsip.h +++ b/include/asterisk/res_pjsip.h @@ -2044,4 +2044,13 @@ unsigned int ast_sip_get_max_initial_qualify_time(void); const char *ast_sip_get_contact_status_label(const enum ast_sip_contact_status_type status); const char *ast_sip_get_contact_short_status_label(const enum ast_sip_contact_status_type status); +/*! + * \brief Set a request to use the next value in the list of resolved addresses. + * + * \param tdata the tx data from the original request + * \retval 0 No more addresses to try + * \retval 1 The request was successfully re-intialized + */ +int ast_sip_failover_request(pjsip_tx_data *tdata); + #endif /* _RES_PJSIP_H */ |