download.lst                                      |    4 +-
 external/neon/UnpackedTarball_neon.mk             |    9 -----
 external/neon/configs/config.h                    |   12 +++----
 external/neon/neon.patch                          |    2 -
 external/neon/neon_fix_lock_timeout_windows.patch |   37 ----------------------
 external/neon/neon_fix_lock_token_on_if.patch     |   20 +++++------
 external/neon/neon_fix_sspi_session_timeout.patch |   22 -------------
 external/neon/neon_ne_set_request_flag.patch      |   11 ------
 external/neon/neon_uri_parse_allow_others.patch   |   23 -------------
 external/neon/ubsan.patch                         |   11 ------
 ucb/source/ucp/webdav-neon/NeonSession.cxx        |    1 
 11 files changed, 20 insertions(+), 132 deletions(-)

New commits:
commit 07379e0eb27de0c16ae3838532310aa5aec4f20f
Author:     Jan-Marek Glogowski <glo...@fbihome.de>
AuthorDate: Wed Mar 25 22:09:46 2020 +0100
Commit:     Jan-Marek Glogowski <glo...@fbihome.de>
CommitDate: Sun May 31 11:50:42 2020 +0200

    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 <glo...@fbihome.de>

diff --git a/download.lst b/download.lst
index 122a94da787a..1be7fb4d8b8c 100644
--- a/download.lst
+++ b/download.lst
@@ -191,8 +191,8 @@ export MWAW_VERSION_MICRO := 16
 export MWAW_TARBALL := libmwaw-0.3.$(MWAW_VERSION_MICRO).tar.xz
 export MYTHES_SHA256SUM := 
1e81f395d8c851c3e4e75b568e20fa2fa549354e75ab397f9de4b0e0790a305f
 export MYTHES_TARBALL := a8c2c5b8f09e7ede322d5c602ff6a4b6-mythes-1.2.4.tar.gz
-export NEON_SHA256SUM := 
db0bd8cdec329b48f53a6f00199c92d5ba40b0f015b153718d1b15d3d967fbca
-export NEON_TARBALL := neon-0.30.2.tar.gz
+export NEON_SHA256SUM := 
c9dfcee723050df37ce18ba449d7707b78e7ab8230f3a4c59d9112e17dc2718d
+export NEON_TARBALL := neon-0.31.1.tar.gz
 export NSS_SHA256SUM := 
07d4276168f59bb3038c7826dabb5fbfbab8336ddf65e4e6e43bce89ada78c64
 export NSS_TARBALL := nss-3.47.1-with-nspr-4.23.tar.gz
 export ODFGEN_SHA256SUM := 
2c7b21892f84a4c67546f84611eccdad6259875c971e98ddb027da66ea0ac9c2
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 "n...@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
diff --git a/ucb/source/ucp/webdav-neon/NeonSession.cxx 
b/ucb/source/ucp/webdav-neon/NeonSession.cxx
index 8ea1db57e5cb..fca9b15609e0 100644
--- a/ucb/source/ucp/webdav-neon/NeonSession.cxx
+++ b/ucb/source/ucp/webdav-neon/NeonSession.cxx
@@ -831,6 +831,7 @@ void NeonSession::Init()
                          std::max( nReadTimeoutMin,
                                    std::min( nReadTimeout, nReadTimeoutMax ) ) 
);
 
+    ne_set_session_flag(m_pHttpSession, NE_SESSFLAG_SHAREPOINT, 1);
 }
 
 bool NeonSession::CanUse( const OUString & inUri,
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to