varnishtest "HTTP cookie basic test"
feature ignore_unknown_macro

# This script tests "cookie <name> insert indirect" directive.
# The client sends a wrong "SRVID=s2" cookie.
# haproxy removes it.
# The server replies with "SRVID=S1" after having checked that
# no cookies were sent by haproxy.
# haproxy replies "SRVID=server-one" to the client.
# We log the HTTP request to a syslog server and check their "--II"
# (invalid, insert) flags.

syslog S1 -level notice {
    recv info
    expect ~ "[^:\\[ ]\\[${h1_pid}\\]: .* fe1 be1/srv1 .* --II .* \"GET / HTTP/1\\.1\""
} -start

server s1 {
	rxreq
	expect req.http.cookie == <undef>
    txresp -hdr "Cookie: SRVID=S1"
} -start

haproxy h1 -conf {
	global
        log ${S1_addr}:${S1_port} len 2048 local0 debug err

    defaults
        mode http
        ${no-htx} option http-use-htx
		option httplog
        timeout client 1s
        timeout server 1s
        timeout connect 1s
        log global

    backend be1
        cookie SRVID insert indirect
        server srv1 ${s1_addr}:${s1_port} cookie server-one

    frontend fe1
		option httplog
        bind "fd@${fe1}"
        use_backend be1
} -start

client c1 -connect ${h1_fe1_sock} {
    txreq -hdr "Cookie: SRVID=s2"
    rxresp
    expect resp.http.Set-Cookie ~ "^SRVID=server-one;.*"
} -start


client c1 -wait
syslog S1 -wait
