Commit graph

12827 commits

Author SHA1 Message Date
Kevin Adler
9234547c34
gskit: Fix errors from Curl_strerror refactor
2f0bb864c1 replaced sterror with Curl_strerror, but the strerror buffer
shadows the set_buffer "buffer" parameter. To keep consistency with the
other functions that use Curl_strerror, rename the parameter.

In addition, strerror.h is needed for the definition of STRERROR_LEN.

Closes #8454
2022-02-16 09:27:22 +01:00
Marcel Raad
897e8baa54
ntlm: remove unused feature defines
They're not used anymore and always supported.

Closes https://github.com/curl/curl/pull/8453
2022-02-15 14:12:41 +01:00
Jay Satiro
ea67337684 h2h3: fix compiler warning due to function prototype mismatch
- Add missing const qualifier in Curl_pseudo_headers declaration.
2022-02-14 16:45:14 -05:00
Stefan Eissing
70ac27604a
urlapi: handle "redirects" smarter
- avoid one malloc when setting a new url via curl_url_set()
    and CURLUPART_URL.
  - extract common pattern into a new static function.

Closes #8450
2022-02-14 17:56:58 +01:00
Daniel Stenberg
6dd8d7f349
connect: follow-up fix the copyright year 2022-02-13 12:13:45 +01:00
MAntoniak
06eb208126
misc: remove unused data when IPv6 is not supported
Closes #8430
2022-02-13 12:08:50 +01:00
Daniel Stenberg
f670665419
quiche: handle stream reset
A stream reset now causes a CURLE_PARTIAL_FILE error. I'm not convinced
this is the right action nor the right error code.

Reported-by: Lucas Pardue
Fixes #8437
Closes #8440
2022-02-13 11:48:32 +01:00
Daniel Stenberg
c8e8791d2d
mime: use a define instead of the magic number 24
MIME_BOUNDARY_DASHES is now the number of leading dashes in the
generated boundary string.

Closes #8441
2022-02-13 11:46:18 +01:00
Henrik Holst
65c6e37fe3
hostcheck: reduce strlen calls on chained certificates
Closes #8428
2022-02-13 11:42:47 +01:00
Patrick Monnerat
0bd50335fe
mime: some more strlen() call removals.
Closes #8423
2022-02-13 11:40:40 +01:00
Daniel Stenberg
c3331a029c
url: exclude zonefrom_url when no ipv6 is available
Closes #8439
2022-02-11 23:27:47 +01:00
Daniel Stenberg
7e65d91071
if2ip: make Curl_ipv6_scope a blank macro when IPv6-disabled
Closes #8439
2022-02-11 23:27:37 +01:00
Henrik Holst
186340c9cd
mprintf: remove strlen calls on empty strings in dprintf_formatf
Turns out that in dprintf_formatf we did a strlen on empty strings, a
bit strange is how common this actually is, 24 alone when doing a simple
GET from https://curl.se

Closes #8427
2022-02-11 23:07:34 +01:00
Daniel Stenberg
e1667a61ea
wolfssl: return CURLE_AGAIN for the SSL_ERROR_NONE case
Closes #8431
2022-02-11 12:36:52 +01:00
Daniel Stenberg
327ef30530
wolfssl: when SSL_read() returns zero, check the error
Returning zero indicates end of connection, so if there's no data read
but the connection is alive, it needs to return -1 with CURLE_AGAIN.

Closes #8431
2022-02-11 10:48:52 +01:00
Daniel Stenberg
96f85a0fef
quiche: after leaving h3_recving state, poll again
This could otherwise easily leave libcurl "hanging" after the entire
transfer is done but without noticing the end-of-transfer signal.

Assisted-by: Lucas Pardue
Closes #8436
2022-02-11 10:07:24 +01:00
Daniel Stenberg
6883180fa5
quiche: when *recv_body() returns data, drain it before polling again
Assisted-by: Lucas Pardue

Closes #8429
2022-02-11 08:48:30 +01:00
Daniel Stenberg
836d3ccfe4
lib/h2h3: #ifdef on ENABLE_QUIC, not the wrong define
Otherwise the build fails when H3 is enabled but the build doesn't
include nghttp2.

Closes #8424
2022-02-10 15:12:02 +01:00
Daniel Stenberg
d15692ebba
hostcheck: pass in pattern length too, to avoid a strlen call
Removes one strlen() call per SAN name in a cert-check.

Closes #8418
2022-02-10 08:53:34 +01:00
HenrikHolst
9bc3cebc92
misc: remove strlen for Curl_checkheaders + Curl_checkProxyheaders
Closes #8409
2022-02-10 08:51:06 +01:00
Daniel Stenberg
f9d1b25011
mqtt: free 'sendleftovers' in disconnect
Fix a memory-leak

Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=43646
Closes #8415
2022-02-09 14:43:32 +01:00
Patrick Monnerat
d9c61a9792
openldap: pass string length arguments to client_write()
This uses the new STRCONST() macro and saves 2 strlen() calls on short
string constants per LDIF output line.

Closes #8404
2022-02-09 13:57:35 +01:00
HenrikHolst
b807219292
misc: reduce strlen() calls with Curl_dyn_add()
Use STRCONST() to switch from Curl_dyn_add() to Curl_dyn_addn() for
string literals.

Closes #8398
2022-02-09 13:52:47 +01:00
Daniel Stenberg
2a1951519e
http2: fix the array copy to nghttp2_nv
Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=44517
Follow-up to 9f985a11e7
Closes #8414
2022-02-09 12:18:50 +01:00
Daniel Stenberg
5c55fe6df6
h2h3: pass correct argument types to infof()
Detected by Coverity. CID 1497993

