diff options
author | file <file@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-01-21 16:01:00 +0000 |
---|---|---|
committer | file <file@f38db490-d61c-443f-a65b-d21fe96a405b> | 2008-01-21 16:01:00 +0000 |
commit | b59f8fdfbc864479de973d1c9a36536e3533872a (patch) | |
tree | fc547f52dbe99dae3b244a8145b99c3d9f6d7b6c /channels | |
parent | e3dc6b3dffceaaa86697ee4accde5b787e826550 (diff) |
Bump the buffer size for Via headers up to 512. There are some exceptionally large Via headers out there.
(closes issue #11783)
Reported by: ofirroval
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@99301 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels')
-rw-r--r-- | channels/chan_sip.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c index 76284a3ed..4e5446765 100644 --- a/channels/chan_sip.c +++ b/channels/chan_sip.c @@ -5624,14 +5624,14 @@ static int copy_via_headers(struct sip_pvt *p, struct sip_request *req, const st int start = 0; for (;;) { - char new[256]; + char new[512]; const char *oh = __get_header(orig, field, &start); if (ast_strlen_zero(oh)) break; if (!copied) { /* Only check for empty rport in topmost via header */ - char leftmost[256], *others, *rport; + char leftmost[512], *others, *rport; /* Only work on leftmost value */ ast_copy_string(leftmost, oh, sizeof(leftmost)); @@ -9125,7 +9125,7 @@ static int get_also_info(struct sip_pvt *p, struct sip_request *oreq) /*! \brief check Via: header for hostname, port and rport request/answer */ static void check_via(struct sip_pvt *p, struct sip_request *req) { - char via[256]; + char via[512]; char *c, *pt; struct hostent *hp; struct ast_hostent ahp; |