REGTEST: Add option to use HTX prefixed by the macro 'no-htx'

So some tests have been removed.
diff --git a/reg-tests/http-messaging/h00000.vtc b/reg-tests/http-messaging/h00000.vtc
index 3954f36..951a926 100644
--- a/reg-tests/http-messaging/h00000.vtc
+++ b/reg-tests/http-messaging/h00000.vtc
@@ -1,4 +1,4 @@
-varnishtest "HTTP request tests: H1 to H1, legacy mode"
+varnishtest "HTTP request tests: H1 to H1 (HTX mode supported only for HAProxy >= 1.9)"
 #REQUIRE_VERSION=1.6
 
 # Run it with HAPROXY_PROGRAM=$PWD/haproxy varnishtest -l -k -t 1 "$1"
@@ -30,7 +30,7 @@
 haproxy h1 -conf {
     defaults
 	mode http
-	#option http-use-htx
+	${no-htx} option http-use-htx
 	timeout connect 1s
 	timeout client  1s
 	timeout server  1s
diff --git a/reg-tests/http-messaging/h00001.vtc b/reg-tests/http-messaging/h00001.vtc
deleted file mode 100644
index 65b2ce0..0000000
--- a/reg-tests/http-messaging/h00001.vtc
+++ /dev/null
@@ -1,172 +0,0 @@
-varnishtest "HTTP request tests: H1 to H1, HTX mode"
-#REQUIRE_VERSION=1.9
-
-# Run it with HAPROXY_PROGRAM=$PWD/haproxy varnishtest -l -k -t 1 "$1"
-
-feature ignore_unknown_macro
-
-server s1 {
-	rxreq
-	txresp \
-	  -status 200 \
-	  -body "response 1"
-
-	rxreq
-	txresp \
-	  -status 200 \
-	  -body "response 2"
-
-	rxreq
-	txresp \
-	  -status 200 \
-	  -body "response 3"
-
-	rxreq
-	txresp \
-	  -status 200 \
-	  -body "response 4"
-} -repeat 2 -start
-
-haproxy h1 -conf {
-    defaults
-	mode http
-	option http-use-htx
-	timeout connect 1s
-	timeout client  1s
-	timeout server  1s
-
-    listen feh1
-	bind "fd@${feh1}"
-	#bind "fd@${feh2}" proto h2
-	server s1 ${s1_addr}:${s1_port}
-} -start
-
-# GET requests
-client c1h1 -connect ${h1_feh1_sock} {
-	# first request is valid
-	txreq \
-	  -req "GET" \
-	  -url "/test1.html"
-	rxresp
-	expect resp.status == 200
-
-	# second request is valid and advertises C-L:0
-	txreq \
-	  -req "GET" \
-	  -url "/test2.html" \
-          -hdr "content-length: 0"
-	rxresp
-	expect resp.status == 200
-
-	# third request sends a body with a GET
-	txreq \
-	  -req "GET" \
-	  -url "/test3.html" \
-          -body "this must be delivered, like it or not"
-	rxresp
-	expect resp.status == 200
-
-	# fourth request is valid and advertises C-L:0, and close, and is
-	# followed by a string "this is not sent\r\n\r\n" which must be
-	# dropped.
-	txreq \
-	  -req "GET" \
-	  -url "/test4.html" \
-          -hdr "content-length: 0" \
-          -hdr "connection: close"
-	# "this is not sent"
-	sendhex "74787973207973206E6F742073656E740D0A0D0A"
-	rxresp
-	expect resp.status == 200
-
-	# the connection is expected to be closed and no more response must
-	# arrive here.
-	expect_close
-} -run
-
-# HEAD requests
-# Note: for now they fail with varnishtest, which expects the amount of
-# data advertised in the content-length response.
-#client c2h1 -connect ${h1_feh1_sock} {
-#	# first request is valid
-#	txreq \
-#	  -req "HEAD" \
-#	  -url "/test11.html"
-#	rxresp
-#	expect resp.status == 200
-#
-#	# second request is valid and advertises C-L:0
-#	txreq \
-#	  -req "HEAD" \
-#	  -url "/test12.html" \
-#          -hdr "content-length: 0"
-#	rxresp
-#	expect resp.status == 200
-#
-#	# third request sends a body with a GET
-#	txreq \
-#	  -req "GET" \
-#	  -url "/test13.html" \
-#          -body "this must be delivered, like it or not"
-#	rxresp
-#	expect resp.status == 200
-#
-#	# fourth request is valid and advertises C-L:0, and close, and is
-#	# followed by a string "this is not sent\r\n\r\n" which must be
-#	# dropped.
-#	txreq \
-#	  -req "HEAD" \
-#	  -url "/test14.html" \
-#          -hdr "content-length: 0" \
-#          -hdr "connection: close"
-#	# "this is not sent"
-#	sendhex "74787973207973206E6F742073656E740D0A0D0A"
-#	rxresp
-#	expect resp.status == 200
-#
-#	# the connection is expected to be closed and no more response must
-#	# arrive here.
-#	expect_close
-#} -run
-
-client c1h1 -connect ${h1_feh1_sock} {
-	# first request is valid
-	txreq \
-	  -req "POST" \
-	  -url "/test21.html"
-	rxresp
-	expect resp.status == 200
-
-	# second request is valid and advertises C-L:0
-	txreq \
-	  -req "POST" \
-	  -url "/test22.html" \
-          -hdr "content-length: 0"
-	rxresp
-	expect resp.status == 200
-
-	# third request is valid and advertises (and sends) somme contents
-	txreq \
-	  -req "POST" \
-	  -url "/test23.html" \
-	  -body "this is sent"
-	rxresp
-	expect resp.status == 200
-
-	# fourth request is valid and advertises C-L:0, and close, and is
-	# followed by a string "this is not sent\r\n\r\n" which must be
-	# dropped.
-	txreq \
-	  -req "POST" \
-	  -url "/test24.html" \
-          -hdr "content-length: 0" \
-          -hdr "connection: close"
-	# "this is not sent"
-	sendhex "74787973207973206E6F742073656E740D0A0D0A"
-	rxresp
-	expect resp.status == 200
-
-	# the connection is expected to be closed and no more response must
-	# arrive here.
-	expect_close
-} -run
diff --git a/reg-tests/http-messaging/h00002.vtc b/reg-tests/http-messaging/h00002.vtc
index 6fc536a..27d2540 100644
--- a/reg-tests/http-messaging/h00002.vtc
+++ b/reg-tests/http-messaging/h00002.vtc
@@ -1,4 +1,4 @@
-varnishtest "HTTP request tests: H2 to H1, legacy mode"
+varnishtest "HTTP request tests: H2 to H1 (HTX and legacy mode)"
 #REQUIRE_VERSION=1.9
 
 # Run it with HAPROXY_PROGRAM=$PWD/haproxy varnishtest -l -k -t 1 "$1"
@@ -41,7 +41,7 @@
 	#log stdout format raw daemon
 	mode http
 	option http-buffer-request
-	#option http-use-htx
+	${no-htx} option http-use-htx
 	timeout connect 1s
 	timeout client  1s
 	timeout server  1s
diff --git a/reg-tests/http-messaging/h00003.vtc b/reg-tests/http-messaging/h00003.vtc
deleted file mode 100644
index ec11756..0000000
--- a/reg-tests/http-messaging/h00003.vtc
+++ /dev/null
@@ -1,274 +0,0 @@
-varnishtest "HTTP request tests: H2 to H1, HTX mode"
-#REQUIRE_VERSION=1.9
-
-# Run it with HAPROXY_PROGRAM=$PWD/haproxy varnishtest -l -k -t 1 "$1"
-
-feature ignore_unknown_macro
-
-# synchronize requests between streams
-barrier b1 cond 2 -cyclic
-barrier b2 cond 2 -cyclic
-barrier b3 cond 2 -cyclic
-barrier b4 cond 2 -cyclic
-
-server s1 {
-	rxreq
-	txresp \
-	  -status 200 \
-	  -body "response 1"
-
-	barrier b2 sync
-	rxreq
-	txresp \
-	  -status 200 \
-	  -body "response 2"
-
-	barrier b3 sync
-	rxreq
-	txresp \
-	  -status 200 \
-	  -body "response 3"
-
-	barrier b4 sync
-	rxreq
-	txresp \
-	  -status 200 \
-	  -body "response 4"
-} -repeat 2 -start
-
-haproxy h1 -conf {
-    defaults
-	#log stdout format raw daemon
-	mode http
-	option http-buffer-request
-	option http-use-htx
-	timeout connect 1s
-	timeout client  1s
-	timeout server  1s
-
-    listen feh1
-	bind "fd@${feh1}"
-	bind "fd@${feh2}" proto h2
-	server s1 ${s1_addr}:${s1_port}
-} -start
-
-client c1h2 -connect ${h1_feh2_sock} {
-	txpri
-	stream 0 {
-		txsettings
-		rxsettings
-		txsettings -ack
-		rxwinup
-		rxsettings
-		expect settings.ack == true
-	} -run
-
-	# first request is valid
-	stream 1 {
-		txreq \
-		  -req "GET" \
-		  -scheme "https" \
-		  -url "/test1.html"
-		rxhdrs
-		expect resp.status == 200
-		rxdata -all
-		expect resp.body == "response 1"
-	} -run
-
-	# second request is valid and advertises C-L:0
-	stream 3 {
-		barrier b2 sync
-		txreq \
-		  -req "GET" \
-		  -scheme "https" \
-		  -url "/test2.html" \
-		  -hdr "content-length" "0"
-		rxhdrs
-		expect resp.status == 200
-		rxdata -all
-		expect resp.body == "response 2"
-	} -run
-
-	# third request sends a body with a GET
-	stream 5 {
-		barrier b3 sync
-		txreq \
-		  -req "GET" \
-		  -scheme "https" \
-		  -url "/test3.html" \
-		  -nostrend \
-		  -body "this must be delivered, like it or not"
-		rxwinup
-		rxhdrs
-		expect resp.status == 200
-		rxdata -all
-		expect resp.body == "response 3"
-	} -run
-
-	# fourth request is valid and advertises C-L:0, and close, and is
-	# followed by a string "this is not sent\r\n\r\n" which must be
-	# dropped.
-	stream 7 {
-		barrier b4 sync
-		txreq \
-		  -req "GET" \
-		  -scheme "https" \
-		  -url "/test4.html" \
-		  -hdr "content-length" "0" \
-		  -nostrend
-		txdata -data "this is sent and ignored"
-		rxwinup
-		rxhdrs
-		expect resp.status == 200
-		rxdata -all
-		expect resp.body == "response 4"
-	} -run
-} -run
-
-# HEAD requests : don't work well yet
-#client c2h2 -connect ${h1_feh2_sock} {
-#	txpri
-#	stream 0 {
-#		txsettings
-#		rxsettings
-#		txsettings -ack
-#		rxwinup
-#		rxsettings
-#		expect settings.ack == true
-#	} -run
-#
-#	# first request is valid
-#	stream 1 {
-#		txreq \
-#		  -req "HEAD" \
-#		  -scheme "https" \
-#		  -url "/test11.html"
-#		rxhdrs
-#		expect resp.status == 200
-#		rxdata -all
-#		expect resp.bodylen == 0
-#	} -run
-#
-#	# second request is valid and advertises C-L:0
-#	stream 3 {
-#		barrier b2 sync
-#		txreq \
-#		  -req "HEAD" \
-#		  -scheme "https" \
-#		  -url "/test12.html" \
-#		  -hdr "content-length" "0"
-#		rxhdrs
-#		expect resp.status == 200
-#		rxdata -all
-#		expect resp.bodylen == 0
-#	} -run
-#
-#	# third request sends a body with a GET
-#	stream 5 {
-#		barrier b3 sync
-#		txreq \
-#		  -req "HEAD" \
-#		  -scheme "https" \
-#		  -url "/test13.html" \
-#		  -nostrend \
-#		  -body "this must be delivered, like it or not"
-#		rxwinup
-#		rxhdrs
-#		expect resp.status == 200
-#		rxdata -all
-#		expect resp.bodylen == 0
-#	} -run
-#
-#	# fourth request is valid and advertises C-L:0, and close, and is
-#	# followed by a string "this is not sent\r\n\r\n" which must be
-#	# dropped.
-#	stream 7 {
-#		barrier b4 sync
-#		txreq \
-#		  -req "HEAD" \
-#		  -scheme "https" \
-#		  -url "/test14.html" \
-#		  -hdr "content-length" "0" \
-#		  -nostrend
-#		txdata -data "this is sent and ignored"
-#		rxwinup
-#		rxhdrs
-#		expect resp.status == 200
-#		rxdata -all
-#		expect resp.bodylen == 0
-#	} -run
-#} -run
-
-# POST requests
-client c3h2 -connect ${h1_feh2_sock} {
-	txpri
-	stream 0 {
-		txsettings
-		rxsettings
-		txsettings -ack
-		rxwinup
-		rxsettings
-		expect settings.ack == true
-	} -run
-
-	# first request is valid
-	stream 1 {
-		txreq \
-		  -req "POST" \
-		  -scheme "https" \
-		  -url "/test21.html"
-		rxhdrs
-		expect resp.status == 200
-		rxdata -all
-		expect resp.body == "response 1"
-	} -run
-
-	# second request is valid and advertises C-L:0
-	stream 3 {
-		barrier b2 sync
-		txreq \
-		  -req "POST" \
-		  -scheme "https" \
-		  -url "/test22.html" \
-		  -hdr "content-length" "0"
-		rxhdrs
-		expect resp.status == 200
-		rxdata -all
-		expect resp.body == "response 2"
-	} -run
-
-	# third request sends a body with a GET
-	stream 5 {
-		barrier b3 sync
-		txreq \
-		  -req "POST" \
-		  -scheme "https" \
-		  -url "/test23.html" \
-		  -nostrend \
-		  -body "this must be delivered, like it or not"
-		rxwinup
-		rxhdrs
-		expect resp.status == 200
-		rxdata -all
-		expect resp.body == "response 3"
-	} -run
-
-	# fourth request is valid and advertises C-L:0, and close, and is
-	# followed by a string "this is not sent\r\n\r\n" which must be
-	# dropped.
-	stream 7 {
-		barrier b4 sync
-		txreq \
-		  -req "POST" \
-		  -scheme "https" \
-		  -url "/test24.html" \
-		  -hdr "content-length" "0" \
-		  -nostrend
-		txdata -data "this is sent and ignored"
-		rxwinup
-		rxhdrs
-		expect resp.status == 200
-		rxdata -all
-		expect resp.body == "response 4"
-	} -run
-} -run