summaryrefslogtreecommitdiff
path: root/lib/dynbuf.h
Commit message (Collapse)AuthorAgeFilesLines
* dynbuf: bump the max HTTP request to 1MBDaniel Stenberg2021-03-061-2/+2
| | | | | | | | Raised from 128KB to allow longer request headers. Reported-by: Carl Zogheib Fixes #6681 Closes #6685
* curl.se: new homeDaniel Stenberg2020-11-041-1/+1
| | | | Closes #6172
* imap: make imap_send use dynbuf for the send buffer managementDaniel Stenberg2020-09-251-0/+1
| | | | | | Reuses the buffer and thereby reduces number of mallocs over a transfer. Closes #6010
* dynbuf: add Curl_dyn_vaddfDaniel Stenberg2020-09-231-0/+4
| | | | Closes #6004
* dynbuf: make *addf() not require extra mallocsDaniel Stenberg2020-09-231-0/+4
| | | | | | | | | | | | ... by introducing a printf() function that appends directly into a dynbuf: Curl_dyn_vprintf(). This avoids the mandatory extra malloc so if the buffer is already big enough it can just printf directly into it. Since this less-malloc version requires tthe use of a library internal printf function, we only provide this version when building libcurl and not for the dynbuf code that is used when building the curl tool. Closes #5998
* dynbuf: provide curlx_ names for reuse by the curl toolDaniel Stenberg2020-09-141-0/+16
| | | | Closes #5946
* h2: repair trailer handlingDaniel Stenberg2020-08-031-2/+2
| | | | | | | | | | | | | The previous h2 trailer fix in 54a2b63 was wrong and caused a regression: it cannot deal with trailers immediately when read since they may be read off the connection by the wrong 'data' owner. This change reverts the logic back to gathering all trailers into a single buffer, like before 54a2b63. Reported-by: Tadej Vengust Fixes #5663 Closes #5769
* terminology: call them null-terminated stringsDaniel Stenberg2020-06-281-1/+1
| | | | | | | | | | | Updated terminology in docs, comments and phrases to refer to C strings as "null-terminated". Done to unify with how most other C oriented docs refer of them and what users in general seem to prefer (based on a single highly unscientific poll on twitter). Reported-by: coinhubs on github Fixes #5598 Closes #5608
* trailers: switch h1-trailer logic to use dynbufDaniel Stenberg2020-06-051-0/+1
| | | | | | In the continued effort to remove "manual" realloc schemes. Closes #5524
* http2: simplify and clean up trailer handlingDaniel Stenberg2020-05-071-1/+1
| | | | | | | | | | | | Triggered by a crash detected by OSS-Fuzz after the dynbuf introduction in ed35d6590e72. This should make the trailer handling more straight forward and hopefully less error-prone. Deliver the trailer header to the callback already at receive-time. No longer caches the trailers to get delivered at end of stream. Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=22030 Closes #5348
* quiche: enable qlog outputDaniel Stenberg2020-05-051-1/+1
| | | | | | | | | | | | | | | quiche has the potential to log qlog files. To enable this, you must build quiche with the qlog feature enabled `cargo build --features qlog`. curl then passes a file descriptor to quiche, which takes ownership of the file. The FD transfer only works on UNIX. The convention is to enable logging when the QLOGDIR environment is set. This should be a path to a folder where files are written with the naming template <SCID>.qlog. Co-authored-by: Lucas Pardue Replaces #5337 Closes #5341
* http_proxy: ported to use dynbuf instead of a static size bufferDaniel Stenberg2020-05-041-0/+1
| | | | Removes a 16K static buffer from the easy handle. Simplifies the code.
* dynbuf: introduce internal generic dynamic buffer functionsDaniel Stenberg2020-05-041-0/+61
A common set of functions instead of many separate implementations for creating buffers that can grow when appending data to them. Existing functionality has been ported over. In my early basic testing, the total number of allocations seem at roughly the same amount as before, possibly a few less. See docs/DYNBUF.md for a description of the API. Closes #5300