haproxy/reg-tests/http-rules/acl_cli_spaces.vtc
William Lallemand 5bb21b1d29 REGTEST: http-rules: test spaces in ACLs with master CLI
Do the tests for spaces on the CLI with the master CLI.

Could be backported as far as 2.0 once the required patches are applied.
2020-06-19 14:32:55 +02:00

81 lines
1.6 KiB
Plaintext

varnishtest "haproxy ACL, CLI and mCLI spaces"
feature ignore_unknown_macro
#REQUIRE_VERSION=2.0
server s1 {
rxreq
expect req.method == "GET"
txresp
} -repeat 2 -start
haproxy h1 -W -S -conf {
defaults
mode http
${no-htx} option http-use-htx
log global
option httplog
timeout connect 15ms
timeout client 20ms
timeout server 20ms
frontend fe1
bind "fd@${fe1}"
http-request deny if { req.hdr(user-agent) -i -m str -f ${testdir}/agents.acl }
default_backend be1
backend be1
server s1 ${s1_addr}:${s1_port}
} -start
client c1 -connect ${h1_fe1_sock} {
txreq -hdr "User-Agent: Mon User Agent"
rxresp
expect resp.status == 200
} -run
haproxy h1 -cli {
send "add acl ${testdir}/agents.acl Mon\\ User\\ Agent\\;"
expect ~ .*
send "show acl ${testdir}/agents.acl"
expect ~ ".*Mon User Agent.*"
}
client c1 -connect ${h1_fe1_sock} {
txreq -hdr "User-Agent: Mon User Agent;"
rxresp
expect resp.status == 403
} -run
haproxy h1 -cli {
send "del acl ${testdir}/agents.acl Mon\\ User\\ Agent\\;"
expect ~ .*
send "show acl ${testdir}/agents.acl"
expect ~ .*
}
client c1 -connect ${h1_fe1_sock} {
txreq -hdr "User-Agent: Mon User Agent;"
rxresp
expect resp.status == 200
} -run
# Try it with the master CLI
haproxy h1 -mcli {
send "@1 add acl ${testdir}/agents.acl Mon\\ User\\ Agent\\;;@1 show acl ${testdir}/agents.acl"
expect ~ ".*Mon User Agent;.*"
}
client c1 -connect ${h1_fe1_sock} {
txreq -hdr "User-Agent: Mon User Agent;"
rxresp
expect resp.status == 403
} -run