Le 23/06/2019 à 22:10, Tim Duesterhus a écrit :
Consider a config like:

     global
        log 127.0.0.1:10001 sample :10 local0

No sampling ranges are given here, leading to NULL being passed
as the first argument to qsort.

This configuration does not make sense anyway, a log without ranges
would never log. Thus output an error if no ranges are given.

This bug was introduced in d95ea2897eb951c72fd169f36b6a79905f2ed999.
This fix must be backported to HAProxy 2.0.
---
  src/log.c | 5 +++++
  1 file changed, 5 insertions(+)

diff --git a/src/log.c b/src/log.c
index ecbc7ab55..ef999d13f 100644
--- a/src/log.c
+++ b/src/log.c
@@ -929,6 +929,11 @@ int parse_logsrv(char **args, struct list *logsrvs, int 
do_del, char **err)
                        smp_rgs_sz++;
                }
+ if (smp_rgs == NULL) {
+                       memprintf(err, "no sampling ranges given");
+                       goto error;
+               }
+
                beg = smp_sz_str;
                end = beg + strlen(beg);
                new_smp_sz = read_uint((const char **)&beg, end);


Thanks, merged now.

--
Christopher Faulet

Reply via email to