[Libreoffice-commits] core.git: Branch 'distro/cib/libreoffice-6-1' - 2 commits - configure.ac external/neon

Thorsten Behrens (via logerrit) logerrit at kemper.freedesktop.org
Fri Dec 20 21:18:55 UTC 2019


Rebased ref, commits from common ancestor:
commit 5b64e4e64bf2696b164e59da7372ebb0aecab8b2
Author:     Thorsten Behrens <Thorsten.Behrens at CIB.de>
AuthorDate: Fri Dec 20 22:17:33 2019 +0100
Commit:     Thorsten Behrens <Thorsten.Behrens at CIB.de>
CommitDate: Fri Dec 20 22:17:33 2019 +0100

    Bump version to 6.1.7.8
    
    Change-Id: I1237c4502d5b7f46fc510fce00377c8cce8dbcf0

diff --git a/configure.ac b/configure.ac
index 92ef5852cc86..6bd8da094b2e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -9,7 +9,7 @@ dnl in order to create a configure script.
 # several non-alphanumeric characters, those are split off and used only for the
 # ABOUTBOXPRODUCTVERSIONSUFFIX in openoffice.lst. Why that is necessary, no idea.
 
-AC_INIT([LibreOffice powered by CIB],[6.1.7.7],[],[],[https://libreoffice.cib.eu/])
+AC_INIT([LibreOffice powered by CIB],[6.1.7.8],[],[],[https://libreoffice.cib.eu/])
 
 AC_PREREQ([2.59])
 
commit 56a7cf2a4c54f535b185d76497e591433bdb654e
Author:     Thorsten Behrens <Thorsten.Behrens at CIB.de>
AuthorDate: Fri Dec 20 07:03:47 2019 +0100
Commit:     Thorsten Behrens <Thorsten.Behrens at CIB.de>
CommitDate: Fri Dec 20 22:09:32 2019 +0100

    tdf#129519 Fix crash during WebDAV lock refresh
    
    - NeonSession is shared amongst several files (if on the same server
      instance)
      - there's explicit code in DAVSessionFactory::createDAVSession()
        to share sessions for same host/target
    - so then after a while, locks get refreshed, and session timeout
      hits
    - first lock -> no prob, ne_auth.c:ah_post_send() has
      auth_challenge() failing, returning error, which puts that lock
      into m_aRemoveDeferred list
    - _but_ ah_post_send() then does a clean_session(), and the next
      lock refresh from the same session hits NULLPTR session host
    
    -> so let's delay any sspi_host cleanup until session object gets
       freed, instead of just cleaned
    
    Change-Id: Ie257310c47913aef9fcfec92c1722d64b28c4f89
    Reviewed-on: https://gerrit.libreoffice.org/85614
    Tested-by: Jenkins
    Reviewed-by: Thorsten Behrens <Thorsten.Behrens at CIB.de>

diff --git a/external/neon/UnpackedTarball_neon.mk b/external/neon/UnpackedTarball_neon.mk
index dacf425fa80f..74ac2eb38c97 100644
--- a/external/neon/UnpackedTarball_neon.mk
+++ b/external/neon/UnpackedTarball_neon.mk
@@ -24,6 +24,7 @@ $(eval $(call gb_UnpackedTarball_add_patches,neon,\
 	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 \
 ))
 
 # vim: set noet sw=4 ts=4:
diff --git a/external/neon/neon_fix_sspi_session_timeout.patch b/external/neon/neon_fix_sspi_session_timeout.patch
new file mode 100644
index 000000000000..5003fda35022
--- /dev/null
+++ b/external/neon/neon_fix_sspi_session_timeout.patch
@@ -0,0 +1,22 @@
+--- 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);
+ }
+ 


More information about the Libreoffice-commits mailing list