Hi list, I can reproduce a segmentation fault on HAProxy 1.8.21. No problem 
with 1.8.20, 1.9.10 or 2.0.5. Is there anything else I can provide or test on 
my environment?

----------

haproxy.cfg:
...
frontend f
    mode http
    ...
    filter spoe engine modsecurity config /etc/haproxy/spoe-modsecurity.conf
    ...
backend spoe-modsecurity
    mode tcp
    timeout connect 5s
    timeout server  5s
    server modsec-spoa0 192.168.100.99:12345
...

----------

spoe-modsecurity.conf:
[modsecurity]
spoe-agent modsecurity-agent
    messages     check-request
    option       var-prefix  modsec
    timeout      hello       11s
    timeout      idle        28s
    timeout      processing  39s
    use-backend  spoe-modsecurity
spoe-message check-request
    args   unique-id method path query req.ver req.hdrs_bin req.body_size 
req.body
    event  on-frontend-http-request

----------

Backtrace:

Program received signal SIGSEGV, Segmentation fault.
0x000055f747657c3c in spoe_encode_message (s=s@entry=0x55f7485bf320,
    ctx=ctx@entry=0x55f7485bf740, msg=msg@entry=0x55f7484ba680,
    dir=dir@entry=0, buf=buf@entry=0x7ffe4fb78088,
    end=end@entry=0x55f7485d7910 "") at src/flt_spoe.c:2190
2190    src/flt_spoe.c: No such file or directory.
(gdb) bt
#0  0x000055f747657c3c in spoe_encode_message (s=s@entry=0x55f7485bf320,
    ctx=ctx@entry=0x55f7485bf740, msg=msg@entry=0x55f7484ba680,
    dir=dir@entry=0, buf=buf@entry=0x7ffe4fb78088,
    end=end@entry=0x55f7485d7910 "") at src/flt_spoe.c:2190
#1  0x000055f7476585f5 in spoe_encode_messages (type=<optimized out>, dir=0,
    messages=0x55f7484ba4a0, ctx=0x55f7485bf740, s=0x55f7485bf320)
    at src/flt_spoe.c:2233
#2  spoe_process_messages (s=0x55f7485bf320, ctx=0x55f7485bf740,
    messages=<optimized out>, dir=dir@entry=0, type=type@entry=1)
    at src/flt_spoe.c:2616
#3  0x000055f74765a145 in spoe_process_event (ev=<optimized out>,
    ctx=<optimized out>, s=<optimized out>) at src/flt_spoe.c:2703
#4  spoe_chn_pre_analyze (s=<optimized out>, filter=<optimized out>,
    chn=0x55f7485bf330, an_bit=<optimized out>) at src/flt_spoe.c:3129
#5  0x000055f7476c1595 in flt_pre_analyze (s=s@entry=0x55f7485bf320,
    chn=chn@entry=0x55f7485bf330, an_bit=an_bit@entry=16) at src/filters.c:805
#6  0x000055f74764dfd5 in process_stream (t=t@entry=0x55f7485bf680)
    at src/stream.c:1906
#7  0x000055f7476d5844 in process_runnable_tasks () at src/task.c:229
#8  0x000055f747683214 in run_poll_loop () at src/haproxy.c:2419
#9  run_thread_poll_loop (data=<optimized out>) at src/haproxy.c:2489
#10 0x000055f7475e261c in main (argc=<optimized out>, argv=<optimized out>)
    at src/haproxy.c:3092


Reply via email to