curl: --test-duphandle in debug builds runs "duphandled"

Using this option (only available in debug builds) makes curl always
call curl_easy_duphandle() on the handle before using it.

To help us catch curl_easy_duphandle() mistakes better.

Add a CI job using this.

Bonus: the previous runtests option -e is now also supported as
--test-event

Closes #15504
This commit is contained in:
Daniel Stenberg 2024-11-07 10:22:32 +01:00
parent 354f3f96a1
commit cbafcec50b
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2
19 changed files with 93 additions and 10 deletions

View file

@ -44,6 +44,10 @@ HSTS with trailing-dot host name in URL but none in hsts file
<command>
-x http://%HOSTIP:%HTTPPORT http://this.hsts.example./%TESTNUMBER --hsts %LOGDIR/input%TESTNUMBER -w '%{url_effective}\n'
</command>
<disable>
test-duphandle
</disable>
</client>
<verify>

View file

@ -44,6 +44,9 @@ HSTS with no t-dot host name in URL but t-dot in file
<command>
-x http://%HOSTIP:%HTTPPORT http://this.hsts.example/%TESTNUMBER --hsts %LOGDIR/input%TESTNUMBER -w '%{url_effective}\n'
</command>
<disable>
test-duphandle
</disable>
</client>
<verify>

View file

@ -43,6 +43,9 @@ HSTS and %{url_effective} after upgrade
<command>
-x http://%HOSTIP:%HTTPPORT http://this.hsts.example/%TESTNUMBER --hsts %LOGDIR/input%TESTNUMBER -w '%{url_effective}\n'
</command>
<disable>
test-duphandle
</disable>
</client>
<verify>

View file

@ -55,6 +55,9 @@ HSTS with updated expiry in response
<command>
-x http://%HOSTIP:%PROXYPORT http://this.hsts.example:%HTTPSPORT/%TESTNUMBER --hsts %LOGDIR/input%TESTNUMBER -k
</command>
<disable>
test-duphandle
</disable>
</client>
<verify>

View file

@ -57,6 +57,9 @@ HSTS update expiry, with parent includeSubDomains domain present
<command>
-x http://%HOSTIP:%PROXYPORT http://this.hsts.example:%HTTPSPORT/%TESTNUMBER --hsts %LOGDIR/input%TESTNUMBER -k
</command>
<disable>
test-duphandle
</disable>
</client>
<verify>

View file

@ -57,6 +57,9 @@ HSTS update expiry, with two includeSubDomains domains present
<command>
-x http://%HOSTIP:%PROXYPORT http://this.hsts.example:%HTTPSPORT/%TESTNUMBER --hsts %LOGDIR/input%TESTNUMBER -k
</command>
<disable>
test-duphandle
</disable>
</client>
<verify>

View file

@ -57,6 +57,9 @@ HSTS update expiry, removing includesubdomains in update
<command>
-x http://%HOSTIP:%PROXYPORT http://this.hsts.example:%HTTPSPORT/%TESTNUMBER --hsts %LOGDIR/input%TESTNUMBER -k
</command>
<disable>
test-duphandle
</disable>
</client>
<verify>