Closes #8401
2022-02-08 10:15:22 +01:00
Daniel Stenberg
93767237c4
lib/Makefile: remove config-tpf.h from the dist
Follow-up from da15443ddd. Missed before because the 'distcheck'
CI job was not working as intended.

Reported-by: Marcel Raad
Bug: https://curl.se/mail/lib-2022-02/0070.html
Closes #8403
2022-02-08 10:03:06 +01:00
Daniel Stenberg
ff4bf6bfb5
configure: remove support for "embedded ares"
In March 2010 (commit 4259d2df7d) we removed the embedded 'ares'
directory from the curl source tree but we have since supported
especially detecting and using that build directory. The time has come
to remove that kludge and ask users to specify the c-ares dir correctly
with --enable-ares.

Closes #8397
2022-02-07 23:27:57 +01:00
HenrikHolst
4028892f14
http: make Curl_compareheader() take string length arguments too
Also add STRCONST, a macro that returns a string literal and it's length
for functions that take "string,len"

Removes unnecesary calls to strlen().

Closes #8391
2022-02-07 14:37:58 +01:00
Daniel Stenberg
a42677f0d8
vquic/vquic.h: removed the unused H3 psuedo defines 2022-02-07 13:56:06 +01:00
Daniel Stenberg
4ab3ed0729
ngtcp2: use Curl_pseudo_headers 2022-02-07 13:56:06 +01:00
Daniel Stenberg
3fa405bb58
quiche: use Curl_pseudo_headers 2022-02-07 13:56:06 +01:00
Daniel Stenberg
9f985a11e7
http2: use Curl_pseudo_headers 2022-02-07 13:56:06 +01:00
Daniel Stenberg
f8c3724aa9
h2h3: added Curl_pseudo_headers()
For use with both http2 and http3 requests.
2022-02-07 13:56:06 +01:00
Daniel Stenberg
79731d1a6c
ngtcp2/quiche: make :scheme possible to set 2022-02-07 13:56:06 +01:00
Daniel Stenberg
c85178a94c
http2: allow CURLOPT_HTTPHEADER change ":scheme"
The only h2 psuedo header that wasn't previously possible to change by a
user. This change also makes it impossible to send a HTTP/1 header that
starts with a colon, which I don't think anyone does anyway.

The other pseudo headers are possible to change indirectly by doing the
rightly crafted request.

Reported-by: siddharthchhabrap on github
Fixes #8381
Closes #8393
2022-02-07 13:55:57 +01:00
Daniel Stenberg
136f3e9d68
h2/h3: provide and refer to pseudo headers as defines
... and do sizeof() on the defines to use constants better.

Closes #8389
2022-02-05 11:08:43 +01:00
MAntoniak
793614b589
smb: passing a socket for writing and reading data instead of FIRSTSOCKET
Closes #8383
2022-02-05 00:15:22 +01:00
Daniel Stenberg
27614355bf
x509asn1: toggle off functions not needed for diff tls backends
... and clean the header file from private defines/structs (move to C
file) and unused function prototypes.

Closes #8386
2022-02-05 00:11:34 +01:00
Daniel Stenberg
9478a97035
lib: move hostcheck and x509sn1 sources to vtls/
... since they are used strictly by TLS code.

Closes #8386
2022-02-05 00:11:33 +01:00
Marcel Raad
9f1d29ecac
version_win32: fix warning for CURL_WINDOWS_APP
The build version is not supported by the UWP code.

Closes https://github.com/curl/curl/pull/8385
2022-02-04 17:34:27 +01:00
Daniel Stenberg
2610142139
lib: remove support for CURL_DOES_CONVERSIONS
TPF was the only user and support for that was dropped.

Closes #8378
2022-02-04 08:05:35 +01:00
Daniel Stenberg
da15443ddd
TPF: drop support
There has been no TPF related changes done since September 2010 (commit
7e1a45e224) and since this is a platform that is relatively different
than many others (== needs attention), I draw the conclusion that this
build is broken since a long time.

Closes #8378
2022-02-04 08:05:35 +01:00
HenrikHolst
a121e8dac6
setopt: do bounds-check before strdup
Curl_setstropt() allocated memory for the string before checking if the
string was within bounds. The bounds check should be done first.

Closes #8377
2022-02-03 09:40:03 +01:00
MAntoniak
2cd6d7e462
mbedtls: enable use of mbedtls without filesystem functions support
Closes #8376
2022-02-03 09:39:11 +01:00
HenrikHolst
9fe2a20b1c urlapi: remove an unnecessary call to strlen
- Use strcpy instead of strlen+memcpy to copy the url path.

Ref: https://curl.se/mail/lib-2022-02/0006.html

Closes https://github.com/curl/curl/pull/8370
2022-02-01 15:43:45 -05:00
Daniel Stenberg
1bf3643f7b
vxworks: drop support
No changes or fixes in vxworks related code since 2009 leads me to
believe that this doesn't work anymore.

Closes #8362
2022-02-01 16:18:39 +01:00
Henrik Holst
0d370ecbfe
base64: remove an unnecessary call to strlen
Closes #8369
2022-02-01 16:09:49 +01:00
Sebastian Sterk
c6218f3723
multi: grammar fix in comment
After 'must', the verb is used without 'to'. Correct: "must" or "have
to"

Closes #8368
2022-02-01 09:37:26 +01:00
Daniel Stenberg
5236ed0e42
openldap: fix compiler warning when built without SSL support
openldap.c:841:52: error: unused parameter ‘data’ [-Werror=unused-parameter]

Closes #8367
2022-02-01 09:14:35 +01:00
Daniel Stenberg
3b16575ae9
netware: remove support
There are no current users and no Netware related changes done in the
code for over 13 years is a clear sign this is abandoned.

Closes #8358
2022-01-31 13:40:26 +01:00