1*6236dae4SAndroid Build Coastguard Worker<testcase> 2*6236dae4SAndroid Build Coastguard Worker<info> 3*6236dae4SAndroid Build Coastguard Worker<keywords> 4*6236dae4SAndroid Build Coastguard WorkerHTTP 5*6236dae4SAndroid Build Coastguard WorkerHTTP GET 6*6236dae4SAndroid Build Coastguard WorkerAlt-Svc 7*6236dae4SAndroid Build Coastguard WorkerHTTP/2 8*6236dae4SAndroid Build Coastguard Worker</keywords> 9*6236dae4SAndroid Build Coastguard Worker</info> 10*6236dae4SAndroid Build Coastguard Worker 11*6236dae4SAndroid Build Coastguard Worker# 12*6236dae4SAndroid Build Coastguard Worker# Server-side 13*6236dae4SAndroid Build Coastguard Worker<reply> 14*6236dae4SAndroid Build Coastguard Worker<data nocheck="yes"> 15*6236dae4SAndroid Build Coastguard WorkerHTTP/1.1 200 OK 16*6236dae4SAndroid Build Coastguard WorkerDate: Tue, 09 Nov 2010 14:49:00 GMT 17*6236dae4SAndroid Build Coastguard WorkerContent-Length: 6 18*6236dae4SAndroid Build Coastguard WorkerConnection: close 19*6236dae4SAndroid Build Coastguard WorkerContent-Type: text/html 20*6236dae4SAndroid Build Coastguard WorkerFunny-head: yesyes 21*6236dae4SAndroid Build Coastguard WorkerAlt-Svc: h2=":%HTTP2PORT", ma=315360000; persist=0 22*6236dae4SAndroid Build Coastguard Worker 23*6236dae4SAndroid Build Coastguard Worker-foo- 24*6236dae4SAndroid Build Coastguard Worker</data> 25*6236dae4SAndroid Build Coastguard Worker</reply> 26*6236dae4SAndroid Build Coastguard Worker 27*6236dae4SAndroid Build Coastguard Worker# 28*6236dae4SAndroid Build Coastguard Worker# Client-side 29*6236dae4SAndroid Build Coastguard Worker<client> 30*6236dae4SAndroid Build Coastguard Worker<features> 31*6236dae4SAndroid Build Coastguard Workeralt-svc 32*6236dae4SAndroid Build Coastguard WorkerDebug 33*6236dae4SAndroid Build Coastguard Workerh2c 34*6236dae4SAndroid Build Coastguard Worker</features> 35*6236dae4SAndroid Build Coastguard Worker<server> 36*6236dae4SAndroid Build Coastguard Workerhttp 37*6236dae4SAndroid Build Coastguard Workerhttp/2 38*6236dae4SAndroid Build Coastguard Worker</server> 39*6236dae4SAndroid Build Coastguard Worker<name> 40*6236dae4SAndroid Build Coastguard WorkerHTTPS GET translated by alt-svc lookup to HTTP/2 GET 41*6236dae4SAndroid Build Coastguard Worker</name> 42*6236dae4SAndroid Build Coastguard Worker<setenv> 43*6236dae4SAndroid Build Coastguard Worker# make debug-curl accept Alt-Svc over plain HTTP 44*6236dae4SAndroid Build Coastguard WorkerCURL_ALTSVC_HTTP="yeah" 45*6236dae4SAndroid Build Coastguard Worker</setenv> 46*6236dae4SAndroid Build Coastguard Worker<command> 47*6236dae4SAndroid Build Coastguard Worker--http2 --alt-svc "%LOGDIR/altsvc-%TESTNUMBER" "http://%HOSTIP:%HTTPPORT/%TESTNUMBER" "http://%HOSTIP:%HTTPPORT/%TESTNUMBER" 48*6236dae4SAndroid Build Coastguard Worker</command> 49*6236dae4SAndroid Build Coastguard Worker<file name="%LOGDIR/altsvc-%TESTNUMBER"> 50*6236dae4SAndroid Build Coastguard Workerh2 %HOSTIP %HTTPPORT h2 %HOSTIP %HTTP2PORT "20290222 22:19:28" 0 0 51*6236dae4SAndroid Build Coastguard Worker</file> 52*6236dae4SAndroid Build Coastguard Worker 53*6236dae4SAndroid Build Coastguard Worker</client> 54*6236dae4SAndroid Build Coastguard Worker 55*6236dae4SAndroid Build Coastguard Worker# 56*6236dae4SAndroid Build Coastguard Worker# Verify data after the test has been "shot" 57*6236dae4SAndroid Build Coastguard Worker<verify> 58*6236dae4SAndroid Build Coastguard Worker<stdout> 59*6236dae4SAndroid Build Coastguard WorkerHTTP/1.1 101 Switching Protocols 60*6236dae4SAndroid Build Coastguard WorkerConnection: Upgrade 61*6236dae4SAndroid Build Coastguard WorkerUpgrade: h2c 62*6236dae4SAndroid Build Coastguard Worker 63*6236dae4SAndroid Build Coastguard WorkerHTTP/2 200 64*6236dae4SAndroid Build Coastguard Workerdate: Tue, 09 Nov 2010 14:49:00 GMT 65*6236dae4SAndroid Build Coastguard Workercontent-length: 6 66*6236dae4SAndroid Build Coastguard Workercontent-type: text/html 67*6236dae4SAndroid Build Coastguard Workerfunny-head: yesyes 68*6236dae4SAndroid Build Coastguard Workeralt-svc: h2=":%HTTP2PORT", ma=315360000; persist=0 69*6236dae4SAndroid Build Coastguard Workervia: 1.1 nghttpx 70*6236dae4SAndroid Build Coastguard Worker 71*6236dae4SAndroid Build Coastguard Worker-foo- 72*6236dae4SAndroid Build Coastguard WorkerHTTP/2 200 73*6236dae4SAndroid Build Coastguard Workerdate: Tue, 09 Nov 2010 14:49:00 GMT 74*6236dae4SAndroid Build Coastguard Workercontent-length: 6 75*6236dae4SAndroid Build Coastguard Workercontent-type: text/html 76*6236dae4SAndroid Build Coastguard Workerfunny-head: yesyes 77*6236dae4SAndroid Build Coastguard Workeralt-svc: h2=":%HTTP2PORT", ma=315360000; persist=0 78*6236dae4SAndroid Build Coastguard Workervia: 1.1 nghttpx 79*6236dae4SAndroid Build Coastguard Worker 80*6236dae4SAndroid Build Coastguard Worker-foo- 81*6236dae4SAndroid Build Coastguard Worker</stdout> 82*6236dae4SAndroid Build Coastguard Worker<stripfile> 83*6236dae4SAndroid Build Coastguard Workers/^server: nghttpx.*\r?\n// 84*6236dae4SAndroid Build Coastguard Worker# strip out the (dynamic) expire date from the file so that the rest 85*6236dae4SAndroid Build Coastguard Worker# matches 86*6236dae4SAndroid Build Coastguard Workers/\"2([^\"]*)\"/TIMESTAMP/ 87*6236dae4SAndroid Build Coastguard Worker</stripfile> 88*6236dae4SAndroid Build Coastguard Worker<file name="%LOGDIR/altsvc-%TESTNUMBER" mode="text"> 89*6236dae4SAndroid Build Coastguard Worker# Your alt-svc cache. https://curl.se/docs/alt-svc.html 90*6236dae4SAndroid Build Coastguard Worker# This file was generated by libcurl! Edit at your own risk. 91*6236dae4SAndroid Build Coastguard Workerh2 %HOSTIP %HTTPPORT h2 %HOSTIP %HTTP2PORT TIMESTAMP 0 0 92*6236dae4SAndroid Build Coastguard Worker</file> 93*6236dae4SAndroid Build Coastguard Worker</verify> 94*6236dae4SAndroid Build Coastguard Worker</testcase> 95