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
    expect ~ "[^:\\[ ]\\[${h1_pid}\\]: Proxy (fe|be)1 started."
    recv
    expect ~ "[^:\\[ ]\\[${h1_pid}\\]: Proxy (fe|be)1 started."
    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
