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