summaryrefslogtreecommitdiff
path: root/third-party
diff options
context:
space:
mode:
authorGeorge Joseph <gjoseph@digium.com>2016-04-28 15:54:07 -0600
committerGeorge Joseph <gjoseph@digium.com>2016-04-28 15:54:07 -0600
commit719ece5659e166df7006d2fd3afdb83235022052 (patch)
tree652401d178cf0d4b0576ba5f53ac4ccc47c02968 /third-party
parent86fb803257586f670799de19b1585bb65be991d8 (diff)
pjproject_bundled: Disable PJSIP_UNESCAPE_IN_PLACE
When pjsip_parse_uri is called with PJSIP_UNESCAPE_IN_PLACE enabled, the input uri string will become corrupted if it contains escape sequences. It's not possible to automatically strdup or strdupa the input string because the output uri pj_str_t's will have pointers to chunks of the input string. Getting around this would require more memory management code and wouldn't be worth the savings of doing the unescape in place. ASTERISK-25970 #close Reported-by: Dmitriy Serov Change-Id: I28dc0e599b5108f7959b9c46dc8278371b372f88
Diffstat (limited to 'third-party')
-rw-r--r--third-party/pjproject/patches/config_site.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/third-party/pjproject/patches/config_site.h b/third-party/pjproject/patches/config_site.h
index 840d8b279..8e854b723 100644
--- a/third-party/pjproject/patches/config_site.h
+++ b/third-party/pjproject/patches/config_site.h
@@ -28,7 +28,11 @@
#define PJSIP_SAFE_MODULE 0
#define PJ_HAS_STRICMP_ALNUM 0
#define PJ_HASH_USE_OWN_TOLOWER 1
-#define PJSIP_UNESCAPE_IN_PLACE 1
+/*
+ It is imperative that PJSIP_UNESCAPE_IN_PLACE remain 0 or undefined.
+ Enabling it will result in SEGFAULTS when URIs containing escape sequences are encountered.
+*/
+#undef PJSIP_UNESCAPE_IN_PLACE
#define PJSIP_MAX_PKT_LEN 6000
#undef PJ_TODO