[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[MirageOS-devel] Cohttp chunked transfer

We're looking into the OCaml cohttp library.  We want to build a simple REST-server based on top of it.  We'd be using it to transfer large quantities of data.  The cohttp library in this case will need to fall back to chunked transfer.

We dug a bit around in the source code and we suspect that chunked transfer is broken.  It seems unable to distinguish between a POST that failed while doing chunked transfer encoding because the client terminated the connection prematurely and a POST that successfully finished?  When checking out the code in Transfer_io.Chunked it seems that both cases end with a 'Done' value. 

There also seems to be a Final_chunk value but that's only used in the Transfer_io.Fixed module. I would have expected this Final_chunk constructor to be used when the last line of a chunked transfer encoding is encountered (reading a line containing '0' basically), but that doesn't seem to be the case.

Any suggestions?


HGST E-mail Confidentiality Notice & Disclaimer:
This e-mail and any files transmitted with it may contain confidential or legally privileged information of HGST and are intended solely for the use of the individual or entity to which they are addressed. If you are not the intended recipient, any disclosure, copying, distribution or any action taken or omitted to be taken in reliance on it, is prohibited.  If you have received this e-mail in error, please notify the sender immediately and delete the e-mail in its entirety from your system.

MirageOS-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.