From: Christopher Faulet Date: Mon, 4 Dec 2017 08:45:15 +0000 (+0100) Subject: BUG/MINOR: action: Don't check http capture rules when no id is defined X-Git-Tag: v1.9-dev1~610 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=fd608dd2;p=thirdparty%2Fhaproxy.git BUG/MINOR: action: Don't check http capture rules when no id is defined This is a regression in the commit 29730ba5 ("MINOR: action: Add a functions to check http capture rules"). We must check the capture id only when an id is defined. This patch must be backported in 1.8. --- diff --git a/src/proto_http.c b/src/proto_http.c index 7dd0daf9dd..f2152d6c15 100644 --- a/src/proto_http.c +++ b/src/proto_http.c @@ -12049,6 +12049,9 @@ enum act_return http_action_req_capture_by_id(struct act_rule *rule, struct prox */ int check_http_req_capture(struct act_rule *rule, struct proxy *px, char **err) { + if (rule->action_ptr != http_action_req_capture_by_id) + return 1; + if (rule->arg.capid.idx >= px->nb_req_cap) { memprintf(err, "unable to find capture id '%d' referenced by http-request capture rule", rule->arg.capid.idx); @@ -12235,6 +12238,9 @@ enum act_return http_action_res_capture_by_id(struct act_rule *rule, struct prox */ int check_http_res_capture(struct act_rule *rule, struct proxy *px, char **err) { + if (rule->action_ptr != http_action_res_capture_by_id) + return 1; + if (rule->arg.capid.idx >= px->nb_rsp_cap) { memprintf(err, "unable to find capture id '%d' referenced by http-response capture rule", rule->arg.capid.idx);