On 06/06/14 13:39, gregor herrmann wrote: > On Fri, 06 Jun 2014 12:40:36 +0100, Daniel Lintott wrote: > >> Digging into this FTBFS, I've found the problem lies with >> HTTP::Server::Simple which was recently updated. >> >> Installing libhttp-server-simple-perl_0.44-1 from snapshots confirms this. >> >> Somewhere in the new version of HTTP::Server::Simple the first half of >> the URI is being lost. > > Cool, thanks for the analysis. >
Looking at the changelog for HTTP::Server::Simple I've identified the problem code... > 0.45_01 Thu Sep 22 10:10:41 EST 2011 > > * Support full URIs as required by RFC2616 - penfold [rt.cpan.org #69445] This relates to the following code change at line 687 in lib/Server/Simple.pm + # strip <scheme>://<host:port> out of HTTP/1.1 requests + $uri =~ s{^\w+://[^/]+/}{/}; Reading the related bug report [1] I'm not 100% certain that the patch that was applied actually fixed the bug! Now my technical knowledge when it comes to RFCs is somewhat lacking... so I may well be wrong. The bug [1] quotes RFC2616 saying: > "To allow for transition to absoluteURIs in all requests in future versions > of > HTTP, all HTTP/1.1 servers MUST accept the absoluteURI form in requests, even > though HTTP/1.1 clients will only generate them in requests to proxies." The tests that were failing for libhttp-async-perl were specifically in relation operation as a proxy. My initial idea is that the stripping that was introduced shouldn't be applied if the server is running in proxy mode. But I may very well be wrong on this... so I'm open to suggestions from the group. Regards Daniel [1] https://rt.cpan.org/Public/Bug/Display.html?id=69445
signature.asc
Description: OpenPGP digital signature