office-gobmx/ucb
Michael Stahl 8e34fe5041 ucb: webdav-curl: don't use chunked encoding for PUT
What happens with Nextcloud:

 CURLINFO_HEADER_OUT: 0xa028408: PUT .../testB.odt HTTP/1.1
User-Agent: LibreOffice 7.3.0.0 curl/7.79.1 NSS/3.71
Accept: */*
Accept-Encoding: deflate, gzip
Transfer-Encoding: chunked
Expect: 100-continue
 debug log: 0xa028408: STATE: DO => DID handle 0xa028408; line 2077 (connection #0)
 debug log: 0xa028408: STATE: DID => PERFORMING handle 0xa028408; line 2196 (connection #0)
 debug log: 0xa028408: HTTP 1.1 or later with persistent connection
 CURLINFO_HEADER_IN: 0xa028408: HTTP/1.1 100 Continue
 debug log: 0xa028408: CURLINFO_DATA_OUT 8357
 debug log: 0xa028408: Signaling end of chunked upload via terminating chunk.
 debug log: 0xa028408: CURLINFO_DATA_OUT 5
 debug log: 0xa028408: Mark bundle as not supporting multiuse
 debug log: 0xa028408: HTTP 1.1 or later with persistent connection
 CURLINFO_HEADER_IN: 0xa028408: HTTP/1.1 201 Created
 CURLINFO_HEADER_IN: 0xa028408: Date: Fri, 19 Nov 2021 16:27:47 GMT
 CURLINFO_HEADER_IN: 0xa028408: Server: Apache
 CURLINFO_HEADER_IN: 0xa028408: Content-Length: 0

... yes, "201 Created" a 0 byte file.

https://github.com/nextcloud/server/issues/7995

Apparently this doesn't happen with header Content-Length: 8347

Change-Id: I3f38d50530a8b6430b27de2525370e1d95705da6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125579
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
2021-11-22 11:26:28 +01:00
..
qa
source ucb: webdav-curl: don't use chunked encoding for PUT 2021-11-22 11:26:28 +01:00
test/com/sun/star/comp/ucb
CppunitTest_ucb_webdav_core.mk
IwyuFilter_ucb.yaml
JunitTest_ucb_complex.mk
JunitTest_ucb_unoapi.mk
Library_cached1.mk
Library_srtrs1.mk
Library_ucb1.mk
Library_ucpcmis1.mk
Library_ucpdav1.mk
Library_ucpexpand1.mk
Library_ucpext.mk
Library_ucpfile1.mk
Library_ucpftp1.mk
Library_ucpgio1.mk
Library_ucphier1.mk
Library_ucpimage.mk
Library_ucppkg1.mk
Library_ucptdoc1.mk
Makefile
Module_ucb.mk
README.md

Universal Content Broker (UCB)

Universal Content Broker (has ucp) which do things like convert files to strings in content broker world.

mmeeks: so - I renamed the old LGPLv3 webdav code to webdav-neon, and imported the (not built) serf webdav ucp into the old space. so that in future, we can merge changes more easily - and still choose which to use. cbosdonnat kindly volunteered to do some comparative analysis of the two codebases to decide which is best for what etc.