All of the calls in libquilt and patchwork to quilt_request_headers() include a LF character at the end. Firstly, this detail should be handled by the implementations, not repeated across the codebase, and secondly it is incorrect. The HTTP specs define the header line seperator (and headers—body—footers seperators) to be CRLF (twice, for seperating envelope components).
The seperator should be moved to the implementations: servers/cli/cli.c and servers/fcgi/fcgi.c, and should be changed to \r\n.
Likewise, all the places where data->headers_sent is set to 1, and a \n emitted, should call a single new function which emits \r\n.
All of the calls in libquilt and patchwork to quilt_request_headers() include a LF character at the end. Firstly, this detail should be handled by the implementations, not repeated across the codebase, and secondly it is incorrect. The HTTP specs define the header line seperator (and headers—body—footers seperators) to be CRLF (twice, for seperating envelope components).
The seperator should be moved to the implementations: servers/cli/cli.c and servers/fcgi/fcgi.c, and should be changed to \r\n.
Likewise, all the places where data->headers_sent is set to 1, and a \n emitted, should call a single new function which emits \r\n.