summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorGarrett D'Amore <garrett@damore.org>2018-11-01 23:41:53 -0700
committerGarrett D'Amore <garrett@damore.org>2018-11-02 20:57:08 -0700
commitdb92342b43d429b8b07244cc003a8589a1b1c542 (patch)
tree5624a3142b8309257ff523b0bf85343bee08033d /docs
parent156604bd07ee60faa323968c71627f1c701b473a (diff)
downloadnng-db92342b43d429b8b07244cc003a8589a1b1c542.tar.gz
nng-db92342b43d429b8b07244cc003a8589a1b1c542.tar.bz2
nng-db92342b43d429b8b07244cc003a8589a1b1c542.zip
fixes #682 Support for Chunked Transfer Coding
This is the client side only, although the work is structured to support server applications. The chunked API is for now private, although the intent to is to make it public for applications who really want to use it. Note that chunked transfer encoding puts data through extra copies. First it copies through the buffering area (because I have to be able to extract variable length strings from inside the data stream), and then again to reassemble the chunks into a single unified object. We do assume that the user wants the entire thing as a single object. This means that using this to pull unbounded data will just silently consume all memory. Use caution!
Diffstat (limited to 'docs')
-rw-r--r--docs/man/nng_http_conn_transact.3http.adoc7
-rw-r--r--docs/man/nng_http_handler_collect_body.3http.adoc2
2 files changed, 2 insertions, 7 deletions
diff --git a/docs/man/nng_http_conn_transact.3http.adoc b/docs/man/nng_http_conn_transact.3http.adoc
index bd41f659..a38592b6 100644
--- a/docs/man/nng_http_conn_transact.3http.adoc
+++ b/docs/man/nng_http_conn_transact.3http.adoc
@@ -48,11 +48,6 @@ exists.
That function behaves similarily, but creates a connection on demand
for the transaction, and disposes of it when finished.
-NOTE: This function does not support reading data sent using chunked
-transfer encoding, and if the server attempts to do so, the underlying
-connection will be closed and an `NNG_ENOTSUP` error will be returned.
-This limitation is considered a bug, and a fix is planned for the future.
-
WARNING: If the remote server tries to send an extremely large buffer,
then a corresponding allocation will be made, which can lead to denial
of service attacks.
@@ -79,7 +74,7 @@ None.
`NNG_ECLOSED`:: The connection was closed.
`NNG_ECONNRESET`:: The peer closed the connection.
`NNG_ENOMEM`:: Insufficient free memory to perform the operation.
-`NNG_ENOTSUP`:: HTTP operations are not supported, or peer sent chunked encoding.
+`NNG_ENOTSUP`:: HTTP operations are not supported.
`NNG_EPROTO`:: An HTTP protocol error occurred.
`NNG_ETIMEDOUT`:: Timeout waiting for data from the connection.
diff --git a/docs/man/nng_http_handler_collect_body.3http.adoc b/docs/man/nng_http_handler_collect_body.3http.adoc
index 875f32c4..273f8dc6 100644
--- a/docs/man/nng_http_handler_collect_body.3http.adoc
+++ b/docs/man/nng_http_handler_collect_body.3http.adoc
@@ -58,7 +58,7 @@ If this header is absent, the request is assumed not to contain any data.
NOTE: This specifically does not support the `Chunked` transfer-encoding.
This is considered a bug, and is a deficiency for full HTTP/1.1 compliance.
However, few clients send data in this format, so in practice this should
-not create few limitations.
+create few limitations.
== RETURN VALUES