1
0
mirror of https://github.com/moparisthebest/curl synced 2024-12-24 17:18:48 -05:00
curl/lib
Paul Dreik dda418266c
doh: fix undefined behaviour and open up for gcc and clang optimization
The undefined behaviour is annoying when running fuzzing with
sanitizers. The codegen is the same, but the meaning is now not up for
dispute. See https://cppinsights.io/s/516a2ff4

By incrementing the pointer first, both gcc and clang recognize this as
a bswap and optimizes it to a single instruction.  See
https://godbolt.org/z/994Zpx

Closes #4350
2019-09-15 23:27:45 +02:00
..
vauth sspi: fix memory leaks 2019-09-10 08:06:05 +02:00
vquic Curl_addr2string: take an addrlen argument too 2019-08-31 11:41:56 +02:00
vssh ssh: add a generic Curl_ssh_version function for SSH backends 2019-08-17 16:57:58 +02:00
vtls openssl: close_notify on the FTP data connection doesn't mean closure 2019-09-13 00:10:47 +02:00
.gitattributes
.gitignore
altsvc.c altsvc: make it use h3-22 with ngtcp2 as well 2019-08-12 22:30:58 +02:00
altsvc.h alt-svc: add protocol version selection masking 2019-08-08 09:10:29 +02:00
amigaos.c configure: add --with-amissl 2019-03-15 10:22:42 +01:00
amigaos.h configure: add --with-amissl 2019-03-15 10:22:42 +01:00
arpa_telnet.h travis: add build for "configure --disable-verbose" 2018-10-18 14:51:49 +02:00
asyn-ares.c cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
asyn-thread.c asyn-thread: s/AF_LOCAL/AF_UNIX for Solaris 2019-09-12 09:37:11 +02:00
asyn.h cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
base64.c base64: check for SSH, not specific SSH backends 2019-08-17 16:57:56 +02:00
checksrc.pl checksrc: add COPYRIGHTYEAR check 2018-12-03 23:13:40 +01:00
CMakeLists.txt CMake: Improve config installation 2018-10-01 16:16:29 -04:00
config-amigaos.h
config-dos.h whitespace fixes 2018-09-23 22:24:02 +00:00
config-mac.h
config-os400.h OS400: Add CURLOPT_H3 symbols 2019-08-04 11:04:51 -04:00
config-plan9.h plan9: add support for running on Plan 9 2019-07-31 00:23:25 +02:00
config-riscos.h
config-symbian.h openssl: define HAVE_SSL_GET_SHUTDOWN based on version number 2019-07-14 16:24:46 +02:00
config-tpf.h build: remove HAVE_LIMITS_H check 2018-01-05 23:34:30 -05:00
config-vxworks.h openssl: define HAVE_SSL_GET_SHUTDOWN based on version number 2019-07-14 16:24:46 +02:00
config-win32.h url: Load if_nametoindex() dynamically from iphlpapi.dll on Windows 2019-05-29 07:19:20 +01:00
config-win32ce.h build: remove HAVE_LIMITS_H check 2018-01-05 23:34:30 -05:00
conncache.c conncache: Remove the DEBUGASSERT on length check 2019-05-29 22:07:43 +01:00
conncache.h conncache: make "bundles" per host name when doing proxy tunnels 2019-05-28 16:23:59 +02:00
connect.c cleanup: move functions out of url.c and make them static 2019-09-03 13:11:12 +02:00
connect.h Curl_addr2string: take an addrlen argument too 2019-08-31 11:41:56 +02:00
content_encoding.c content_encoding: accept up to 4 unknown trailer bytes after raw deflate data 2018-07-12 22:46:15 +02:00
content_encoding.h HTTP: support multiple Content-Encodings 2017-11-05 15:09:48 +01:00
cookie.c source: remove names from source comments 2019-07-19 23:50:22 +02:00
cookie.h altsvc: Fix building with cookies disables 2019-04-20 22:46:21 +02:00
curl_addrinfo.c memdebug: log pointer before freeing its data 2019-03-12 21:45:03 +01:00
curl_addrinfo.h memdebug: make debug-specific functions use curl_dbg_ prefix 2019-03-08 23:21:21 +01:00
curl_base64.h
curl_config.h.cmake openssl: define HAVE_SSL_GET_SHUTDOWN based on version number 2019-07-14 16:24:46 +02:00
curl_ctype.c URL: fix ASCII dependency in strcpy_url and strlen_url 2018-05-03 15:19:20 +02:00
curl_ctype.h URL: fix ASCII dependency in strcpy_url and strlen_url 2018-05-03 15:19:20 +02:00
curl_des.c
curl_des.h
curl_endian.c cleanup: make local functions static 2019-02-10 18:38:57 +01:00
curl_endian.h headers: Remove no longer exported functions 2019-07-10 19:26:40 +02:00
curl_fnmatch.c cleanup: remove FIXME and TODO comments 2019-05-16 09:16:56 +02:00
curl_fnmatch.h
curl_get_line.c altsvc: Fix building with cookies disables 2019-04-20 22:46:21 +02:00
curl_get_line.h altsvc: Fix building with cookies disables 2019-04-20 22:46:21 +02:00
curl_gethostname.c
curl_gethostname.h
curl_gssapi.c snprintf: renamed and we now only use msnprintf() 2018-11-23 08:26:51 +01:00
curl_gssapi.h gssapi: fix deprecated header warnings 2019-02-14 08:38:43 +01:00
curl_hmac.h
curl_ldap.h whitespace fixes 2018-09-23 22:24:02 +00:00
curl_md4.h md4: Use our own MD4 implementation when no crypto libraries are available 2019-08-04 18:01:29 +01:00
curl_md5.h md5: Update the function signature following d84da52d 2019-04-16 00:08:42 +01:00
curl_memory.h cleanup: remove FIXME and TODO comments 2019-05-16 09:16:56 +02:00
curl_memrchr.c Curl_memchr: zero length input can't match 2018-04-24 08:03:23 +02:00
curl_memrchr.h
curl_multibyte.c curl_multibyte: fix a malloc overcalculation 2018-11-06 03:11:05 -05:00
curl_multibyte.h
curl_ntlm_core.c md4: Use our own MD4 implementation when no crypto libraries are available 2019-08-04 18:01:29 +01:00
curl_ntlm_core.h ntlm: Support the NT response in the type-3 when OpenSSL doesn't include MD4 2019-04-23 20:00:33 +01:00
curl_ntlm_wb.c http_ntlm_wb: Handle auth for only a single request 2019-05-18 19:01:11 +01:00
curl_ntlm_wb.h http_ntlm_wb: Move the type-2 message processing into a dedicated function 2019-05-16 00:03:30 +01:00
curl_path.c scp: fix directory name length used in memcpy 2019-08-24 18:47:56 +02:00
curl_path.h headers: end all headers with guard comment 2018-10-23 10:02:24 +02:00
curl_printf.h snprintf: renamed and we now only use msnprintf() 2018-11-23 08:26:51 +01:00
curl_range.c Curl_range: fix FTP-only and FILE-only builds 2018-03-11 20:33:04 +01:00
curl_range.h Curl_range: commonize FTP and FILE range handling 2018-01-30 17:23:26 +01:00
curl_rtmp.c urldata: avoid 'generic', use dedicated pointers 2019-09-03 23:00:51 +02:00
curl_rtmp.h
curl_sasl.c sasl: Implement SASL authorisation identity via CURLOPT_SASL_AUTHZID 2019-08-06 11:38:20 -04:00
curl_sasl.h
curl_sec.h
curl_setup_once.h whitespace fixes 2018-09-23 22:24:02 +00:00
curl_setup.h cleanup: remove DOT_CHAR completely 2019-08-20 23:07:59 +02:00
curl_sha256.h auth: add support for RFC7616 - HTTP Digest access authentication 2017-10-28 16:32:43 +02:00
curl_sspi.c comment: Fix multiple typos in function parameters 2018-10-03 10:27:27 +02:00
curl_sspi.h
curl_threads.c curl_threads: fix classic MinGW compile break 2018-09-27 09:13:20 +02:00
curl_threads.h Windows: fixes for MinGW targeting Windows Vista 2018-10-09 08:33:45 +02:00
curlx.h snprintf: renamed and we now only use msnprintf() 2018-11-23 08:26:51 +01:00
dict.c urldata: simplify bytecounters 2019-03-01 17:30:34 +01:00
dict.h
doh.c doh: fix undefined behaviour and open up for gcc and clang optimization 2019-09-15 23:27:45 +02:00
doh.h cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
dotdot.c Curl_dedotdotify(): always nul terminate returned string. 2018-09-24 07:48:41 +02:00
dotdot.h headers: end all headers with guard comment 2018-10-23 10:02:24 +02:00
easy.c cleanup: move functions out of url.c and make them static 2019-09-03 13:11:12 +02:00
easyif.h whitespace fixes 2018-09-23 22:24:02 +00:00
escape.c snprintf: renamed and we now only use msnprintf() 2018-11-23 08:26:51 +01:00
escape.h whitespace fixes 2018-09-23 22:24:02 +00:00
file.c file: fix "Checking if unsigned variable 'readcount' is less than zero." 2019-03-12 21:46:11 +01:00
file.h whitespace fixes 2018-09-23 22:24:02 +00:00
fileinfo.c wildcard: disable from build when FTP isn't present 2019-05-13 08:17:09 +02:00
fileinfo.h ftplistparser: keep state between invokes 2018-04-24 14:23:20 +02:00
firefox-db2pem.sh whitespace fixes 2018-09-23 22:24:02 +00:00
formdata.c mime: acknowledge CURL_DISABLE_MIME 2019-05-13 08:17:09 +02:00
formdata.h mime: acknowledge CURL_DISABLE_MIME 2019-05-13 08:17:09 +02:00
ftp.c FTP: allow "rubbish" prepended to the SIZE response 2019-09-13 14:21:00 +02:00
ftp.h urldata: simplify bytecounters 2019-03-01 17:30:34 +01:00
ftplistparser.c ftplistparser: fix LGTM alert "Empty block without comment" 2019-04-05 12:56:18 +02:00
ftplistparser.h
getenv.c getenv: support up to 4K environment variable contents on windows 2019-07-31 08:20:59 +02:00
getinfo.c CURLINFO_RETRY_AFTER: parse the Retry-After header value 2019-08-07 14:45:39 +02:00
getinfo.h
gopher.c gopher: remove check for path == NULL 2019-03-05 08:01:50 +01:00
gopher.h
hash.c cppcheck: fix warnings 2018-06-11 11:14:48 +02:00
hash.h multi: fix the transfer hashes in the socket hash entries 2019-06-12 12:31:23 +02:00
hmac.c checksrc: make sure sizeof() is used *with* parentheses 2018-05-21 23:21:47 +02:00
hostasyn.c dns: release sharelock as soon as possible 2019-02-11 13:34:11 +01:00
hostcheck.c lib: reduce variable scopes 2019-05-20 08:51:11 +02:00
hostcheck.h whitespace fixes 2018-09-23 22:24:02 +00:00
hostip4.c snprintf: renamed and we now only use msnprintf() 2018-11-23 08:26:51 +01:00
hostip6.c HTTP3: initial (experimental) support 2019-07-21 23:49:03 +02:00
hostip.c timediff: make it 64 bit (if possible) even with 32 bit time_t 2019-08-01 07:43:24 +02:00
hostip.h timediff: make it 64 bit (if possible) even with 32 bit time_t 2019-08-01 07:43:24 +02:00
hostsyn.c resolvers: only include anything if needed 2017-10-27 13:20:13 +02:00
http2.c http2: when marked for closure and wanted to close == OK 2019-08-26 22:44:59 +02:00
http2.h headers: Remove no longer exported functions 2019-07-10 19:26:40 +02:00
http_chunks.c ctype: restore character classification for non-ASCII platforms 2018-04-24 14:36:06 +02:00
http_chunks.h whitespace fixes 2018-09-23 22:24:02 +00:00
http_digest.c auth: Rename the various authentication clean up functions 2019-05-12 18:37:00 +01:00
http_digest.h auth: Rename the various authentication clean up functions 2019-05-12 18:37:00 +01:00
http_negotiate.c vauth: return CURLE_AUTH_ERROR on gss_init_sec_context() failure 2019-08-26 13:43:21 +02:00
http_negotiate.h auth: Rename the various authentication clean up functions 2019-05-12 18:37:00 +01:00
http_ntlm.c http_ntlm: Move the NTLM state out of the ntlmdata structure 2019-05-15 00:31:45 +01:00
http_ntlm.h auth: Rename the various authentication clean up functions 2019-05-12 18:37:00 +01:00
http_proxy.c NTLM: reset proxy "multipass" state when CONNECT request is done 2019-06-02 23:11:33 +02:00
http_proxy.h
http.c Curl_fillreadbuffer: avoid double-free trailer buf on error 2019-09-09 09:36:27 +02:00
http.h Curl_fillreadbuffer: avoid double-free trailer buf on error 2019-09-09 09:36:27 +02:00
idn_win32.c
if2ip.c CURLOPT_ADDRESS_SCOPE: fix range check and more 2019-04-13 11:18:55 +02:00
if2ip.h CURLOPT_ADDRESS_SCOPE: fix range check and more 2019-04-13 11:18:55 +02:00
imap.c cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
imap.h imap: change from "FETCH" to "UID FETCH" 2018-09-06 10:57:48 +02:00
inet_ntop.c snprintf: renamed and we now only use msnprintf() 2018-11-23 08:26:51 +01:00
inet_ntop.h whitespace fixes 2018-09-23 22:24:02 +00:00
inet_pton.c lib: reduce variable scopes 2019-05-20 08:51:11 +02:00
inet_pton.h whitespace fixes 2018-09-23 22:24:02 +00:00
krb5.c lib: Use UTF-8 encoding in comments 2019-07-06 23:25:20 -04:00
ldap.c ldap: Stop using wide char version of ldapp_err2string 2019-09-11 02:44:47 -04:00
libcurl.plist
libcurl.rc (lib)curl.rc: fixup for minor bugs 2018-12-10 00:10:04 +01:00
libcurl.vers.in
llist.c Curl_llist_remove: fix potential NULL pointer deref 2017-11-21 09:02:40 +01:00
llist.h whitespace fixes 2018-09-23 22:24:02 +00:00
Makefile.am vssh: create directory for SSH backend code 2019-08-17 16:57:55 +02:00
makefile.amiga whitespace fixes 2018-09-23 22:24:02 +00:00
makefile.dj whitespace fixes 2018-09-23 22:24:02 +00:00
Makefile.inc ngtcp2: Build with latest ngtcp2 and ngtcp2_crypto_openssl 2019-08-27 16:31:19 +02:00
Makefile.m32 whitespace fixes 2018-09-23 22:24:02 +00:00
Makefile.netware openssl: Remove SSLEAY leftovers 2018-11-17 21:36:10 +01:00
Makefile.vxworks
Makefile.Watcom openssl: Remove SSLEAY leftovers 2018-11-17 21:36:10 +01:00
md4.c md4: Use our own MD4 implementation when no crypto libraries are available 2019-08-04 18:01:29 +01:00
md5.c lib: reduce variable scopes 2019-05-20 08:51:11 +02:00
memdebug.c lib: reduce variable scopes 2019-05-20 08:51:11 +02:00
memdebug.h memdebug: make debug-specific functions use curl_dbg_ prefix 2019-03-08 23:21:21 +01:00
mime.c mime: acknowledge CURL_DISABLE_MIME 2019-05-13 08:17:09 +02:00
mime.h mime: acknowledge CURL_DISABLE_MIME 2019-05-13 08:17:09 +02:00
mk-ca-bundle.pl mk-ca-bundle.pl: make -u delete certdata.txt if found not changed 2018-06-14 00:02:20 +02:00
mk-ca-bundle.vbs spelling fixes 2018-02-23 23:29:01 +00:00
mprintf.c mprintf: avoid unsigned integer overflow warning 2018-11-02 11:07:04 +01:00
multi.c cleanup: move functions out of url.c and make them static 2019-09-03 13:11:12 +02:00
multihandle.h pipelining: removed 2019-04-06 22:49:50 +02:00
multiif.h curl_multi_poll: a sister to curl_multi_wait() that waits more 2019-08-06 09:33:29 +02:00
netrc.c netrc: free 'home' on error 2019-09-03 23:00:51 +02:00
netrc.h netrc: CURL_DISABLE_NETRC 2019-05-17 23:24:34 +02:00
non-ascii.c non-ascii.c: fix typos in comments 2019-02-12 10:24:29 +01:00
non-ascii.h mime: new MIME API. 2017-09-02 17:47:10 +01:00
nonblock.c nonblock: fix unused parameter warning 2018-10-14 21:07:45 +02:00
nonblock.h whitespace fixes 2018-09-23 22:24:02 +00:00
nwlib.c memory: ensure to check allocation results 2018-10-03 23:45:38 +02:00
nwos.c
openldap.c urldata: avoid 'generic', use dedicated pointers 2019-09-03 23:00:51 +02:00
parsedate.c parsedate: still provide the name arrays when disabled 2019-09-13 08:25:14 +02:00
parsedate.h whitespace fixes 2018-09-23 22:24:02 +00:00
pingpong.c timediff: make it 64 bit (if possible) even with 32 bit time_t 2019-08-01 07:43:24 +02:00
pingpong.h cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
pop3.c cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
pop3.h
progress.c timediff: make it 64 bit (if possible) even with 32 bit time_t 2019-08-01 07:43:24 +02:00
progress.h whitespace fixes 2018-09-23 22:24:02 +00:00
psl.c psl: use latest psl and refresh it periodically 2018-05-28 20:37:14 +02:00
psl.h psl: use latest psl and refresh it periodically 2018-05-28 20:37:14 +02:00
quic.h ngtcp2: accept upload via callback 2019-08-23 22:33:29 +02:00
rand.c PolarSSL: deprecate support step 1. Removed from configure. 2019-05-22 10:00:56 +02:00
rand.h PolarSSL: deprecate support step 1. Removed from configure. 2019-05-22 10:00:56 +02:00
rtsp.c cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
rtsp.h whitespace fixes 2018-09-23 22:24:02 +00:00
security.c security:read_data fix bad realloc() 2019-09-09 08:14:34 +02:00
select.c cppcheck: fix warnings 2018-06-11 11:14:48 +02:00
select.h timediff: make it 64 bit (if possible) even with 32 bit time_t 2019-08-01 07:43:24 +02:00
sendf.c WRITEFUNCTION: add missing set_in_callback around callback 2019-05-05 11:09:30 +02:00
sendf.h travis: add build for "configure --disable-verbose" 2018-10-18 14:51:49 +02:00
setopt.c setopt: make it easier to add new enum values 2019-09-12 09:42:54 +02:00
setopt.h os400: make vsetopt() non-static as Curl_vsetopt() for os400 support. 2019-06-16 01:05:53 +02:00
setup-os400.h
setup-vms.h
sha256.c http: fix for tiny "HTTP/0.9" response 2018-08-13 23:16:01 +02:00
share.c psl: use latest psl and refresh it periodically 2018-05-28 20:37:14 +02:00
share.h psl: use latest psl and refresh it periodically 2018-05-28 20:37:14 +02:00
sigpipe.h sigpipe: if mbedTLS is used, ignore SIGPIPE 2019-01-28 12:03:33 +01:00
slist.c whitespace fixes 2018-09-23 22:24:02 +00:00
slist.h whitespace fixes 2018-09-23 22:24:02 +00:00
smb.c smb: init *msg to NULL in smb_send_and_recv() 2019-09-02 23:06:48 +02:00
smb.h smb: fix memory leak on early failure 2018-07-30 17:59:36 +02:00
smtp.c smtp: check for and bail out on too short EHLO response 2019-09-03 08:25:23 +02:00
smtp.h
sockaddr.h whitespace fixes 2018-09-23 22:24:02 +00:00
socks_gssapi.c snprintf: renamed and we now only use msnprintf() 2018-11-23 08:26:51 +01:00
socks_sspi.c strerror: make the strerror function use local buffers 2019-02-26 10:20:21 +01:00
socks.c doh: disable DOH for the cases it doesn't work 2019-05-11 11:38:58 +02:00
socks.h whitespace fixes 2018-09-23 22:24:02 +00:00
speedcheck.c timediff: return timediff_t from the time diff functions 2017-10-25 09:54:37 +02:00
speedcheck.h
splay.c cleanup: remove FIXME and TODO comments 2019-05-16 09:16:56 +02:00
splay.h headers: Remove no longer exported functions 2019-07-10 19:26:40 +02:00
ssh.h ssh: add a generic Curl_ssh_version function for SSH backends 2019-08-17 16:57:58 +02:00
strcase.c strcase: corrected comment header for Curl_strcasecompare() 2017-08-31 11:37:36 +02:00
strcase.h Remove unused definitions 2018-08-21 18:53:43 +02:00
strdup.c Curl_saferealloc: Fixed typo in docblock 2018-09-21 14:24:55 +02:00
strdup.h
strerror.c vauth: Use CURLE_AUTH_ERROR for auth function errors 2019-08-14 03:14:01 -04:00
strerror.h strerror: make the strerror function use local buffers 2019-02-26 10:20:21 +01:00
strtok.c
strtok.h
strtoofft.c lib: silence null-dereference warnings 2018-04-09 15:54:52 +02:00
strtoofft.h progress: calculate transfer speed on milliseconds if possible 2018-01-08 23:45:09 +13:00
system_win32.c win32: make DLL loading a no-op for UWP 2019-06-25 20:33:07 +02:00
system_win32.h system_win32: fix clang warning 2019-07-11 02:27:04 -04:00
telnet.c urldata: simplify bytecounters 2019-03-01 17:30:34 +01:00
telnet.h whitespace fixes 2018-09-23 22:24:02 +00:00
tftp.c tftp: Alloc maximum blksize, and use default unless OACK is received 2019-09-09 08:14:34 +02:00
tftp.h whitespace fixes 2018-09-23 22:24:02 +00:00
timeval.c timediff: make it 64 bit (if possible) even with 32 bit time_t 2019-08-01 07:43:24 +02:00
timeval.h timediff: make it 64 bit (if possible) even with 32 bit time_t 2019-08-01 07:43:24 +02:00
transfer.c Curl_fillreadbuffer: avoid double-free trailer buf on error 2019-09-09 09:36:27 +02:00
transfer.h cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
url.c cleanup: move functions out of url.c and make them static 2019-09-03 13:11:12 +02:00
url.h cleanup: move functions out of url.c and make them static 2019-09-03 13:11:12 +02:00
urlapi-int.h headers: Remove no longer exported functions 2019-07-10 19:26:40 +02:00
urlapi.c urlapi: one colon is enough for the strspn() input (typo) 2019-09-10 11:51:51 +02:00
urldata.h urldata: avoid 'generic', use dedicated pointers 2019-09-03 23:00:51 +02:00
version.c ssh: add a generic Curl_ssh_version function for SSH backends 2019-08-17 16:57:58 +02:00
warnless.c cleanup: make local functions static 2019-02-10 18:38:57 +01:00
warnless.h cleanup: make local functions static 2019-02-10 18:38:57 +01:00
wildcard.c wildcard: disable from build when FTP isn't present 2019-05-13 08:17:09 +02:00
wildcard.h wildcard: disable from build when FTP isn't present 2019-05-13 08:17:09 +02:00
x509asn1.c wolfssl: refer to it as wolfSSL only 2019-06-10 09:18:16 +02:00
x509asn1.h wolfssl: refer to it as wolfSSL only 2019-06-10 09:18:16 +02:00