summaryrefslogtreecommitdiff
path: root/channels
diff options
context:
space:
mode:
authorRichard Mudgett <rmudgett@digium.com>2011-11-11 18:37:32 +0000
committerRichard Mudgett <rmudgett@digium.com>2011-11-11 18:37:32 +0000
commite48cecc84871f0c17c02739f4db8af338a2a1d5d (patch)
tree62a87d8b9ba61e459b44557998b807108c3f33c1 /channels
parent39beaff425f4d91ba81c2dc9a181ae5571473a02 (diff)
Check sip.conf maxforwards parameter for range 1 <= x <= 255.
JIRA AST-710 ........ Merged revisions 344715 from http://svn.asterisk.org/svn/asterisk/branches/1.8 ........ Merged revisions 344716 from http://svn.asterisk.org/svn/asterisk/branches/10 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@344717 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rw-r--r--channels/chan_sip.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 94f957923..5896e6ed9 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -27939,7 +27939,8 @@ static struct sip_peer *build_peer(const char *name, struct ast_variable *v, str
peer->amaflags = format;
}
} else if (!strcasecmp(v->name, "maxforwards")) {
- if ((sscanf(v->value, "%30d", &peer->maxforwards) != 1) || (peer->maxforwards < 1)) {
+ if (sscanf(v->value, "%30d", &peer->maxforwards) != 1
+ || peer->maxforwards < 1 || 255 < peer->maxforwards) {
ast_log(LOG_WARNING, "'%s' is not a valid maxforwards value at line %d. Using default.\n", v->value, v->lineno);
peer->maxforwards = sip_cfg.default_max_forwards;
}