res_pjsip: Add support for dnsmgr to external_media_address.

The "external_media_address" option on transports is now
resolved using dnsmgr. This allows it to be automatically
refreshed regularly if refreshes are enabled in dnsmgr.
If the system is using a dynamic IP address a dynamic DNS
hostname can be provided to keep the IP address up to
date.

Change-Id: Ia54771720dff0105bde55d5bbb81a3ba437e05b2
This commit is contained in:
Joshua Colp
2017-07-23 23:34:32 +00:00
committed by George Joseph
parent 0f49e6ee2e
commit 114602f434
7 changed files with 62 additions and 22 deletions

View File

@@ -103,15 +103,25 @@ struct ast_sip_transport_state {
*/
struct ast_ha *localnet;
/*!
* DNS manager for refreshing the external address
* DNS manager for refreshing the external signaling address
* \since 13.8.0
*/
struct ast_dnsmgr_entry *external_address_refresher;
struct ast_dnsmgr_entry *external_signaling_address_refresher;
/*!
* Optional external address information
* Optional external signaling address information
* \since 13.8.0
*/
struct ast_sockaddr external_address;
struct ast_sockaddr external_signaling_address;
/*!
* DNS manager for refreshing the external media address
* \since 13.18.0
*/
struct ast_dnsmgr_entry *external_media_address_refresher;
/*!
* Optional external signaling address information
* \since 13.18.0
*/
struct ast_sockaddr external_media_address;
};
/*