summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--external/neon/UnpackedTarball_neon.mk1
-rw-r--r--external/neon/neon_uri_parse_allow_others.patch22
2 files changed, 23 insertions, 0 deletions
diff --git a/external/neon/UnpackedTarball_neon.mk b/external/neon/UnpackedTarball_neon.mk
index 74ac2eb38c97..725e1916cd28 100644
--- a/external/neon/UnpackedTarball_neon.mk
+++ b/external/neon/UnpackedTarball_neon.mk
@@ -25,6 +25,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,neon,\
external/neon/neon_fix_lock_token_on_if.patch \
external/neon/neon_fix_lock_timeout_windows.patch \
external/neon/neon_fix_sspi_session_timeout.patch \
+ external/neon/neon_uri_parse_allow_others.patch \
))
# vim: set noet sw=4 ts=4:
diff --git a/external/neon/neon_uri_parse_allow_others.patch b/external/neon/neon_uri_parse_allow_others.patch
new file mode 100644
index 000000000000..9de2cf6b9ae7
--- /dev/null
+++ b/external/neon/neon_uri_parse_allow_others.patch
@@ -0,0 +1,22 @@
+diff -ur src/ne_uri.c
+--- src/ne_uri.c 2020-02-07 10:49:58.764417840 +0000
++++ src/ne_uri.c 2020-02-07 10:51:33.675627141 +0000
+@@ -87,7 +87,8 @@
+ #define URI_PCHAR (URI_UNRESERVED | PC | URI_SUBDELIM | CL | AT)
+ /* invented: segchar = pchar / "/" */
+ /* (TKR) WS added */
+-#define URI_SEGCHAR (URI_PCHAR | FS | WS)
++/* also allow OT characters to parse SharePoint 2016 href URIs with unescaped UTF8 */
++#define URI_SEGCHAR (URI_PCHAR | FS | WS | OT)
+ /* query = *( pchar / "/" / "?" ) */
+ #define URI_QUERY (URI_PCHAR | FS | QU)
+ /* fragment == query */
+@@ -237,7 +238,7 @@
+
+ p = s;
+
+- while (uri_lookup(*p) & URI_SEGCHAR)
++ while (uri_lookup(*p) & URI_SEGCHAR && *p != '\0')
+ p++;
+
+ /* => p = [ "?" query ] [ "#" fragment ] */