**** dT 0.000 * top TEST ../../../vmod/tests/blob_b00007.vtc starting **** top extmacro def pkg_version=trunk **** top extmacro def pkg_branch=trunk **** top extmacro def pwd=/tmp/vtest.clang/varnish-cache/varnish-trunk/_build/sub/vmod **** top extmacro def date(...) **** top extmacro def string(...) **** top extmacro def localhost=127.0.0.1 **** top extmacro def bad_backend=127.0.0.1:46629 **** top extmacro def listen_addr=127.0.0.1:0 **** top extmacro def bad_ip=192.0.2.255 **** top extmacro def topbuild=/tmp/vtest.clang/varnish-cache/varnish-trunk/_build/sub **** top extmacro def topsrc=/tmp/vtest.clang/varnish-cache/varnish-trunk/_build/sub/../.. **** top macro def testdir=/tmp/vtest.clang/varnish-cache/varnish-trunk/_build/sub/vmod/../../../vmod/tests **** top macro def tmpdir=/tmp/vtest.clang/_vtest_tmp/vtc.5340.33103920 **** top macro def vtcid=vtc.5340.33103920 ** top === varnishtest "VMOD blob decode() n chars with URL" * top VTEST VMOD blob decode() n chars with URL ** top === varnish v1 -vcl { **** dT 0.033 ** v1 Launch *** v1 CMD: cd ${pwd} && exec varnishd -d -n /tmp/vtest.clang/_vtest_tmp/vtc.5340.33103920/v1 -i v1 -l 2m -p auto_restart=off -p syslog_cli_traffic=off -p thread_pool_min=10 -p debug=+vtc_mode -p vsl_mask=+Debug,+H2RxHdr,+H2RxBody -p h2_initial_window_size=1m -p h2_rx_window_low_water=64k -a '127.0.0.1:0' -M '127.0.0.1 46391' -P /tmp/vtest.clang/_vtest_tmp/vtc.5340.33103920/v1/varnishd.pid -p vmod_path=/tmp/vtest.clang/varnish-cache/varnish-trunk/_build/sub/vmod/.libs *** v1 CMD: cd /tmp/vtest.clang/varnish-cache/varnish-trunk/_build/sub/vmod && exec varnishd -d -n /tmp/vtest.clang/_vtest_tmp/vtc.5340.33103920/v1 -i v1 -l 2m -p auto_restart=off -p syslog_cli_traffic=off -p thread_pool_min=10 -p debug=+vtc_mode -p vsl_mask=+Debug,+H2RxHdr,+H2RxBody -p h2_initial_window_size=1m -p h2_rx_window_low_water=64k -a '127.0.0.1:0' -M '127.0.0.1 46391' -P /tmp/vtest.clang/_vtest_tmp/vtc.5340.33103920/v1/varnishd.pid -p vmod_path=/tmp/vtest.clang/varnish-cache/varnish-trunk/_build/sub/vmod/.libs *** v1 PID: 5365 **** v1 macro def v1_pid=5365 **** v1 macro def v1_name=/tmp/vtest.clang/_vtest_tmp/vtc.5340.33103920/v1 **** dT 0.062 *** v1 debug|Debug: Version: varnish-trunk revision 772d7385dbe2cfa8b70d98af0b5da1236727e58b *** v1 debug|Debug: Platform: Linux,4.19.0-17-amd64,x86_64,-jnone,-sdefault,-sdefault,-hcritbit *** v1 debug|200 316 *** v1 debug|----------------------------- *** v1 debug|Varnish Cache CLI 1.0 *** v1 debug|----------------------------- *** v1 debug|Linux,4.19.0-17-amd64,x86_64,-jnone,-sdefault,-sdefault,-hcritbit *** v1 debug|varnish-trunk revision 772d7385dbe2cfa8b70d98af0b5da1236727e58b *** v1 debug| *** v1 debug|Type 'help' for command list. *** v1 debug|Type 'quit' to close CLI session. *** v1 debug|Type 'start' to launch worker process. *** v1 debug| **** dT 0.176 **** v1 CLIPOLL 1 0x1 0x0 0x0 *** v1 CLI connection fd = 5 *** v1 CLI RX 107 **** v1 CLI RX|ribdsmpbqyqozjuurxhffndswgfaffhc **** v1 CLI RX| **** v1 CLI RX|Authentication required. **** dT 0.177 **** v1 CLI TX|auth 95bd25ba3246f65e37153ff506a135ba08e9c175eaac945c9446751ada73e647 **** dT 0.180 *** v1 CLI RX 200 **** v1 CLI RX|----------------------------- **** v1 CLI RX|Varnish Cache CLI 1.0 **** v1 CLI RX|----------------------------- **** v1 CLI RX|Linux,4.19.0-17-amd64,x86_64,-jnone,-sdefault,-sdefault,-hcritbit **** v1 CLI RX|varnish-trunk revision 772d7385dbe2cfa8b70d98af0b5da1236727e58b **** v1 CLI RX| **** v1 CLI RX|Type 'help' for command list. **** v1 CLI RX|Type 'quit' to close CLI session. **** v1 CLI RX|Type 'start' to launch worker process. **** v1 CLI TX|vcl.inline vcl1 << %XJEIFLH|)Xspa8P **** v1 CLI TX|vcl 4.1; **** v1 CLI TX| **** v1 CLI TX|\timport blob; **** v1 CLI TX|\timport std; **** v1 CLI TX|\tbackend b None; **** v1 CLI TX| **** v1 CLI TX|\tsub vcl_recv { **** v1 CLI TX|\t return(synth(200)); **** v1 CLI TX|\t} **** v1 CLI TX| **** v1 CLI TX|\tsub vcl_synth { **** v1 CLI TX|\t set req.http.urllcfoobar = "foo%3abar%3abaz%3aquux"; **** v1 CLI TX|\t set req.http.urlucfoobar = "foo%3Abar%3Abaz%3Aquux"; **** v1 CLI TX|\t set req.http.urlhobbeslc = "Man%20is%20distinguished%2c%20not%20only%20by%20his%20reason%2c%20but%20by%20this%20singular%20passion%20from%20other%20animals%2c%20which%20is%20a%20lust%20of%20the%20mind%2c%20that%20by%20a%20perseverance%20of%20delight%20in%20the%20continued%20and%20indefatigable%20generation%20of%20knowledge%2c%20exceeds%20the%20short%20vehemence%20of%20any%20carnal%20pleasure."; **** v1 CLI TX|\t set req.http.urlhobbesuc = "Man%20is%20distinguished%2C%20not%20only%20by%20his%20reason%2C%20but%20by%20this%20singular%20passion%20from%20other%20animals%2C%20which%20is%20a%20lust%20of%20the%20mind%2C%20that%20by%20a%20perseverance%20of%20delight%20in%20the%20continued%20and%20indefatigable%20generation%20of%20knowledge%2C%20exceeds%20the%20short%20vehemence%20of%20any%20carnal%20pleasure."; **** v1 CLI TX|\t set req.http.urllcumlauts = "%c3%9cbergr%c3%b6%c3%9fentr%c3%a4ger"; **** v1 CLI TX|\t set req.http.urlucumlauts = "%C3%9Cbergr%C3%B6%C3%9Fentr%C3%A4ger"; **** v1 CLI TX|\t set req.http.urllcphk = "sm%c3%a5b%c3%b8rnsp%c3%a6dagog"; **** v1 CLI TX|\t set req.http.urlucphk = "sm%C3%A5b%C3%B8rnsp%C3%A6dagog"; **** v1 CLI TX|\t set req.http.urllcutf8 = "%e6%97%a5%e6%89%bc%e8%aa%9e"; **** v1 CLI TX|\t set req.http.urlucutf8 = "%E6%97%A5%E6%89%BC%E8%AA%9E"; **** v1 CLI TX|\t set req.http.urlalluc = "%00%01%02%03%04%05%06%07%08%09%0A%0B%0C%0D%0E%0F%10%11%12%13%14%15%16%17%18%19%1A%1B%1C%1D%1E%1F%20%21%22%23%24%25%26%27%28%29%2A%2B%2C-.%2F0123456789%3A%3B%3C%3D%3E%3F%40ABCDEFGHIJKLMNOPQRSTUVWXYZ%5B%5C%5D%5E_%60abcdefghijklmnopqrstuvwxyz%7B%7C%7D~%7F%80%81%82%83%84%85%86%87%88%89%8A%8B%8C%8D%8E%8F%90%91%92%93%94%95%96%97%98%99%9A%9B%9C%9D%9E%9F%A0%A1%A2%A3%A4%A5%A6%A7%A8%A9%AA%AB%AC%AD%AE%AF%B0%B1%B2%B3%B4%B5%B6%B7%B8%B9%BA%BB%BC%BD%BE%BF%C0%C1%C2%C3%C4%C5%C6%C7%C8%C9%CA%CB%CC%CD%CE%CF%D0%D1%D2%D3%D4%D5%D6%D7%D8%D9%DA%DB%DC%DD%DE%DF%E0%E1%E2%E3%E4%E5%E6%E7%E8%E9%EA%EB%EC%ED%EE%EF%F0%F1%F2%F3%F4%F5%F6%F7%F8%F9%FA%FB%FC%FD%FE%FF"; **** v1 CLI TX|\t set req.http.urlalllc = "%00%01%02%03%04%05%06%07%08%09%0a%0b%0c%0d%0e%0f%10%11%12%13%14%15%16%17%18%19%1a%1b%1c%1d%1e%1f%20%21%22%23%24%25%26%27%28%29%2a%2b%2c-.%2f0123456789%3a%3b%3c%3d%3e%3f%40ABCDEFGHIJKLMNOPQRSTUVWXYZ%5b%5c%5d%5e_%60abcdefghijklmnopqrstuvwxyz%7b%7c%7d~%7f%80%81%82%83%84%85%86%87%88%89%8a%8b%8c%8d%8e%8f%90%91%92%93%94%95%96%97%98%99%9a%9b%9c%9d%9e%9f%a0%a1%a2%a3%a4%a5%a6%a7%a8%a9%aa%ab%ac%ad%ae%af%b0%b1%b2%b3%b4%b5%b6%b7%b8%b9%ba%bb%bc%bd%be%bf%c0%c1%c2%c3%c4%c5%c6%c7%c8%c9%ca%cb%cc%cd%ce%cf%d0%d1%d2%d3%d4%d5%d6%d7%d8%d9%da%db%dc%dd%de%df%e0%e1%e2%e3%e4%e5%e6%e7%e8%e9%ea%eb%ec%ed%ee%ef%f0%f1%f2%f3%f4%f5%f6%f7%f8%f9%fa%fb%fc%fd%fe%ff"; **** v1 CLI TX| **** v1 CLI TX|\t set resp.http.decuc = **** v1 CLI TX|\t blob.encode(IDENTITY, **** v1 CLI TX|\t\t\t blob=blob.decode(URL, 9, req.http.urlucfoobar)); **** v1 CLI TX| **** v1 CLI TX|\t set resp.http.declc = **** v1 CLI TX|\t blob.encode(IDENTITY, **** v1 CLI TX|\t\t\t blob=blob.decode(URL, 12, req.http.urllcfoobar)); **** v1 CLI TX| **** v1 CLI TX|\t set resp.http.dechobbesuc = **** v1 CLI TX|\t blob.encode(IDENTITY, **** v1 CLI TX|\t\t\t blob=blob.decode(URL, 27, req.http.urlhobbesuc)); **** v1 CLI TX| **** v1 CLI TX|\t set resp.http.dechobbeslc = **** v1 CLI TX|\t blob.encode(IDENTITY, **** v1 CLI TX|\t\t\t blob=blob.decode(URL, 27, req.http.urlhobbeslc)); **** v1 CLI TX| **** v1 CLI TX|\t set resp.http.decumlautsuc = **** v1 CLI TX|\t blob.encode(IDENTITY, **** v1 CLI TX|\t\t\t blob=blob.decode(URL, 17, req.http.urlucumlauts)); **** v1 CLI TX| **** v1 CLI TX|\t set resp.http.decumlautslc = **** v1 CLI TX|\t blob.encode(IDENTITY, **** v1 CLI TX|\t\t\t blob=blob.decode(URL, 25, req.http.urllcumlauts)); **** v1 CLI TX| **** v1 CLI TX|\t set resp.http.decphkuc = **** v1 CLI TX|\t blob.encode(IDENTITY, **** v1 CLI TX|\t\t\t blob=blob.decode(URL, 18, req.http.urlucphk)); **** v1 CLI TX| **** v1 CLI TX|\t set resp.http.decphklc = **** v1 CLI TX|\t blob.encode(IDENTITY, **** v1 CLI TX|\t\t\t blob=blob.decode(URL, 30, req.http.urllcphk)); **** v1 CLI TX| **** v1 CLI TX|\t set resp.http.decutf8uc = **** v1 CLI TX|\t blob.encode(IDENTITY, **** v1 CLI TX|\t\t\t blob=blob.decode(URL, 9, req.http.urlucutf8)); **** v1 CLI TX| **** v1 CLI TX|\t set resp.http.decutf8lc = **** v1 CLI TX|\t blob.encode(IDENTITY, **** v1 CLI TX|\t\t\t blob=blob.decode(URL, 18, req.http.urllcutf8)); **** v1 CLI TX| **** v1 CLI TX|\t set resp.http.decalluc = **** v1 CLI TX|\t blob.encode(HEX, **** v1 CLI TX|\t\t\t blob=blob.decode(URL, 252, req.http.urlalluc)); **** v1 CLI TX| **** v1 CLI TX|\t set resp.http.decalllc = **** v1 CLI TX|\t blob.encode(HEX, UPPER, **** v1 CLI TX|\t\t\t blob.decode(URL, 252, req.http.urlalllc)); **** v1 CLI TX| **** v1 CLI TX|\t set resp.http.decempty = **** v1 CLI TX|\t blob.encode(IDENTITY, blob=blob.decode(URL, 10, "")); **** v1 CLI TX| **** v1 CLI TX|\t set resp.http.decemptybyte = **** v1 CLI TX|\t blob.encode(IDENTITY, blob=blob.decode(URL, 3, "%00")); **** v1 CLI TX| **** v1 CLI TX|\t set resp.http.decemptypieces = **** v1 CLI TX|\t blob.encode(IDENTITY, **** v1 CLI TX|\t\t\t blob=blob.decode(URL, 1, req.http.unset + "" **** v1 CLI TX|\t\t\t\t\t\t + req.http.unset + "")); **** v1 CLI TX| **** v1 CLI TX|\t set req.http.part1 = "foo%"; **** v1 CLI TX|\t set resp.http.dec2pieces = **** v1 CLI TX|\t blob.encode(IDENTITY, **** v1 CLI TX|\t\t\t blob=blob.decode(URL, 6, req.http.part1 + **** v1 CLI TX|\t\t\t\t\t\t "20bar%20baz%20quux")); **** v1 CLI TX| **** v1 CLI TX|\t set req.http.part2 = "0quux"; **** v1 CLI TX|\t set resp.http.dec3param = **** v1 CLI TX|\t blob.encode(blob=blob.decode(encoded=req.http.part1 + **** v1 CLI TX|\t\t\t "20bar%20baz%2" + req.http.part2, **** v1 CLI TX|\t\t\t decoding=URL, length=12), **** v1 CLI TX|\t\t\t encoding=IDENTITY); **** v1 CLI TX| **** v1 CLI TX|\t set resp.http.dec3pieces = **** v1 CLI TX|\t blob.encode(IDENTITY, **** v1 CLI TX|\t\t\t blob=blob.decode(URL, 18, req.http.part1 **** v1 CLI TX|\t\t\t\t\t\t + "20bar%20baz%2" **** v1 CLI TX|\t\t\t\t\t\t + req.http.part2)); **** v1 CLI TX| **** v1 CLI TX|\t set resp.http.decmanypieces = **** v1 CLI TX|\t blob.encode(IDENTITY, **** v1 CLI TX|\t\t\t blob=blob.decode(URL, 24, "" + req.http.unset **** v1 CLI TX|\t\t\t + req.http.part1 + req.http.unset + "" **** v1 CLI TX|\t\t\t + req.http.unset + "" + "20bar%20baz%2" **** v1 CLI TX|\t\t\t + "" + req.http.unset + req.http.part2 **** v1 CLI TX|\t\t\t + req.http.unset + "" + req.http.unset)); **** v1 CLI TX|\t} **** v1 CLI TX| **** v1 CLI TX|%XJEIFLH|)Xspa8P **** dT 0.302 *** v1 vsl|No VSL chunk found (child not started ?) **** dT 0.403 *** v1 vsl|No VSL chunk found (child not started ?) **** dT 0.504 *** v1 vsl|No VSL chunk found (child not started ?) **** dT 0.606 *** v1 vsl|No VSL chunk found (child not started ?) **** dT 0.711 *** v1 vsl|No VSL chunk found (child not started ?) **** dT 0.813 *** v1 vsl|No VSL chunk found (child not started ?) **** dT 0.917 *** v1 vsl|No VSL chunk found (child not started ?) **** dT 1.019 *** v1 vsl|No VSL chunk found (child not started ?) **** dT 1.122 *** v1 vsl|No VSL chunk found (child not started ?) **** dT 1.223 *** v1 vsl|No VSL chunk found (child not started ?) **** dT 1.329 *** v1 vsl|No VSL chunk found (child not started ?) **** dT 1.330 *** v1 CLI RX 200 **** v1 CLI RX|VCL compiled. **** v1 CLI TX|vcl.use vcl1 **** dT 1.334 *** v1 CLI RX 200 **** v1 CLI RX|VCL 'vcl1' now active ** v1 Start **** v1 CLI TX|start **** dT 1.402 *** v1 debug|Debug: Child (5582) Started **** dT 1.443 *** v1 debug|Child launched OK **** dT 1.458 *** v1 CLI RX 200 *** v1 wait-running **** v1 CLI TX|status *** v1 CLI RX 200 **** v1 CLI RX|Child in state running **** v1 CLI TX|debug.listen_address **** dT 1.461 *** v1 debug|Info: Child (5582) said Child starts **** dT 1.502 *** v1 CLI RX 200 **** v1 CLI RX|a0 127.0.0.1 42757 **** v1 CLI TX|debug.xid 1000 **** dT 1.540 **** v1 vsl| 0 CLI - Rd vcl.load "vcl1" vcl_vcl1.1735017267.455529/vgc.so 1auto **** v1 vsl| 0 CLI - Wr 200 52 Loaded "vcl_vcl1.1735017267.455529/vgc.so" as "vcl1" **** v1 vsl| 0 CLI - Rd vcl.use "vcl1" **** v1 vsl| 0 CLI - Wr 200 0 **** v1 vsl| 0 CLI - Rd start **** v1 vsl| 0 Debug - sockopt: Setting SO_LINGER for a0=127.0.0.1:42757 **** v1 vsl| 0 Debug - sockopt: Setting SO_KEEPALIVE for a0=127.0.0.1:42757 **** v1 vsl| 0 Debug - sockopt: Setting SO_SNDTIMEO for a0=127.0.0.1:42757 **** v1 vsl| 0 Debug - sockopt: Setting SO_RCVTIMEO for a0=127.0.0.1:42757 **** v1 vsl| 0 Debug - sockopt: Setting TCP_NODELAY for a0=127.0.0.1:42757 **** v1 vsl| 0 Debug - sockopt: Setting TCP_KEEPIDLE for a0=127.0.0.1:42757 **** v1 vsl| 0 Debug - sockopt: Setting TCP_KEEPCNT for a0=127.0.0.1:42757 **** v1 vsl| 0 Debug - sockopt: Setting TCP_KEEPINTVL for a0=127.0.0.1:42757 **** v1 vsl| 0 CLI - Wr 200 0 **** v1 vsl| 0 CLI - Rd debug.listen_address **** v1 vsl| 0 CLI - Wr 200 19 a0 127.0.0.1 42757 **** dT 1.547 *** v1 CLI RX 200 **** v1 CLI RX|XID is 1000 chunk 1 **** v1 CLI TX|debug.listen_address **** dT 1.596 *** v1 CLI RX 200 **** v1 CLI RX|a0 127.0.0.1 42757 ** v1 Listen on 127.0.0.1 42757 **** v1 macro def v1_addr=127.0.0.1 **** v1 macro def v1_port=42757 **** v1 macro def v1_sock=127.0.0.1:42757 **** v1 macro def v1_a0_addr=127.0.0.1 **** v1 macro def v1_a0_port=42757 **** v1 macro def v1_a0_sock=127.0.0.1:42757 ** top === client c1 { ** c1 Starting client **** dT 1.597 ** c1 Waiting for client ** c1 Started on 127.0.0.1:42757 (1 iterations) *** c1 Connect to 127.0.0.1:42757 *** c1 connected fd 15 from 127.0.0.1 46502 to 127.0.0.1:42757 ** c1 === txreq **** c1 txreq|GET / HTTP/1.1\r **** c1 txreq|Host: 127.0.0.1\r **** c1 txreq|User-Agent: c1\r **** c1 txreq|\r ** c1 === rxresp **** dT 1.602 **** c1 rxhdr|HTTP/1.1 200 OK\r **** c1 rxhdr|Date: Tue, 24 Dec 2024 05:14:28 GMT\r **** c1 rxhdr|Server: Varnish\r **** c1 rxhdr|X-Varnish: 1001\r **** c1 rxhdr|decuc: foo:bar\r **** c1 rxhdr|declc: foo:bar:\r **** c1 rxhdr|dechobbesuc: Man is distinguished,\r **** c1 rxhdr|dechobbeslc: Man is distinguished,\r **** c1 rxhdr|decumlautsuc: \xc3\x9cbergr\xc3\xb6\r **** c1 rxhdr|decumlautslc: \xc3\x9cbergr\xc3\xb6\xc3\x9fen\r **** c1 rxhdr|decphkuc: sm\xc3\xa5b\xc3\xb8rns\r **** c1 rxhdr|decphklc: sm\xc3\xa5b\xc3\xb8rnsp\xc3\xa6dagog\r **** c1 rxhdr|decutf8uc: \xe6\x97\xa5\r **** c1 rxhdr|decutf8lc: \xe6\x97\xa5\xe6\x89\xbc\r **** c1 rxhdr|decalluc: 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f\r **** c1 rxhdr|decalllc: 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F\r **** c1 rxhdr|decempty: \r **** c1 rxhdr|decemptybyte: \r **** c1 rxhdr|decemptypieces: \r **** c1 rxhdr|dec2pieces: foo \r **** c1 rxhdr|dec3param: foo bar \r **** c1 rxhdr|dec3pieces: foo bar baz \r **** c1 rxhdr|decmanypieces: foo bar baz quux\r **** c1 rxhdr|Content-Type: text/html; charset=utf-8\r **** c1 rxhdr|Retry-After: 5\r **** c1 rxhdr|Content-Length: 227\r **** c1 rxhdr|Connection: keep-alive\r **** c1 rxhdr|\r **** c1 rxhdrlen = 1117 **** c1 http[ 0] |HTTP/1.1 **** c1 http[ 1] |200 **** c1 http[ 2] |OK **** c1 http[ 3] |Date: Tue, 24 Dec 2024 05:14:28 GMT **** c1 http[ 4] |Server: Varnish **** c1 http[ 5] |X-Varnish: 1001 **** c1 http[ 6] |decuc: foo:bar **** c1 http[ 7] |declc: foo:bar: **** c1 http[ 8] |dechobbesuc: Man is distinguished, **** c1 http[ 9] |dechobbeslc: Man is distinguished, **** c1 http[10] |decumlautsuc: \xc3\x9cbergr\xc3\xb6 **** c1 http[11] |decumlautslc: \xc3\x9cbergr\xc3\xb6\xc3\x9fen **** c1 http[12] |decphkuc: sm\xc3\xa5b\xc3\xb8rns **** c1 http[13] |decphklc: sm\xc3\xa5b\xc3\xb8rnsp\xc3\xa6dagog **** c1 http[14] |decutf8uc: \xe6\x97\xa5 **** c1 http[15] |decutf8lc: \xe6\x97\xa5\xe6\x89\xbc **** c1 http[16] |decalluc: 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f **** c1 http[17] |decalllc: 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F **** c1 http[18] |decempty: **** c1 http[19] |decemptybyte: **** c1 http[20] |decemptypieces: **** c1 http[21] |dec2pieces: foo **** c1 http[22] |dec3param: foo bar **** c1 http[23] |dec3pieces: foo bar baz **** c1 http[24] |decmanypieces: foo bar baz quux **** c1 http[25] |Content-Type: text/html; charset=utf-8 **** c1 http[26] |Retry-After: 5 **** c1 http[27] |Content-Length: 227 **** c1 http[28] |Connection: keep-alive **** c1 c-l| **** c1 c-l| **** c1 c-l|
**** c1 c-l|OK
**** c1 c-l|XID: 1001
**** c1 c-l|Varnish cache server
**** c1 c-l| **** c1 c-l| **** c1 bodylen = 227 ** c1 === expect resp.http.decuc == "foo:bar" **** c1 EXPECT resp.http.decuc (foo:bar) == "foo:bar" match ** c1 === expect resp.http.declc == "foo:bar:" **** c1 EXPECT resp.http.declc (foo:bar:) == "foo:bar:" match ** c1 === expect resp.http.dechobbesuc == "Man is distinguished," **** c1 EXPECT resp.http.dechobbesuc (Man is distinguished,) == "Man is distinguished," match ** c1 === expect resp.http.dechobbeslc == "Man is distinguished," **** c1 EXPECT resp.http.dechobbeslc (Man is distinguished,) == "Man is distinguished," match ** c1 === expect resp.http.decumlautsuc == "Übergrö" **** c1 EXPECT resp.http.decumlautsuc (Übergrö) == "Übergrö" match ** c1 === expect resp.http.decumlautslc == "Übergrößen" **** c1 EXPECT resp.http.decumlautslc (Übergrößen) == "Übergrößen" match ** c1 === expect resp.http.decphkuc == "småbørns" **** c1 EXPECT resp.http.decphkuc (småbørns) == "småbørns" match ** c1 === expect resp.http.decphklc == "småbørnspædagog" **** c1 EXPECT resp.http.decphklc (småbørnspædagog) == "småbørnspædagog" match ** c1 === expect resp.http.decutf8uc == "日" **** c1 EXPECT resp.http.decutf8uc (日) == "日" match ** c1 === expect resp.http.decutf8lc == "日扼" **** c1 EXPECT resp.http.decutf8lc (日扼) == "日扼" match ** c1 === expect resp.http.decalluc == "000102030405060708090a0b0c0d0e... **** c1 EXPECT resp.http.decalluc (000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f) == "000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f" match ** c1 === expect resp.http.decalllc == "000102030405060708090A0B0C0D0E... **** c1 EXPECT resp.http.decalllc (000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F) == "000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F707172737475767778797A7B7C7D7E7F" match ** c1 === expect resp.http.decempty == "" **** c1 EXPECT resp.http.decempty () == "" match ** c1 === expect resp.http.decemptybyte == "" **** c1 EXPECT resp.http.decemptybyte () == "" match ** c1 === expect resp.http.decemptypieces == "" **** c1 EXPECT resp.http.decemptypieces () == "" match ** c1 === expect resp.http.dec2pieces == "foo " **** c1 EXPECT resp.http.dec2pieces (foo ) == "foo " match ** c1 === expect resp.http.dec3pieces == "foo bar baz " **** c1 EXPECT resp.http.dec3pieces (foo bar baz ) == "foo bar baz " match ** c1 === expect resp.http.dec3param == "foo bar " **** c1 EXPECT resp.http.dec3param (foo bar ) == "foo bar " match ** c1 === expect resp.http.decmanypieces == "foo bar baz quux" **** c1 EXPECT resp.http.decmanypieces (foo bar baz quux) == "foo bar baz quux" match *** c1 closing fd 15 ** c1 Ending ** top === server s1 -repeat 4 { ** s1 Starting server **** s1 macro def s1_addr=127.0.0.1 **** s1 macro def s1_port=40215 **** s1 macro def s1_sock=127.0.0.1:40215 * s1 Listen on 127.0.0.1:40215 ** top === varnish v1 -vcl+backend { **** v1 CLI TX|vcl.inline vcl2 << %XJEIFLH|)Xspa8P **** v1 CLI TX|vcl 4.1; **** v1 CLI TX|backend s1 { .host = "127.0.0.1"; .port = "40215"; } **** v1 CLI TX| **** v1 CLI TX| **** v1 CLI TX|\timport blob; **** v1 CLI TX| **** v1 CLI TX|\tsub vcl_deliver { **** v1 CLI TX|\t\tif (req.url == "/percent") { **** v1 CLI TX|\t\t\tset resp.http.bad = blob.encode(URL, UPPER, **** v1 CLI TX|\t\t\t\t\t blob.decode(URL, 1, "%20")); **** v1 CLI TX|\t\t} **** v1 CLI TX|\t\telsif (req.url == "/percent-two") { **** v1 CLI TX|\t\t\tset resp.http.bad = blob.encode(URL, UPPER, **** v1 CLI TX|\t\t\t\t\t blob.decode(URL, 2, "%20")); **** v1 CLI TX|\t\t} **** v1 CLI TX|\t\telsif (req.url == "/comma") { **** v1 CLI TX|\t\t\tset resp.http.good = blob.encode(IDENTITY, blob= **** v1 CLI TX|\t\t\t\t\t blob.decode(URL, 3, "%2c%q")); **** v1 CLI TX|\t\t} **** v1 CLI TX|\t\telsif (req.url == "/colon") { **** v1 CLI TX|\t\t\tset resp.http.good = blob.encode(IDENTITY, blob= **** v1 CLI TX|\t\t\t\t\t blob.decode(URL, 3, "%3a%2q")); **** v1 CLI TX|\t\t} **** v1 CLI TX|\t} **** v1 CLI TX| **** v1 CLI TX|%XJEIFLH|)Xspa8P ** s1 Started on 127.0.0.1:40215 (4 iterations) **** dT 1.643 **** v1 vsl| 0 CLI - Rd debug.xid 1000 **** v1 vsl| 0 CLI - Wr 200 19 XID is 1000 chunk 1 **** v1 vsl| 0 CLI - Rd debug.listen_address **** v1 vsl| 0 CLI - Wr 200 19 a0 127.0.0.1 42757 **** v1 vsl| 1000 Begin c sess 0 HTTP/1 **** v1 vsl| 1000 SessOpen c 127.0.0.1 46502 a0 127.0.0.1 42757 1735017268.813201 21 **** v1 vsl| 1000 Debug c sockopt: SO_LINGER may be inherited for a0=127.0.0.1:42757 **** v1 vsl| 1000 Debug c sockopt: SO_KEEPALIVE may be inherited for a0=127.0.0.1:42757 **** v1 vsl| 1000 Debug c sockopt: SO_SNDTIMEO may be inherited for a0=127.0.0.1:42757 **** v1 vsl| 1000 Debug c sockopt: SO_RCVTIMEO may be inherited for a0=127.0.0.1:42757 **** v1 vsl| 1000 Debug c sockopt: TCP_NODELAY may be inherited for a0=127.0.0.1:42757 **** v1 vsl| 1000 Debug c sockopt: TCP_KEEPIDLE may be inherited for a0=127.0.0.1:42757 **** v1 vsl| 1000 Debug c sockopt: TCP_KEEPCNT may be inherited for a0=127.0.0.1:42757 **** v1 vsl| 1000 Debug c sockopt: TCP_KEEPINTVL may be inherited for a0=127.0.0.1:42757 **** v1 vsl| 1000 Link c req 1001 rxreq **** v1 vsl| 1001 Begin c req 1000 rxreq **** v1 vsl| 1001 Timestamp c Start: 1735017268.813262 0.000000 0.000000 **** v1 vsl| 1001 Timestamp c Req: 1735017268.813262 0.000000 0.000000 **** v1 vsl| 1001 VCL_use c vcl1 **** v1 vsl| 1001 ReqStart c 127.0.0.1 46502 a0 **** v1 vsl| 1001 ReqMethod c GET **** v1 vsl| 1001 ReqURL c / **** v1 vsl| 1001 ReqProtocol c HTTP/1.1 **** v1 vsl| 1001 ReqHeader c Host: 127.0.0.1 **** v1 vsl| 1001 ReqHeader c User-Agent: c1 **** v1 vsl| 1001 ReqHeader c X-Forwarded-For: 127.0.0.1 **** v1 vsl| 1001 ReqHeader c Via: 1.1 v1 (Varnish/trunk) **** v1 vsl| 1001 VCL_call c RECV **** v1 vsl| 1001 VCL_return c synth **** v1 vsl| 1001 VCL_call c HASH **** v1 vsl| 1001 VCL_return c lookup **** v1 vsl| 1001 RespProtocol c HTTP/1.1 **** v1 vsl| 1001 RespStatus c 200 **** v1 vsl| 1001 RespReason c OK **** v1 vsl| 1001 RespHeader c Date: Tue, 24 Dec 2024 05:14:28 GMT **** v1 vsl| 1001 RespHeader c Server: Varnish **** v1 vsl| 1001 RespHeader c X-Varnish: 1001 **** v1 vsl| 1001 VCL_call c SYNTH **** v1 vsl| 1001 ReqHeader c urllcfoobar: foo%3abar%3abaz%3aquux **** v1 vsl| 1001 ReqHeader c urlucfoobar: foo%3Abar%3Abaz%3Aquux **** v1 vsl| 1001 ReqHeader c urlhobbeslc: Man%20is%20distinguished%2c%20not%20only%20by%20his%20reason%2c%20but%20by%20this%20singular%20passion%20from%20other%20animals%2c%20which%20is%20a%20lust%20of%20the%20mind%2c%20that%20by%20a%20perseverance%20of%20delight%20in%20the%20contin **** v1 vsl| 1001 ReqHeader c urlhobbesuc: Man%20is%20distinguished%2C%20not%20only%20by%20his%20reason%2C%20but%20by%20this%20singular%20passion%20from%20other%20animals%2C%20which%20is%20a%20lust%20of%20the%20mind%2C%20that%20by%20a%20perseverance%20of%20delight%20in%20the%20contin **** v1 vsl| 1001 ReqHeader c urllcumlauts: %c3%9cbergr%c3%b6%c3%9fentr%c3%a4ger **** v1 vsl| 1001 ReqHeader c urlucumlauts: %C3%9Cbergr%C3%B6%C3%9Fentr%C3%A4ger **** v1 vsl| 1001 ReqHeader c urllcphk: sm%c3%a5b%c3%b8rnsp%c3%a6dagog **** v1 vsl| 1001 ReqHeader c urlucphk: sm%C3%A5b%C3%B8rnsp%C3%A6dagog **** v1 vsl| 1001 ReqHeader c urllcutf8: %e6%97%a5%e6%89%bc%e8%aa%9e **** v1 vsl| 1001 ReqHeader c urlucutf8: %E6%97%A5%E6%89%BC%E8%AA%9E **** v1 vsl| 1001 ReqHeader c urlalluc: %00%01%02%03%04%05%06%07%08%09%0A%0B%0C%0D%0E%0F%10%11%12%13%14%15%16%17%18%19%1A%1B%1C%1D%1E%1F%20%21%22%23%24%25%26%27%28%29%2A%2B%2C-.%2F0123456789%3A%3B%3C%3D%3E%3F%40ABCDEFGHIJKLMNOPQRSTUVWXYZ%5B%5C%5D%5E_%60abcdefghijklmnopqrstuvwxyz%7B%7 **** v1 vsl| 1001 ReqHeader c urlalllc: %00%01%02%03%04%05%06%07%08%09%0a%0b%0c%0d%0e%0f%10%11%12%13%14%15%16%17%18%19%1a%1b%1c%1d%1e%1f%20%21%22%23%24%25%26%27%28%29%2a%2b%2c-.%2f0123456789%3a%3b%3c%3d%3e%3f%40ABCDEFGHIJKLMNOPQRSTUVWXYZ%5b%5c%5d%5e_%60abcdefghijklmnopqrstuvwxyz%7b%7 **** v1 vsl| 1001 RespHeader c decuc: foo:bar **** v1 vsl| 1001 RespHeader c declc: foo:bar: **** v1 vsl| 1001 RespHeader c dechobbesuc: Man is distinguished, **** v1 vsl| 1001 RespHeader c dechobbeslc: Man is distinguished, **** v1 vsl| 1001 RespHeader c decumlautsuc: Übergrö **** v1 vsl| 1001 RespHeader c decumlautslc: Übergrößen **** v1 vsl| 1001 RespHeader c decphkuc: småbørns **** v1 vsl| 1001 RespHeader c decphklc: småbørnspædagog **** v1 vsl| 1001 RespHeader c decutf8uc: 日 **** v1 vsl| 1001 RespHeader c decutf8lc: 日扼 **** v1 vsl| 1001 RespHeader c decalluc: 000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f70717273747576777879 **** v1 vsl| 1001 RespHeader c decalllc: 000102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F202122232425262728292A2B2C2D2E2F303132333435363738393A3B3C3D3E3F404142434445464748494A4B4C4D4E4F505152535455565758595A5B5C5D5E5F606162636465666768696A6B6C6D6E6F70717273747576777879 **** v1 vsl| 1001 RespHeader c decempty: **** v1 vsl| 1001 RespHeader c decemptybyte: **** v1 vsl| 1001 RespHeader c decemptypieces: **** v1 vsl| 1001 ReqHeader c part1: foo% **** v1 vsl| 1001 RespHeader c dec2pieces: foo **** v1 vsl| 1001 ReqHeader c part2: 0quux **** v1 vsl| 1001 RespHeader c dec3param: foo bar **** v1 vsl| 1001 RespHeader c dec3pieces: foo bar baz **** v1 vsl| 1001 RespHeader c decmanypieces: foo bar baz quux **** v1 vsl| 1001 RespHeader c Content-Type: text/html; charset=utf-8 **** v1 vsl| 1001 RespHeader c Retry-After: 5 **** v1 vsl| 1001 VCL_return c deliver **** v1 vsl| 1001 Timestamp c Process: 1735017268.813553 0.000291 0.000291 **** v1 vsl| 1001 RespHeader c Content-Length: 227 **** v1 vsl| 1001 Storage c malloc Transient **** v1 vsl| 1001 Filters c **** v1 vsl| 1001 RespHeader c Connection: keep-alive **** v1 vsl| 1001 Timestamp c Resp: 1735017268.813663 0.000401 0.000109 **** v1 vsl| 1001 ReqAcct c 51 0 51 1117 227 1344 **** v1 vsl| 1001 End c **** v1 vsl| 1000 SessClose c REM_CLOSE 0.005 **** v1 vsl| 1000 End c **** dT 2.864 *** v1 CLI RX 200 **** v1 CLI TX|vcl.use vcl2 **** dT 2.871 **** v1 vsl| 0 CLI - Rd vcl.load vcl2 vcl_vcl2.1735017268.818782/vgc.so 1auto **** v1 vsl| 0 CLI - Wr 200 52 Loaded "vcl_vcl2.1735017268.818782/vgc.so" as "vcl2" **** v1 vsl| 0 CLI - Rd vcl.use vcl2 **** v1 vsl| 0 CLI - Wr 200 0 *** v1 CLI RX 200 **** v1 CLI RX|VCL 'vcl2' now active ** top === client c1 { ** c1 Starting client ** c1 Waiting for client **** dT 2.881 ** c1 Started on 127.0.0.1:42757 (1 iterations) *** c1 Connect to 127.0.0.1:42757 *** c1 connected fd 17 from 127.0.0.1 46516 to 127.0.0.1:42757 ** c1 === txreq -url /comma **** c1 txreq|GET /comma HTTP/1.1\r **** c1 txreq|Host: 127.0.0.1\r **** c1 txreq|User-Agent: c1\r **** c1 txreq|\r ** c1 === rxresp **** dT 2.890 *** s1 accepted fd 16 127.0.0.1 43812 ** s1 === rxreq **** dT 2.891 **** s1 rxhdr|GET /comma HTTP/1.1\r **** s1 rxhdr|Host: 127.0.0.1\r **** s1 rxhdr|User-Agent: c1\r **** s1 rxhdr|X-Forwarded-For: 127.0.0.1\r **** s1 rxhdr|Via: 1.1 v1 (Varnish/trunk)\r **** s1 rxhdr|Accept-Encoding: gzip\r **** s1 rxhdr|X-Varnish: 1004\r **** s1 rxhdr|\r **** s1 rxhdrlen = 153 **** s1 http[ 0] |GET **** s1 http[ 1] |/comma **** s1 http[ 2] |HTTP/1.1 **** s1 http[ 3] |Host: 127.0.0.1 **** s1 http[ 4] |User-Agent: c1 **** s1 http[ 5] |X-Forwarded-For: 127.0.0.1 **** s1 http[ 6] |Via: 1.1 v1 (Varnish/trunk) **** s1 http[ 7] |Accept-Encoding: gzip **** s1 http[ 8] |X-Varnish: 1004 **** s1 bodylen = 0 ** s1 === txresp **** s1 txresp|HTTP/1.1 200 OK\r **** s1 txresp|Date: Tue, 24 Dec 2024 05:14:30 GMT\r **** s1 txresp|Server: s1\r **** s1 txresp|Content-Length: 0\r **** s1 txresp|\r *** s1 shutting fd 16 **** dT 2.905 **** c1 rxhdr|HTTP/1.1 200 OK\r **** c1 rxhdr|Date: Tue, 24 Dec 2024 05:14:30 GMT\r **** c1 rxhdr|Server: s1\r **** c1 rxhdr|Content-Length: 0\r **** c1 rxhdr|X-Varnish: 1003\r **** c1 rxhdr|Age: 0\r **** c1 rxhdr|Via: 1.1 v1 (Varnish/trunk)\r **** c1 rxhdr|Accept-Ranges: bytes\r **** c1 rxhdr|good: ,\r **** c1 rxhdr|Connection: keep-alive\r **** c1 rxhdr|\r **** c1 rxhdrlen = 196 **** c1 http[ 0] |HTTP/1.1 **** c1 http[ 1] |200 **** c1 http[ 2] |OK **** c1 http[ 3] |Date: Tue, 24 Dec 2024 05:14:30 GMT **** c1 http[ 4] |Server: s1 **** c1 http[ 5] |Content-Length: 0 **** c1 http[ 6] |X-Varnish: 1003 **** c1 http[ 7] |Age: 0 **** c1 http[ 8] |Via: 1.1 v1 (Varnish/trunk) **** c1 http[ 9] |Accept-Ranges: bytes **** c1 http[10] |good: , **** c1 http[11] |Connection: keep-alive **** c1 bodylen = 0 ** c1 === expect resp.status == 200 **** c1 EXPECT resp.status (200) == "200" match ** c1 === expect resp.http.good == "," **** c1 EXPECT resp.http.good (,) == "," match ** c1 === txreq -url /colon **** c1 txreq|GET /colon HTTP/1.1\r **** c1 txreq|Host: 127.0.0.1\r **** c1 txreq|User-Agent: c1\r **** c1 txreq|\r ** c1 === rxresp **** dT 2.910 **** c1 rxhdr|HTTP/1.1 503 Backend fetch failed\r **** c1 rxhdr|Date: Tue, 24 Dec 2024 05:14:30 GMT\r **** c1 rxhdr|Server: Varnish\r **** c1 rxhdr|Content-Type: text/html; charset=utf-8\r **** c1 rxhdr|Retry-After: 5\r **** c1 rxhdr|X-Varnish: 1005\r **** c1 rxhdr|Age: 0\r **** c1 rxhdr|Via: 1.1 v1 (Varnish/trunk)\r **** c1 rxhdr|good: :\r **** c1 rxhdr|Content-Length: 281\r **** c1 rxhdr|Connection: keep-alive\r **** c1 rxhdr|\r **** c1 rxhdrlen = 255 **** c1 http[ 0] |HTTP/1.1 **** c1 http[ 1] |503 **** c1 http[ 2] |Backend fetch failed **** c1 http[ 3] |Date: Tue, 24 Dec 2024 05:14:30 GMT **** c1 http[ 4] |Server: Varnish **** c1 http[ 5] |Content-Type: text/html; charset=utf-8 **** c1 http[ 6] |Retry-After: 5 **** c1 http[ 7] |X-Varnish: 1005 **** c1 http[ 8] |Age: 0 **** c1 http[ 9] |Via: 1.1 v1 (Varnish/trunk) **** c1 http[10] |good: : **** c1 http[11] |Content-Length: 281 **** c1 http[12] |Connection: keep-alive **** c1 c-l| **** c1 c-l| **** c1 c-l| **** c1 c-l|Backend fetch failed
**** c1 c-l|XID: 1006
**** c1 c-l|Varnish cache server
**** c1 c-l| **** c1 c-l| **** c1 bodylen = 281 ** c1 === expect resp.status == 200 ---- c1 EXPECT resp.status (503) == "200" failed **** dT 2.913 * top RESETTING after ../../../vmod/tests/blob_b00007.vtc ** s1 Waiting for server (15/-1) **** dT 2.917 ** v1 Wait **** v1 CLI TX|panic.show **** dT 2.965 *** v1 CLI RX 300 **** v1 CLI RX|Child has not panicked or panic has been cleared **** dT 2.969 *** v1 debug|Info: manager stopping child *** v1 debug|Debug: Stopping Child **** dT 2.979 **** v1 vsl| 1002 Begin c sess 0 HTTP/1 **** v1 vsl| 1002 SessOpen c 127.0.0.1 46516 a0 127.0.0.1 42757 1735017270.106249 22 **** v1 vsl| 1002 Debug c sockopt: SO_LINGER may be inherited for a0=127.0.0.1:42757 **** v1 vsl| 1002 Debug c sockopt: SO_KEEPALIVE may be inherited for a0=127.0.0.1:42757 **** v1 vsl| 1002 Debug c sockopt: SO_SNDTIMEO may be inherited for a0=127.0.0.1:42757 **** v1 vsl| 1002 Debug c sockopt: SO_RCVTIMEO may be inherited for a0=127.0.0.1:42757 **** v1 vsl| 1002 Debug c sockopt: TCP_NODELAY may be inherited for a0=127.0.0.1:42757 **** v1 vsl| 1002 Debug c sockopt: TCP_KEEPIDLE may be inherited for a0=127.0.0.1:42757 **** v1 vsl| 1002 Debug c sockopt: TCP_KEEPCNT may be inherited for a0=127.0.0.1:42757 **** v1 vsl| 1002 Debug c sockopt: TCP_KEEPINTVL may be inherited for a0=127.0.0.1:42757 **** v1 vsl| 1002 Link c req 1003 rxreq **** v1 vsl| 1004 Begin b bereq 1003 fetch **** v1 vsl| 1004 VCL_use b vcl2 **** v1 vsl| 1004 Timestamp b Start: 1735017270.106484 0.000000 0.000000 **** v1 vsl| 1004 BereqMethod b GET **** v1 vsl| 1004 BereqURL b /comma **** v1 vsl| 1004 BereqProtocol b HTTP/1.1 **** v1 vsl| 1004 BereqHeader b Host: 127.0.0.1 **** v1 vsl| 1004 BereqHeader b User-Agent: c1 **** v1 vsl| 1004 BereqHeader b X-Forwarded-For: 127.0.0.1 **** v1 vsl| 1004 BereqHeader b Via: 1.1 v1 (Varnish/trunk) **** v1 vsl| 1004 BereqHeader b Accept-Encoding: gzip **** v1 vsl| 1004 BereqHeader b X-Varnish: 1004 **** v1 vsl| 1004 VCL_call b BACKEND_FETCH **** v1 vsl| 1004 VCL_return b fetch **** v1 vsl| 1004 Timestamp b Fetch: 1735017270.106513 0.000029 0.000029 **** v1 vsl| 1004 Timestamp b Connected: 1735017270.106636 0.000152 0.000123 **** v1 vsl| 1004 BackendOpen b 24 s1 127.0.0.1 40215 127.0.0.1 43812 connect **** v1 vsl| 1004 Timestamp b Bereq: 1735017270.106716 0.000232 0.000080 **** v1 vsl| 1004 BerespProtocol b HTTP/1.1 **** v1 vsl| 1004 BerespStatus b 200 **** v1 vsl| 1004 BerespReason b OK **** v1 vsl| 1004 BerespHeader b Date: Tue, 24 Dec 2024 05:14:30 GMT **** v1 vsl| 1004 BerespHeader b Server: s1 **** v1 vsl| 1004 BerespHeader b Content-Length: 0 **** v1 vsl| 1004 Timestamp b Beresp: 1735017270.107463 0.000979 0.000746 **** v1 vsl| 1004 TTL b RFC 120 10 0 1735017270 1735017270 1735017270 0 0 cacheable **** v1 vsl| 1004 VCL_call b BACKEND_RESPONSE **** v1 vsl| 1004 VCL_return b deliver **** v1 vsl| 1004 Timestamp b Process: 1735017270.107510 0.001026 0.000047 **** v1 vsl| 1004 Filters b **** v1 vsl| 1004 Storage b malloc s0 **** v1 vsl| 1004 Fetch_Body b 0 none - **** v1 vsl| 1004 BackendClose b 24 s1 recycle **** v1 vsl| 1004 Timestamp b BerespBody: 1735017270.120226 0.013742 0.012715 **** v1 vsl| 1004 Length b 0 **** v1 vsl| 1004 BereqAcct b 153 0 153 87 0 87 **** v1 vsl| 1004 End b **** v1 vsl| 1003 Begin c req 1002 rxreq **** v1 vsl| 1003 Timestamp c Start: 1735017270.106319 0.000000 0.000000 **** v1 vsl| 1003 Timestamp c Req: 1735017270.106319 0.000000 0.000000 **** v1 vsl| 1003 VCL_use c vcl2 **** v1 vsl| 1003 ReqStart c 127.0.0.1 46516 a0 **** v1 vsl| 1003 ReqMethod c GET **** v1 vsl| 1003 ReqURL c /comma **** v1 vsl| 1003 ReqProtocol c HTTP/1.1 **** dT 2.980 **** v1 vsl| 1003 ReqHeader c Host: 127.0.0.1 **** v1 vsl| 1003 ReqHeader c User-Agent: c1 **** v1 vsl| 1003 ReqHeader c X-Forwarded-For: 127.0.0.1 **** v1 vsl| 1003 ReqHeader c Via: 1.1 v1 (Varnish/trunk) **** v1 vsl| 1003 VCL_call c RECV **** v1 vsl| 1003 VCL_return c hash **** v1 vsl| 1003 VCL_call c HASH **** v1 vsl| 1003 VCL_return c lookup **** v1 vsl| 1003 VCL_call c MISS **** v1 vsl| 1003 VCL_return c fetch **** v1 vsl| 1003 Link c bereq 1004 fetch **** v1 vsl| 1003 Timestamp c Fetch: 1735017270.120313 0.013993 0.013993 **** v1 vsl| 1003 RespProtocol c HTTP/1.1 **** v1 vsl| 1003 RespStatus c 200 **** v1 vsl| 1003 RespReason c OK **** v1 vsl| 1003 RespHeader c Date: Tue, 24 Dec 2024 05:14:30 GMT **** v1 vsl| 1003 RespHeader c Server: s1 **** v1 vsl| 1003 RespHeader c Content-Length: 0 **** v1 vsl| 1003 RespHeader c X-Varnish: 1003 **** v1 vsl| 1003 RespHeader c Age: 0 **** v1 vsl| 1003 RespHeader c Via: 1.1 v1 (Varnish/trunk) **** v1 vsl| 1003 RespHeader c Accept-Ranges: bytes **** v1 vsl| 1003 VCL_call c DELIVER **** v1 vsl| 1003 RespHeader c good: , **** v1 vsl| 1003 VCL_return c deliver **** v1 vsl| 1003 Timestamp c Process: 1735017270.120367 0.014048 0.000054 **** v1 vsl| 1003 Filters c **** v1 vsl| 1003 RespHeader c Connection: keep-alive **** v1 vsl| 1003 Timestamp c Resp: 1735017270.120457 0.014137 0.000089 **** v1 vsl| 1003 ReqAcct c 56 0 56 196 0 196 **** v1 vsl| 1003 End c **** v1 vsl| 1002 Link c req 1005 rxreq **** v1 vsl| 1006 Begin b bereq 1005 fetch **** v1 vsl| 1006 VCL_use b vcl2 **** v1 vsl| 1006 Timestamp b Start: 1735017270.121266 0.000000 0.000000 **** v1 vsl| 1006 BereqMethod b GET **** v1 vsl| 1006 BereqURL b /colon **** v1 vsl| 1006 BereqProtocol b HTTP/1.1 **** v1 vsl| 1006 BereqHeader b Host: 127.0.0.1 **** v1 vsl| 1006 BereqHeader b User-Agent: c1 **** v1 vsl| 1006 BereqHeader b X-Forwarded-For: 127.0.0.1 **** v1 vsl| 1006 BereqHeader b Via: 1.1 v1 (Varnish/trunk) **** v1 vsl| 1006 BereqHeader b Accept-Encoding: gzip **** v1 vsl| 1006 BereqHeader b X-Varnish: 1006 **** v1 vsl| 1006 VCL_call b BACKEND_FETCH **** v1 vsl| 1006 VCL_return b fetch **** v1 vsl| 1006 Timestamp b Fetch: 1735017270.121287 0.000020 0.000020 **** v1 vsl| 1006 Timestamp b Connected: 1735017270.121294 0.000027 0.000007 **** v1 vsl| 1006 BackendOpen b 24 s1 127.0.0.1 40215 127.0.0.1 43812 connect **** v1 vsl| 1006 Timestamp b Bereq: 1735017270.121363 0.000096 0.000068 **** v1 vsl| 1006 FetchError b HTC eof (Unexpected end of input) **** v1 vsl| 1006 BackendClose b 24 s1 close RX_BAD **** v1 vsl| 1006 Timestamp b Beresp: 1735017270.121395 0.000128 0.000032 **** v1 vsl| 1006 Timestamp b Error: 1735017270.121398 0.000131 0.000002 **** v1 vsl| 1006 BerespProtocol b HTTP/1.1 **** v1 vsl| 1006 BerespStatus b 503 **** v1 vsl| 1006 BerespReason b Backend fetch failed **** v1 vsl| 1006 BerespHeader b Date: Tue, 24 Dec 2024 05:14:30 GMT **** v1 vsl| 1006 BerespHeader b Server: Varnish **** v1 vsl| 1006 VCL_call b BACKEND_ERROR **** v1 vsl| 1006 BerespHeader b Content-Type: text/html; charset=utf-8 **** v1 vsl| 1006 BerespHeader b Retry-After: 5 **** v1 vsl| 1006 VCL_return b deliver **** v1 vsl| 1006 Storage b malloc Transient **** v1 vsl| 1006 Length b 281 **** v1 vsl| 1006 BereqAcct b 153 0 153 0 0 0 **** v1 vsl| 1006 End b **** v1 vsl| 1005 Begin c req 1002 rxreq **** v1 vsl| 1005 Timestamp c Start: 1735017270.121179 0.000000 0.000000 **** v1 vsl| 1005 Timestamp c Req: 1735017270.121179 0.000000 0.000000 **** v1 vsl| 1005 VCL_use c vcl2 **** v1 vsl| 1005 ReqStart c 127.0.0.1 46516 a0 **** v1 vsl| 1005 ReqMethod c GET **** v1 vsl| 1005 ReqURL c /colon **** v1 vsl| 1005 ReqProtocol c HTTP/1.1 **** v1 vsl| 1005 ReqHeader c Host: 127.0.0.1 **** v1 vsl| 1005 ReqHeader c User-Agent: c1 **** v1 vsl| 1005 ReqHeader c X-Forwarded-For: 127.0.0.1 **** v1 vsl| 1005 ReqHeader c Via: 1.1 v1 (Varnish/trunk) **** v1 vsl| 1005 VCL_call c RECV **** v1 vsl| 1005 VCL_return c hash **** v1 vsl| 1005 VCL_call c HASH **** v1 vsl| 1005 VCL_return c lookup **** v1 vsl| 1005 VCL_call c MISS **** v1 vsl| 1005 VCL_return c fetch **** v1 vsl| 1005 Link c bereq 1006 fetch **** v1 vsl| 1005 Timestamp c Fetch: 1735017270.121555 0.000375 0.000375 **** v1 vsl| 1005 RespProtocol c HTTP/1.1 **** v1 vsl| 1005 RespStatus c 503 **** v1 vsl| 1005 RespReason c Backend fetch failed **** v1 vsl| 1005 RespHeader c Date: Tue, 24 Dec 2024 05:14:30 GMT **** v1 vsl| 1005 RespHeader c Server: Varnish **** v1 vsl| 1005 RespHeader c Content-Type: text/html; charset=utf-8 **** v1 vsl| 1005 RespHeader c Retry-After: 5 **** v1 vsl| 1005 RespHeader c X-Varnish: 1005 **** v1 vsl| 1005 RespHeader c Age: 0 **** v1 vsl| 1005 RespHeader c Via: 1.1 v1 (Varnish/trunk) **** v1 vsl| 1005 VCL_call c DELIVER **** v1 vsl| 1005 RespHeader c good: : **** v1 vsl| 1005 VCL_return c deliver **** v1 vsl| 1005 Timestamp c Process: 1735017270.121577 0.000397 0.000022 **** v1 vsl| 1005 Filters c **** v1 vsl| 1005 RespHeader c Content-Length: 281 **** v1 vsl| 1005 RespHeader c Connection: keep-alive **** v1 vsl| 1005 Timestamp c Resp: 1735017270.121611 0.000432 0.000034 **** v1 vsl| 1005 ReqAcct c 56 0 56 255 281 536 **** v1 vsl| 1005 End c **** dT 3.072 *** v1 debug|Info: Child (5582) said Child dies *** v1 debug|Info: Child (5582) ended *** v1 debug|Debug: Child cleanup complete *** v1 debug|Info: manager dies **** v1 STDOUT EOF **** dT 3.081 **** v1 vsl| 0 CLI - EOF on CLI connection, worker stops ** v1 WAIT4 pid=5365 status=0x0000 (user 0.822097 sys 0.212527) * top TEST ../../../vmod/tests/blob_b00007.vtc FAILED # top TEST ../../../vmod/tests/blob_b00007.vtc FAILED (3.103) exit=2 FAIL tests/blob_b00007.vtc (exit status: 2)