summaryrefslogtreecommitdiff
path: root/channels/chan_iax2.c
diff options
context:
space:
mode:
authorMark Spencer <markster@digium.com>2003-09-04 04:09:09 +0000
committerMark Spencer <markster@digium.com>2003-09-04 04:09:09 +0000
commitbb0fba09740b1d22cf7aaeca3485f2bfd5f387be (patch)
tree55c4d29d1c1ee643209b299a3e931cb86be96e4e /channels/chan_iax2.c
parent9c12f6b5501b09b5ad197487eda10eea3d02f8d3 (diff)
Re-poke all peers on a reload (bug #216)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@1470 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/chan_iax2.c')
-rwxr-xr-xchannels/chan_iax2.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/channels/chan_iax2.c b/channels/chan_iax2.c
index 14ddc53c0..71c5056bd 100755
--- a/channels/chan_iax2.c
+++ b/channels/chan_iax2.c
@@ -5250,6 +5250,7 @@ static int reload_config(void)
char *config = "iax.conf";
struct iax2_registry *reg;
struct sockaddr_in dead_sin;
+ struct iax2_peer *peer;
strncpy(accountcode, "", sizeof(accountcode)-1);
amaflags = 0;
notransfer = 0;
@@ -5259,6 +5260,11 @@ static int reload_config(void)
prune_peers();
for (reg = registrations; reg; reg = reg->next)
iax2_do_register(reg);
+ /* Qualify hosts, too */
+ ast_mutex_lock(&peerl.lock);
+ for (peer = peerl.peers; peer; peer = peer->next)
+ iax2_poke_peer(peer);
+ ast_mutex_unlock(&peerl.lock);
return 0;
}