From: Christopher Faulet Date: Thu, 6 Aug 2020 08:32:28 +0000 (+0200) Subject: MEDIUM: lua: Don't filter exported fetches and converters X-Git-Tag: v2.1.9~45 X-Git-Url: http://git.haproxy.org/?a=commitdiff_plain;h=53f744116e82cf553097acc13ba854b16174bc52;p=haproxy-2.1.git MEDIUM: lua: Don't filter exported fetches and converters Thanks to previous commits, it is now safe to use from lua the sample fetches and sample converters that convert arguments, especially the strings (ARGT_STR). So now, there are all exported to the lua. They was filtered on the validation functions. Only fetches without validation functions or with val_hdr or val_payload_lv functions were exported, and converters without validation functions. This patch depends on following commits : * aec27ef44 "BUG/MINOR: lua: Duplicate lua strings in sample fetches/converters arg array" * fdea1b631 "MINOR: hlua: Don't needlessly copy lua strings in trash during args validation" It must be backported as far as 2.1 because the date() and http_date() converters are no longer exported because of the filter on the validation function, since the commit ae6f125c7 ("MINOR: sample: add us/ms support to date/http_date)". (cherry picked from commit 05e2d7744189e52dbd1625a168d6f8888b9658b8) Signed-off-by: Willy Tarreau (cherry picked from commit 4cf32912f80ca2d45eeb5d2dfdb5339a425f401a) Signed-off-by: Willy Tarreau --- diff --git a/src/hlua.c b/src/hlua.c index 505be12..ed2955b 100644 --- a/src/hlua.c +++ b/src/hlua.c @@ -7917,15 +7917,6 @@ void hlua_init(void) */ sf = NULL; while ((sf = sample_fetch_getnext(sf, &idx)) != NULL) { - - /* Dont register the keywork if the arguments check function are - * not safe during the runtime. - */ - if ((sf->val_args != NULL) && - (sf->val_args != val_payload_lv) && - (sf->val_args != val_hdr)) - continue; - /* gL.Tua doesn't support '.' and '-' in the function names, replace it * by an underscore. */ @@ -7965,12 +7956,6 @@ void hlua_init(void) */ sc = NULL; while ((sc = sample_conv_getnext(sc, &idx)) != NULL) { - /* Dont register the keywork if the arguments check function are - * not safe during the runtime. - */ - if (sc->val_args != NULL) - continue; - /* gL.Tua doesn't support '.' and '-' in the function names, replace it * by an underscore. */