aboutsummaryrefslogtreecommitdiffstats
path: root/channels
diff options
context:
space:
mode:
authorpabelanger <pabelanger@f38db490-d61c-443f-a65b-d21fe96a405b>2010-05-05 19:08:42 +0000
committerpabelanger <pabelanger@f38db490-d61c-443f-a65b-d21fe96a405b>2010-05-05 19:08:42 +0000
commit71861b28abbe98d03c54bb623b1e38edf25c9d99 (patch)
tree0a545f133611d8b7c11f0a8a30508fb16a8631b6 /channels
parentfa72d69ec82b9a1004cde7f019bfdc6af9539366 (diff)
Merged revisions 261314 via svnmerge from
https://origsvn.digium.com/svn/asterisk/trunk ................ r261314 | pabelanger | 2010-05-05 14:43:03 -0400 (Wed, 05 May 2010) | 19 lines Merged revisions 261274 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r261274 | pabelanger | 2010-05-05 12:42:22 -0400 (Wed, 05 May 2010) | 12 lines Registration fix for SIP realtime. Make sure realtime fields are not empty. (closes issue #17266) Reported by: Nick_Lewis Patches: chan_sip.c-realtime.patch uploaded by Nick Lewis (license 657) Tested by: Nick_Lewis, sberney Review: https://reviewboard.asterisk.org/r/643/ ........ ................ git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.2@261315 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels')
-rw-r--r--channels/chan_sip.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 9ae200eb8..84bfd2439 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -23979,19 +23979,23 @@ static struct sip_peer *build_peer(const char *name, struct ast_variable *v, str
}
}
} else if (!strcasecmp(v->name, "defaultip")) {
- if (ast_get_ip(&peer->defaddr, v->value)) {
+ if (!ast_strlen_zero(v->value) && ast_get_ip(&peer->defaddr, v->value)) {
unref_peer(peer, "unref_peer: from build_peer defaultip");
return NULL;
}
} else if (!strcasecmp(v->name, "permit") || !strcasecmp(v->name, "deny")) {
int ha_error = 0;
- peer->ha = ast_append_ha(v->name, v->value, peer->ha, &ha_error);
+ if (!ast_strlen_zero(v->value)) {
+ peer->ha = ast_append_ha(v->name, v->value, peer->ha, &ha_error);
+ }
if (ha_error) {
ast_log(LOG_ERROR, "Bad ACL entry in configuration line %d : %s\n", v->lineno, v->value);
}
} else if (!strcasecmp(v->name, "contactpermit") || !strcasecmp(v->name, "contactdeny")) {
int ha_error = 0;
- peer->contactha = ast_append_ha(v->name + 7, v->value, peer->contactha, &ha_error);
+ if (!ast_strlen_zero(v->value)) {
+ peer->contactha = ast_append_ha(v->name + 7, v->value, peer->contactha, &ha_error);
+ }
if (ha_error) {
ast_log(LOG_ERROR, "Bad ACL entry in configuration line %d : %s\n", v->lineno, v->value);
}