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 17:01:32 -0500
commit30415944a861b9f025ac68efabbb4eb7774c7491 (patch)
treecc6b08a3ae381cfc759ea7ed3428b5653977673f /third-party
parent057ed94048b591a74322bbdb152e65f567091518 (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