diff options
author | Mark Spencer <markster@digium.com> | 2004-05-06 01:33:24 +0000 |
---|---|---|
committer | Mark Spencer <markster@digium.com> | 2004-05-06 01:33:24 +0000 |
commit | ab3c603b1c5025d7be564a260cad5e0321f912f1 (patch) | |
tree | 312a684f93a66830b6e926ef267b0b5a74bfe0f7 /channels | |
parent | be1efdbf895f797652104392d1e2714e2137ef81 (diff) |
If user fails host access, search for peers too
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@2901 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rwxr-xr-x | channels/chan_sip.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 3319508f9..54be3f6a6 100755 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -4492,6 +4492,12 @@ static int check_user(struct sip_pvt *p, struct sip_request *req, char *cmd, cha p->noncodeccapability &= ~AST_RTP_DTMF; } } + if (user && sip_debug_test_addr(sin)) + ast_verbose("Found user '%s'\n", user->name); + } else { + if (user && sip_debug_test_addr(sin)) + ast_verbose("Found user '%s', but fails host access\n", user->name); + user = NULL; } ast_mutex_unlock(&userl.lock); if (!user) { @@ -4504,6 +4510,8 @@ static int check_user(struct sip_pvt *p, struct sip_request *req, char *cmd, cha /* peer = find_peer(NULL, sin); */ ast_mutex_unlock(&peerl.lock); if (peer) { + if (sip_debug_test_addr(sin)) + ast_verbose("Found peer '%s'\n", peer->name); /* Take the peer */ p->nat = peer->nat; if (p->rtp) { @@ -4547,7 +4555,10 @@ static int check_user(struct sip_pvt *p, struct sip_request *req, char *cmd, cha } free(peer); } - } + } else + if (sip_debug_test_addr(sin)) + ast_verbose("Found no matching peer or user for '%s:%d'\n", inet_ntoa(p->recv.sin_addr), ntohs(p->recv.sin_port)); + } return res; } |