summaryrefslogtreecommitdiff
path: root/third-party
diff options
context:
space:
mode:
authorMark Michelson <mmichelson@digium.com>2017-04-13 17:16:42 -0500
committerMatthew Fredrickson <creslin@digium.com>2017-05-19 11:18:14 -0500
commit2bb98d8faca2b0b3b2d5f9554ac53cc09f17cd44 (patch)
tree69dc3c4616067bcaeea48f310d3f9e33bbb27862 /third-party
parente74c48a46fd65a02ec98440b789ebebd2d8ed1d1 (diff)
AST-2017-002: Ensure transaction key buffer is large enough.
ASTERISK-26938 #close Change-Id: I266490792fd8896a23be7cb92f316b7e69356413
Diffstat (limited to 'third-party')
-rw-r--r--third-party/pjproject/patches/0059-Ensure-2543-transaction-key-buffer-is-large-enough.patch29
1 files changed, 29 insertions, 0 deletions
diff --git a/third-party/pjproject/patches/0059-Ensure-2543-transaction-key-buffer-is-large-enough.patch b/third-party/pjproject/patches/0059-Ensure-2543-transaction-key-buffer-is-large-enough.patch
new file mode 100644
index 000000000..eb5a7db73
--- /dev/null
+++ b/third-party/pjproject/patches/0059-Ensure-2543-transaction-key-buffer-is-large-enough.patch
@@ -0,0 +1,29 @@
+From b5f0f8868363c482a2c4ce343e3ee6ad256b0708 Mon Sep 17 00:00:00 2001
+From: Mark Michelson <mmichelson@digium.com>
+Date: Thu, 13 Apr 2017 16:20:07 -0500
+Subject: [PATCH] Ensure 2543 transaction key buffer is large enough.
+
+The CSeq method length needs to be factored into the allocated buffer
+length. Otherwise, the buffer may not be large enough to accommodate the
+entire key.
+---
+ pjsip/src/pjsip/sip_transaction.c | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/pjsip/src/pjsip/sip_transaction.c b/pjsip/src/pjsip/sip_transaction.c
+index c1750dc..2200d8d 100644
+--- a/pjsip/src/pjsip/sip_transaction.c
++++ b/pjsip/src/pjsip/sip_transaction.c
+@@ -288,7 +288,8 @@ static pj_status_t create_tsx_key_2543( pj_pool_t *pool,
+ host = &rdata->msg_info.via->sent_by.host;
+
+ /* Calculate length required. */
+- len_required = 9 + /* CSeq number */
++ len_required = method->name.slen + /* Method */
++ 9 + /* CSeq number */
+ rdata->msg_info.from->tag.slen + /* From tag. */
+ rdata->msg_info.cid->id.slen + /* Call-ID */
+ host->slen + /* Via host. */
+--
+1.9.1
+