curl/lib
Stefan Eissing 9fd2d5aa72
socket: detect "dead" connections better, e.g. not fit for reuse
- refs #10646 where reuse was attempted on closed connections in the
  cache, leading to an exhaustion of retries on a transfer
- the mistake was that poll events like POLLHUP, POLLERR, etc
  were regarded as "not dead".
- change cf-socket filter check to regard such events as inidication
  of corpsiness.
- vtls filter checks: fixed interpretation of backend check result
  when inconclusive to interrogate status further down the filter
  chain.

Reported-by: SendSonS on github
Fixes #10646
Closes #10652
2023-03-02 09:03:06 +01:00
..
vauth
vquic
vssh
vtls socket: detect "dead" connections better, e.g. not fit for reuse 2023-03-02 09:03:06 +01:00
.checksrc
.gitattributes
.gitignore
altsvc.c
altsvc.h
amigaos.c
amigaos.h
arpa_telnet.h
asyn-ares.c
asyn-thread.c
asyn.h
base64.c
bufref.c
bufref.h
c-hyper.c
c-hyper.h
cf-https-connect.c
cf-https-connect.h
cf-socket.c socket: detect "dead" connections better, e.g. not fit for reuse 2023-03-02 09:03:06 +01:00
cf-socket.h
cfilters.c
cfilters.h
CMakeLists.txt
config-amigaos.h
config-dos.h
config-mac.h
config-os400.h
config-plan9.h
config-riscos.h
config-win32.h
config-win32ce.h
conncache.c
conncache.h
connect.c
connect.h
content_encoding.c
content_encoding.h
cookie.c
cookie.h
curl_addrinfo.c
curl_addrinfo.h
curl_base64.h
curl_config.h.cmake
curl_ctype.h
curl_des.c
curl_des.h
curl_endian.c
curl_endian.h
curl_fnmatch.c
curl_fnmatch.h
curl_get_line.c
curl_get_line.h
curl_gethostname.c
curl_gethostname.h
curl_gssapi.c
curl_gssapi.h
curl_hmac.h
curl_krb5.h
curl_ldap.h
curl_log.c
curl_log.h
curl_md4.h
curl_md5.h
curl_memory.h
curl_memrchr.c
curl_memrchr.h
curl_multibyte.c
curl_multibyte.h
curl_ntlm_core.c
curl_ntlm_core.h
curl_ntlm_wb.c
curl_ntlm_wb.h
curl_path.c
curl_path.h
curl_printf.h
curl_range.c
curl_range.h
curl_rtmp.c
curl_rtmp.h
curl_sasl.c
curl_sasl.h
curl_setup_once.h
curl_setup.h
curl_sha256.h
curl_sspi.c
curl_sspi.h
curl_threads.c
curl_threads.h
curlx.h
dict.c
dict.h
doh.c
doh.h
dynbuf.c
dynbuf.h
easy_lock.h
easy.c
easygetopt.c
easyif.h
easyoptions.c
easyoptions.h
escape.c
escape.h
file.c
file.h
fileinfo.c
fileinfo.h
fopen.c
fopen.h
formdata.c
formdata.h
ftp.c
ftp.h
ftplistparser.c
ftplistparser.h
functypes.h
getenv.c
getinfo.c
getinfo.h
gopher.c
gopher.h
h2h3.c
h2h3.h
hash.c
hash.h
headers.c
headers.h
hmac.c
hostasyn.c
hostip4.c
hostip6.c
hostip.c
hostip.h
hostsyn.c
hsts.c
hsts.h
http2.c
http2.h
http_aws_sigv4.c
http_aws_sigv4.h
http_chunks.c
http_chunks.h
http_digest.c
http_digest.h
http_negotiate.c
http_negotiate.h
http_ntlm.c
http_ntlm.h
http_proxy.c
http_proxy.h
http.c
http.h
idn.c
idn.h
if2ip.c
if2ip.h
imap.c
imap.h
inet_ntop.c
inet_ntop.h
inet_pton.c
inet_pton.h
krb5.c
ldap.c
libcurl.plist.in
libcurl.rc
libcurl.vers.in
llist.c
llist.h
Makefile.am
Makefile.inc
Makefile.mk
Makefile.soname
md4.c
md5.c
memdebug.c
memdebug.h
mime.c
mime.h
mprintf.c
mqtt.c
mqtt.h
multi.c
multihandle.h
multiif.h
netrc.c
netrc.h
nonblock.c
nonblock.h
noproxy.c
noproxy.h
openldap.c
optiontable.pl
parsedate.c
parsedate.h
pingpong.c
pingpong.h
pop3.c
pop3.h
progress.c
progress.h
psl.c
psl.h
rand.c
rand.h
rename.c
rename.h
rtsp.c
rtsp.h
select.c
select.h
sendf.c
sendf.h
setopt.c
setopt.h
setup-os400.h
setup-vms.h
setup-win32.h
sha256.c
share.c
share.h
sigpipe.h
slist.c
slist.h
smb.c
smb.h
smtp.c
smtp.h
sockaddr.h
socketpair.c
socketpair.h
socks_gssapi.c
socks_sspi.c
socks.c
socks.h
speedcheck.c
speedcheck.h
splay.c
splay.h
strcase.c
strcase.h
strdup.c
strdup.h
strerror.c
strerror.h
strtok.c
strtok.h
strtoofft.c
strtoofft.h
system_win32.c
system_win32.h
telnet.c
telnet.h
tftp.c
tftp.h
timediff.c
timediff.h
timeval.c
timeval.h
transfer.c
transfer.h
url.c
url.h
urlapi-int.h
urlapi.c
urldata.h
version_win32.c
version_win32.h
version.c
warnless.c
warnless.h
wildcard.c
wildcard.h
ws.c
ws.h