Hi Haproxy-Team,
I tried compiling different minor versions of 1.8.x releases and all the minor
versions are crashing whe trying to use option http-proxy:
Advertising
Configuration that is causing issue:
listen http_proxy-8888
bind *:9876
mode http
option httplog
http-request set-uri
http://%[url_param(idnsredirHost)]%[capture.req.uri<http://%25[url_param(idnsredirHost)]%25[capture.req.uri>]
option http_proxy
If I don't use option http_proxy things work normally. Following is from the
core dump:
: #0 0x0000000000454839 in cs_destroy (cs=0x207edd0) at
include/proto/connection.h:704
704 cs->conn->mux->detach(cs);
Missing separate debuginfos, use: debuginfo-install glibc-2.17-196.el7.x86_64
keyutils-libs-1.5.8-3.el7.x86_64 krb5-libs-1.15.1-8.el7.x86_64
libcom_err-1.42.9-10.el7.x 86_64 libselinux-2.5-11.el7.x86_64
openssl-libs-1.0.2k-8.el7.x86_64 pcre-8.32-17.el7.x86_64
zlib-1.2.7-17.el7.x86_64
(gdb) bt
#0 0x0000000000454839 in cs_destroy (cs=0x207edd0) at
include/proto/connection.h:704
#1 si_release_endpoint (si=0x2083540) at include/proto/stream_interface.h:162
#2 stream_free (s=0x20832e0) at src/stream.c:398
#3 process_stream (t=<optimized out>) at src/stream.c:2513
#4 0x00000000004bc38e in process_runnable_tasks () at src/task.c:229
#5 0x0000000000408d9c in run_poll_loop () at src/haproxy.c:2399
#6 run_thread_poll_loop (data=<optimized out>) at src/haproxy.c:2461
#7 main (argc=<optimized out>, argv=0x7ffe6e2cf2d8) at src/haproxy.c:3065
(gdb) quit
HaProxy Install Details:
HA-Proxy version 1.8.4-1deb90d 2018/02/08
Copyright 2000-2018 Willy Tarreau <wi...@haproxy.org>
Build options :
TARGET = linux2628
CPU = generic
CC = gcc
CFLAGS = -O2 -g -fno-strict-aliasing -Wdeclaration-after-statement -fwrapv
-Wno-unused-label
OPTIONS = USE_LIBCRYPT=1 USE_ZLIB=1 USE_THREAD=1 USE_OPENSSL=1 USE_PCRE=1
Default settings :
maxconn = 2000, bufsize = 16384, maxrewrite = 1024, maxpollevents = 200
Built with OpenSSL version : OpenSSL 1.0.1e-fips 11 Feb 2013
Running on OpenSSL version : OpenSSL 1.0.1e-fips 11 Feb 2013
OpenSSL library supports TLS extensions : yes
OpenSSL library supports SNI : yes
OpenSSL library supports : SSLv3 TLSv1.0 TLSv1.1 TLSv1.2
Built with transparent proxy support using: IP_TRANSPARENT IPV6_TRANSPARENT
IP_FREEBIND
Encrypted password support via crypt(3): yes
Built with multi-threading support.
Built with PCRE version : 8.32 2012-11-30
Running on PCRE version : 8.32 2012-11-30
PCRE library supports JIT : no (USE_PCRE_JIT not set)
Built with zlib version : 1.2.7
Running on zlib version : 1.2.7
Compression algorithms supported : identity("identity"), deflate("deflate"),
raw-deflate("deflate"), gzip("gzip")
Built with network namespace support.
Available polling systems :
epoll : pref=300, test result OK
poll : pref=200, test result OK
select : pref=150, test result OK
Total: 3 (3 usable), will use epoll.
Available filters :
[SPOE] spoe
[COMP] compression
[TRACE] trace
Please let me know what's the root cause this option works fine with 1.7.x
version.
Thanks,
Praveen.