Branch: Tag:


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

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.

23:    mapping(string:string) base_headers = ([    "host": base_uri->host,    "user-agent": "Roxen WebDAV Tester", +  "connection": "keep-alive",    ]);    WebdavTest testsuite =    WebdavTest(webdav_mount_point, base_uri, base_headers, "testdir"+count++);