aboutgitcodebugslistschat
diff options
context:
space:
mode:
authorStefano Brivio <sbrivio@redhat.com>2022-10-24 14:37:22 +0200
committerStefano Brivio <sbrivio@redhat.com>2022-10-24 14:37:22 +0200
commitc11277b94fda95e32e8d9848457ef2bd91772b30 (patch)
tree7e05f2425d061cbf09ad972e80284167d09632cc
parentb68da100ba37623ca9655c70125d744c11486f7d (diff)
downloadpasst-c11277b94fda95e32e8d9848457ef2bd91772b30.tar
passt-c11277b94fda95e32e8d9848457ef2bd91772b30.tar.gz
passt-c11277b94fda95e32e8d9848457ef2bd91772b30.tar.bz2
passt-c11277b94fda95e32e8d9848457ef2bd91772b30.tar.lz
passt-c11277b94fda95e32e8d9848457ef2bd91772b30.tar.xz
passt-c11277b94fda95e32e8d9848457ef2bd91772b30.tar.zst
passt-c11277b94fda95e32e8d9848457ef2bd91772b30.zip
conf: Don't pass leading ~ to parse_port_range() on exclusions2022_10_24.c11277b
Commit 84fec4e998b6 ("Clean up parsing of port ranges") drops the strspn() call before the parsing of excluded port ranges, because now we're checking against any stray characters at every step. However, that also has the effect of passing ~ as first character to the new parse_port_range(), which makes no sense: we already checked that ~ is the first character before the call, so skip it. Alona reported this output: Invalid port specifier ~15000,~15001,~15006,~15008,~15020,~15021,~15090 while the whole specifier is indeed valid. Reported-by: Alona Paz <alkaplan@redhat.com> Fixes: 84fec4e998b6 ("Clean up parsing of port ranges") Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
-rw-r--r--conf.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/conf.c b/conf.c
index ed93a60..598c711 100644
--- a/conf.c
+++ b/conf.c
@@ -262,6 +262,7 @@ static int conf_ports(const struct ctx *c, char optname, const char *optarg,
exclude_only = false;
continue;
}
+ p++;
if (parse_port_range(p, &p, &xrange))
goto bad;