summaryrefslogtreecommitdiff
path: root/tests/libtest/lib1908.c
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2020-09-05 21:21:26 +0200
committerDaniel Stenberg <daniel@haxx.se>2020-09-06 09:54:54 +0200
commitf93455eb04b57b2d002244bed1f0b59b94c2f0c7 (patch)
treea403a1dffdc45c2b37fa33a69f1aa0af3b1bb52c /tests/libtest/lib1908.c
parent8ca54a03ea08a7b0cf0a402018f329bd93124216 (diff)
downloadcurl-f93455eb04b57b2d002244bed1f0b59b94c2f0c7.tar.gz
altsvc: clone setting in curl_easy_duphandlebagder/altsvc-duphandle
The cache content is not duplicated, like other caches, but the setting and specified file name are. Test 1908 is extended to verify this somewhat. Since the duplicated handle gets the same file name, the test unfortunately overwrites the same file twice (with different contents) which makes it hard to check automatically. Closes #5923
Diffstat (limited to 'tests/libtest/lib1908.c')
-rw-r--r--tests/libtest/lib1908.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/tests/libtest/lib1908.c b/tests/libtest/lib1908.c
index bacbc9710..30e7d8019 100644
--- a/tests/libtest/lib1908.c
+++ b/tests/libtest/lib1908.c
@@ -39,7 +39,22 @@ int test(char *URL)
curl_easy_setopt(hnd, CURLOPT_NOPROGRESS, 1L);
curl_easy_setopt(hnd, CURLOPT_ALTSVC, "log/altsvc-1908");
ret = curl_easy_perform(hnd);
+
+ if(!ret) {
+ /* make a copy and check that this also has alt-svc activated */
+ CURL *also = curl_easy_duphandle(hnd);
+ if(also) {
+ ret = curl_easy_perform(also);
+ /* we close the second handle first, which makes it store the alt-svc
+ file only to get overwritten when the next handle is closed! */
+ curl_easy_cleanup(also);
+ }
+ }
+
curl_easy_reset(hnd);
+
+ /* using the same file name for the alt-svc cache, this clobbers the
+ content just written from the 'also' handle */
curl_easy_cleanup(hnd);
}
curl_global_cleanup();