summaryrefslogtreecommitdiff
path: root/external
diff options
context:
space:
mode:
authorJan-Marek Glogowski <glogow@fbihome.de>2020-03-25 22:09:46 +0100
committerJan-Marek Glogowski <glogow@fbihome.de>2020-05-31 11:50:42 +0200
commit07379e0eb27de0c16ae3838532310aa5aec4f20f (patch)
treec8701bce49f47c277b83b50579562a6436d26af6 /external
parent2047a5978ac8188e61da9cd3b2f40d86df5570bb (diff)
neon: upgrade to release 0.31.1
Drops some of the LO patches upstreamed since 0.31.0. Version 0.31.0 introduced an new session flag for MS SharePoint compatibility, NE_SESSFLAG_SHAREPOINT, which enables a few workarounds, where SharePoint breaks the WebDAV RFCs. In 0.31.1 a compiler warning and the MD5 ABI break introduced in 0.31.0 are fixed, so LO can now update neon. Change-Id: Ia79ce530271664c0e6bab30a5e2516319da328d8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91070 Tested-by: Jenkins Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
Diffstat (limited to 'external')
-rw-r--r--external/neon/UnpackedTarball_neon.mk9
-rw-r--r--external/neon/configs/config.h12
-rw-r--r--external/neon/neon.patch2
-rw-r--r--external/neon/neon_fix_lock_timeout_windows.patch37
-rw-r--r--external/neon/neon_fix_lock_token_on_if.patch20
-rw-r--r--external/neon/neon_fix_sspi_session_timeout.patch22
-rw-r--r--external/neon/neon_ne_set_request_flag.patch11
-rw-r--r--external/neon/neon_uri_parse_allow_others.patch23
-rw-r--r--external/neon/ubsan.patch11
9 files changed, 17 insertions, 130 deletions
diff --git a/external/neon/UnpackedTarball_neon.mk b/external/neon/UnpackedTarball_neon.mk
index e12d13b6a623..73cdd81f2e18 100644
--- a/external/neon/UnpackedTarball_neon.mk
+++ b/external/neon/UnpackedTarball_neon.mk
@@ -17,19 +17,10 @@ $(eval $(call gb_UnpackedTarball_add_files,neon,src,\
$(eval $(call gb_UnpackedTarball_set_patchlevel,neon,0))
-# For the upstream discussion of neon_uri_parse_allow_others.patch see
-# http://lists.manyfish.co.uk/pipermail/neon/2020-February/001629.html
-# or thread "RfC: Accept SharePoint href IRIs"
-
$(eval $(call gb_UnpackedTarball_add_patches,neon,\
external/neon/neon.patch \
- external/neon/neon_ne_set_request_flag.patch \
external/neon/neon_with_gnutls.patch \
- external/neon/ubsan.patch \
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 \
$(if $(filter WNT,$(OS)),external/neon/neon_fix_no_OPENSSL_Applink.patch) \
))
diff --git a/external/neon/configs/config.h b/external/neon/configs/config.h
index 00252d0abf9e..3f93d1e68132 100644
--- a/external/neon/configs/config.h
+++ b/external/neon/configs/config.h
@@ -1,4 +1,4 @@
-/* Contents kept in sync with config.h.in from neon 0.29.5 */
+/* Contents kept in sync with config.h.in from neon 0.31.1 */
/* Define if building universal (internal helper macro) */
/* #undef AC_APPLE_UNIVERSAL_BUILD */
@@ -370,7 +370,7 @@
#define NEON_IS_LIBRARY 1
/* Define to be the neon version string */
-#define NEON_VERSION "0.29.5"
+#define NEON_VERSION "0.31.1"
/* Define to enable debugging */
/* #undef NE_DEBUGGING */
@@ -432,10 +432,10 @@
#define NE_VERSION_MAJOR (0)
/* Define to be neon library minor version */
-#define NE_VERSION_MINOR (29)
+#define NE_VERSION_MINOR (31)
/* Define to be neon library patch version */
-#define NE_VERSION_PATCH (5)
+#define NE_VERSION_PATCH (1)
/* Define to the address where bug reports for this package should be sent. */
#define PACKAGE_BUGREPORT "neon@webdav.org"
@@ -444,13 +444,13 @@
#define PACKAGE_NAME "neon"
/* Define to the full name and version of this package. */
-#define PACKAGE_STRING "neon 0.29.5"
+#define PACKAGE_STRING "neon 0.31.1"
/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME "neon"
/* Define to the version of this package. */
-#define PACKAGE_VERSION "0.29.5"
+#define PACKAGE_VERSION "0.31.1"
/* The size of `int', as computed by sizeof. */
#define SIZEOF_INT 4
diff --git a/external/neon/neon.patch b/external/neon/neon.patch
index fe106eaa17e0..23aef0d0fe85 100644
--- a/external/neon/neon.patch
+++ b/external/neon/neon.patch
@@ -208,7 +208,7 @@
+
+
+/*
- * Wrapper arround initializeSecurityContext. Supplies several
+ * Wrapper around initializeSecurityContext. Supplies several
* default parameters as well as logging in case of errors.
*/
@@ -483,7 +522,7 @@
diff --git a/external/neon/neon_fix_lock_timeout_windows.patch b/external/neon/neon_fix_lock_timeout_windows.patch
deleted file mode 100644
index 72abde762420..000000000000
--- a/external/neon/neon_fix_lock_timeout_windows.patch
+++ /dev/null
@@ -1,37 +0,0 @@
---- src.origin/ne_locks.c 2007-02-05 11:09:27.000000000 +0100
-+++ src/ne_locks.c 2015-11-11 16:12:11.236849082 +0100
-@@ -33,6 +33,10 @@
- #include <limits.h>
- #endif
-
-+#ifdef HAVE_ERRNO_H
-+#include <errno.h>
-+#endif
-+
- #include <ctype.h> /* for isdigit() */
-
- #include "ne_alloc.h"
-@@ -428,9 +432,21 @@
- if (ne_strcasecmp(timeout, "infinite") == 0) {
- return NE_TIMEOUT_INFINITE;
- } else if (strncasecmp(timeout, "Second-", 7) == 0) {
-- long to = strtol(timeout+7, NULL, 10);
-- if (to == LONG_MIN || to == LONG_MAX)
-+ // according RFC 4918 the value used for lock timeout is unsigned 32 bit
-+ // see: <http://tools.ietf.org/html/rfc4918#section-10.7>
-+ // adapt it to the 'long' used internally by neon instead
-+ errno = 0;
-+ unsigned long to1 = strtoul(timeout+7, NULL, 10);
-+ if (to1 == ULONG_MAX && errno == ERANGE)
- return NE_TIMEOUT_INVALID;
-+ NE_DEBUG(NE_DBG_LOCKS, "Parsed lock timeout: %lu\n", to1);
-+ long to;
-+ // LONG_MAX means around 68 years,
-+ // more than enough for practical use
-+ if (to1 > LONG_MAX)
-+ return LONG_MAX;
-+ else
-+ to = (long)to1;
- return to;
- } else {
- return NE_TIMEOUT_INVALID;
diff --git a/external/neon/neon_fix_lock_token_on_if.patch b/external/neon/neon_fix_lock_token_on_if.patch
index bbe605f40dc6..a60303789f53 100644
--- a/external/neon/neon_fix_lock_token_on_if.patch
+++ b/external/neon/neon_fix_lock_token_on_if.patch
@@ -1,12 +1,12 @@
diff -aru src.origin/ne_locks.c src/ne_locks.c
---- src.origin/ne_locks.c 2007-02-05 11:09:27.000000000 +0100
-+++ src/ne_locks.c 2015-07-29 10:33:55.724753920 +0200
+--- src.origin/ne_locks.c 2007-02-05 11:09:27.000000000 +0100
++++ src/ne_locks.c 2015-07-29 10:33:55.724753920 +0200
@@ -137,7 +137,7 @@
- ne_buffer_czappend(req, "If:");
- for (item = lrc->submit; item != NULL; item = item->next) {
- char *uri = ne_uri_unparse(&item->lock->uri);
-- ne_buffer_concat(req, " <", uri, "> (<",
-+ ne_buffer_concat(req, " (<",
- item->lock->token, ">)", NULL);
- ne_free(uri);
- }
+ }
+ else {
+ char *uri = ne_uri_unparse(&item->lock->uri);
+- ne_buffer_concat(req, " <", uri, "> (<",
++ ne_buffer_concat(req, " (<",
+ item->lock->token, ">)", NULL);
+ ne_free(uri);
+ }
diff --git a/external/neon/neon_fix_sspi_session_timeout.patch b/external/neon/neon_fix_sspi_session_timeout.patch
deleted file mode 100644
index 5003fda35022..000000000000
--- a/external/neon/neon_fix_sspi_session_timeout.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- src/ne_auth.c~ 2019-12-05 15:38:50.246997951 +0100
-+++ src/ne_auth.c 2019-12-20 06:54:31.555836285 +0100
-@@ -300,8 +300,6 @@
- sess->sspi_token = NULL;
- ne_sspi_destroy_context(sess->sspi_context);
- sess->sspi_context = NULL;
-- if (sess->sspi_host) ne_free(sess->sspi_host);
-- sess->sspi_host = NULL;
- #endif
- #ifdef HAVE_NTLM
- if (sess->ntlm_context) {
-@@ -1599,6 +1597,10 @@
- }
-
- clean_session(sess);
-+#ifdef HAVE_SSPI
-+ if (sess->sspi_host) ne_free(sess->sspi_host);
-+ sess->sspi_host = NULL;
-+#endif
- ne_free(sess);
- }
-
diff --git a/external/neon/neon_ne_set_request_flag.patch b/external/neon/neon_ne_set_request_flag.patch
deleted file mode 100644
index 5189406a45a3..000000000000
--- a/external/neon/neon_ne_set_request_flag.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/ne_request.c 2010-09-28 13:57:26.000000000 +0200
-+++ src/ne_request.c 2011-05-18 12:39:05.134445529 +0200
-@@ -585,7 +585,7 @@
-
- void ne_set_request_flag(ne_request *req, ne_request_flag flag, int value)
- {
-- if (flag < (ne_request_flag)NE_SESSFLAG_LAST) {
-+ if (flag < (ne_request_flag)NE_REQFLAG_LAST) {
- req->flags[flag] = value;
- }
- }
diff --git a/external/neon/neon_uri_parse_allow_others.patch b/external/neon/neon_uri_parse_allow_others.patch
deleted file mode 100644
index 7c3540a05bae..000000000000
--- a/external/neon/neon_uri_parse_allow_others.patch
+++ /dev/null
@@ -1,23 +0,0 @@
-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,9 @@
- /* pchar = unreserved / pct-encoded / sub-delims / ":" / "@" */
- #define URI_PCHAR (URI_UNRESERVED | PC | URI_SUBDELIM | CL | AT)
- /* invented: segchar = pchar / "/" */
--#define URI_SEGCHAR (URI_PCHAR | FS)
-+/* allow OT characters to parse SharePoint 2016 href IRIs (breaking the spec
-+ * of href XML Element: "MUST contain a URI or a relative reference." */
-+#define URI_SEGCHAR (URI_PCHAR | FS | 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 ] */
diff --git a/external/neon/ubsan.patch b/external/neon/ubsan.patch
deleted file mode 100644
index 56445fcb7e17..000000000000
--- a/external/neon/ubsan.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- src/ne_compress.c
-+++ src/ne_compress.c
-@@ -81,7 +81,7 @@
- };
-
- /* Convert 'buf' to unsigned int; 'buf' must be 'unsigned char *' */
--#define BUF2UINT(buf) (((buf)[3]<<24) + ((buf)[2]<<16) + ((buf)[1]<<8) + (buf)[0])
-+#define BUF2UINT(buf) (((unsigned)((buf)[3])<<24) + ((buf)[2]<<16) + ((buf)[1]<<8) + (buf)[0])
-
- #define ID1 0x1f
- #define ID2 0x8b