Details
-
Bug
-
Resolution: Fixed
-
Minor
-
1.0, 1.1, 1.2, 1.3, 1.4
-
None
-
Bit Sprint 1
Description
HTTPS PUT on Apache webdav works fine with certificates verified i both ends, as long as the apache server is configured to require certificate verification in all namespaces on the (virtual) server.
If only a partial namespace (say /dav/) requires certificate verification, the server will fail the request with: 'HTTP/1.1 413 Request Entity Too Large'
The problem boils down to the java http client not being too polite with the server, the problem is explained here: http://stackoverflow.com/questions/14281628/ssl-renegotiation-with-client-certificate-causes-server-buffer-overflow
So to fix this, we need to start using a httpclient that allows for the HTTP header "Expect: 100-continue".
The java ssl library should allow the header in Java 7, so a fix might involve ditching Java 6 support.