BUG/MINOR: init: -S can have a parameter starting with a dash
authorWilliam Lallemand <wlallemand@haproxy.com>
Thu, 4 Jun 2020 21:49:20 +0000 (23:49 +0200)
committerWilliam Lallemand <wlallemand@haproxy.org>
Fri, 5 Jun 2020 17:07:23 +0000 (19:07 +0200)
There is no reason the -S option can't take an argument which starts with
a -. This limitation must only be used for options that take a
non-finite list of parameters (-sf/-st)

This can be backported only if the previous patch which fixes
copy_argv() is backported too.

Could be backported as far as 1.9.

(cherry picked from commit a6b3249935cf8e4de53b9940419683ef82cb40b8)
Signed-off-by: William Lallemand <wlallemand@haproxy.org>

src/haproxy.c

index f1263bf..15b8b1f 100644 (file)
@@ -1825,7 +1825,7 @@ static void init(int argc, char **argv)
                        else if (*flag == 'S') {
                                struct wordlist *c;
 
-                               if (argc <= 1 || argv[1][0] == '-') {
+                               if (argc <= 1) {
                                        ha_alert("Socket and optional bind parameters expected with the -S flag\n");
                                        usage(progname);
                                }