Branch: Tag:

2018-06-13

2018-06-13 14:20:24 by Henrik Grubbström (Grubba) <grubba@grubba.org>

Testsuite [WebDAV]: Use keep-alive.

Fixes multiple issues on Solaris with the WebDAV testsuite.

* Support multiple Protocol objects for the same URL
(on Solaris there is one Protocol object each for IPv4 and IPv4).

* Fixed some failures "I/O error: Address already in use", by
using HTTP keep-alive for the WebDAV requests.
These failures were in part due to Solaris holding closed TCP
connections in TIME_WAIT for 4 minutes (Linux 2 minutes).

* Also a workaround for Protocols.HTTP.Query not handling the
HEAD method in keep-alive replies.

109:    headers += extra_headers;    }    +  if (upper_case(method) == "HEAD") { +  // Workaround for bug in Protocols.HTTP.Query. +  headers["connection"] = "close"; +  } +     array(string) lock_paths = ({ path });       // Convert the fake header "new-uri" into a proper "destination" header.