diff --git a/src/http_ana.c b/src/http_ana.c index ac3412bf0..200918099 100644 --- a/src/http_ana.c +++ b/src/http_ana.c @@ -864,12 +864,10 @@ int http_process_request(struct stream *s, struct channel *req, int an_bit) if ((sess->fe->options | s->be->options) & PR_O_ORGTO) { /* FIXME: don't know if IPv6 can handle that case too. */ - if (cli_conn && cli_conn->addr.from.ss_family == AF_INET) { + if (cli_conn && cli_conn->addr.from.ss_family == AF_INET && conn_get_dst(cli_conn)) { /* Add an X-Original-To header unless the destination IP is * in the 'except' network range. */ - conn_get_to_addr(cli_conn); - if (cli_conn->addr.to.ss_family == AF_INET && ((!sess->fe->except_mask_to.s_addr || (((struct sockaddr_in *)&cli_conn->addr.to)->sin_addr.s_addr & sess->fe->except_mask_to.s_addr)