BUG/MAJOR: stick_table: Complete incomplete SEGV fix
This commit completes the incomplete segmentation fault fix
in commit ac1f3ed64b
.
Likewise it must be backported to haproxy 1.8.
This commit is contained in:
parent
091d827e09
commit
65189c17c6
|
@ -0,0 +1,30 @@
|
|||
# Shipped with the commit fixing the bug.
|
||||
|
||||
varnishtest "Stick Table: Crash when accessing unknown key."
|
||||
feature ignore_unknown_macro
|
||||
|
||||
server s0 {
|
||||
rxreq
|
||||
txresp
|
||||
} -start
|
||||
|
||||
haproxy h0 -conf {
|
||||
defaults
|
||||
timeout connect 5000ms
|
||||
timeout client 50000ms
|
||||
timeout server 50000ms
|
||||
|
||||
frontend test
|
||||
mode http
|
||||
bind "fd@${fe1}"
|
||||
stick-table type ip size 1m expire 1h store gpc0
|
||||
http-request deny if { src,table_trackers(test) eq 1 }
|
||||
http-request deny if { src,in_table(test) }
|
||||
http-request deny deny_status 200
|
||||
} -start
|
||||
|
||||
client c0 -connect ${h0_fe1_sock} {
|
||||
txreq -url "/"
|
||||
rxresp
|
||||
expect resp.status == 200
|
||||
} -run
|
|
@ -1596,8 +1596,10 @@ static int sample_conv_table_trackers(const struct arg *arg_p, struct sample *sm
|
|||
smp->data.type = SMP_T_SINT;
|
||||
smp->data.u.sint = 0;
|
||||
|
||||
if (ts)
|
||||
smp->data.u.sint = ts->ref_cnt;
|
||||
if (!ts)
|
||||
return 1;
|
||||
|
||||
smp->data.u.sint = ts->ref_cnt;
|
||||
|
||||
stktable_release(t, ts);
|
||||
return 1;
|
||||
|
|
Loading…
Reference in New Issue