Commit d836c9fe authored by Dan Fandrich's avatar Dan Fandrich
Browse files

url.c: add a compile-time check that CURL_MAX_WRITE_SIZE is large enough

Some code (e.g. Curl_fillreadbuffer) assumes that this buffer is not
exceedingly tiny and will break if it is. This same check is already
done at run time in the CURLOPT_BUFFERSIZE option.
parent b1fa80b8
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -37,7 +37,8 @@ This is just treated as a request, not an order. You cannot be guaranteed to
actually get the given size.

This buffer size is by default \fICURL_MAX_WRITE_SIZE\fP (16kB). The maximum
buffer size allowed to set is \fICURL_MAX_READ_SIZE\fP (512kB).
buffer size allowed to be set is \fICURL_MAX_READ_SIZE\fP (512kB). The minimum
buffer size allowed to be set is 1024.
.SH DEFAULT
CURL_MAX_WRITE_SIZE (16kB)
.SH PROTOCOLS
+9 −0
Original line number Diff line number Diff line
@@ -144,6 +144,15 @@ static unsigned int get_protocol_family(unsigned int protocol);
#define READBUFFER_MAX  CURL_MAX_READ_SIZE
#define READBUFFER_MIN  1024

/* Some parts of the code (e.g. chunked encoding) assume this buffer has at
 * more than just a few bytes to play with. Don't let it become too small or
 * bad things will happen.
 */
#if READBUFFER_SIZE < READBUFFER_MIN
# error READBUFFER_SIZE is too small
#endif


/*
 * Protocol table.
 */