From c24cf6c64c9ecff09d86ed2ab334df8c327f07f5 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Mon, 30 Sep 2019 10:29:46 +0200 Subject: altsvc: accept quoted ma and persist values As mandated by the spec. Test 1654 is extended to verify. Closes #4443 --- tests/data/test1654 | 1 + tests/unit/unit1654.c | 13 +++++++++++-- 2 files changed, 12 insertions(+), 2 deletions(-) (limited to 'tests') diff --git a/tests/data/test1654 b/tests/data/test1654 index 5b32cb419..6a82daa08 100644 --- a/tests/data/test1654 +++ b/tests/data/test1654 @@ -53,6 +53,7 @@ h1 2.example.org 8080 h3 2.example.org 8080 "20190125 22:34:21" 0 0 h1 3.example.org 8080 h2 example.com 8080 "20190125 22:34:21" 0 0 h1 3.example.org 8080 h3 yesyes.com 8080 "20190125 22:34:21" 0 0 h2 example.org 80 h2 example.com 443 "20190124 22:36:21" 0 0 +h2 example.net 80 h2 example.net 443 "20190124 22:37:21" 0 0 diff --git a/tests/unit/unit1654.c b/tests/unit/unit1654.c index 51fc5d16f..a800d9c3a 100644 --- a/tests/unit/unit1654.c +++ b/tests/unit/unit1654.c @@ -97,6 +97,15 @@ UNITTEST_START } fail_unless(asi->num == 9, "wrong number of entries"); + /* quoted 'ma' value */ + result = Curl_altsvc_parse(curl, asi, "h2=\"example.net:443\"; ma=\"180\";", + ALPN_h2, "example.net", 80); + if(result) { + fprintf(stderr, "Curl_altsvc_parse(4) failed!\n"); + unitfail++; + } + fail_unless(asi->num == 10, "wrong number of entries"); + result = Curl_altsvc_parse(curl, asi, "h2=\":443\", h3=\":443\"; ma = 120; persist = 1", ALPN_h1, "curl.haxx.se", 80); @@ -104,7 +113,7 @@ UNITTEST_START fprintf(stderr, "Curl_altsvc_parse(5) failed!\n"); unitfail++; } - fail_unless(asi->num == 11, "wrong number of entries"); + fail_unless(asi->num == 12, "wrong number of entries"); /* clear that one again and decrease the counter */ result = Curl_altsvc_parse(curl, asi, "clear;", @@ -113,7 +122,7 @@ UNITTEST_START fprintf(stderr, "Curl_altsvc_parse(6) failed!\n"); unitfail++; } - fail_unless(asi->num == 9, "wrong number of entries"); + fail_unless(asi->num == 10, "wrong number of entries"); Curl_altsvc_save(asi, outname); -- cgit v1.2.3