]> granicus.if.org Git - curl/commit
multi: make sure 'data' can present in several sockhash entries
authorDaniel Stenberg <daniel@haxx.se>
Wed, 5 Jun 2019 13:50:49 +0000 (15:50 +0200)
committerDaniel Stenberg <daniel@haxx.se>
Sun, 9 Jun 2019 22:47:48 +0000 (00:47 +0200)
commit094b5f3540fec1401f514bc470f11f441527d30a
tree734089c8dbbcb1019310b98a729c0de6130eebff
parentfb2839db24b0344d0c2a563787a70880486a19c8
multi: make sure 'data' can present in several sockhash entries

Since more than one socket can be used by each transfer at a given time,
each sockhash entry how has its own hash table with transfers using that
socket.

In addition, the sockhash entry can now be marked 'blocked = TRUE'"
which then makes the delete function just set 'removed = TRUE' instead
of removing it "for real", as a way to not rip out the carpet under the
feet of a parent function that iterates over the transfers of that same
sockhash entry.

Reported-by: Tom van der Woerdt
Fixes #3961
Fixes #3986
Fixes #3995
Fixes #4004
Closes #3997
lib/multi.c
lib/url.c
lib/urldata.h