mirage/ocaml-cohttp — pull request #175 by m2ym (2014-09-09 03:34:24+00:00)
Title: Fix nodrain server handler on Async backend

Making a huge request to Async backend server that never dorain the
request body causes the server handler stuck.

Expecting `Pipe.closed` is wrong in general because a server handler can
close the pipe without draing the request body.

This fix introduces a synchronization variable to make sure reading a
request header after draining the last request body, like Lwt backend
does.