conf: Fix getopt_long() optstring for current semantics of -D, -S, -p
Declaring them as required_argument in the longopts array specifies validation, but doesn't affect how optind is increased after parsing their values. Currently, passing one of these options as last option causes pasta to handle their own values as path to a binary to execute. Fixes:aae2a9bbf7
("conf: Use "-D none" and "-S none" instead of missing empty option arguments") Fixes:bf95322fc1
("conf: Make the argument to --pcap option mandatory") Signed-off-by: Stefano Brivio <sbrivio@redhat.com>
This commit is contained in:
parent
a1c38ffe0a
commit
bac7dfebe4
1 changed files with 2 additions and 2 deletions
4
conf.c
4
conf.c
|
@ -1094,9 +1094,9 @@ void conf(struct ctx *c, int argc, char **argv)
|
||||||
const char *optstring;
|
const char *optstring;
|
||||||
|
|
||||||
if (c->mode == MODE_PASST)
|
if (c->mode == MODE_PASST)
|
||||||
optstring = "dqfehs:p::P:m:a:n:M:g:i:D::S::46t:u:";
|
optstring = "dqfehs:p:P:m:a:n:M:g:i:D:S:46t:u:";
|
||||||
else
|
else
|
||||||
optstring = "dqfehI:p::P:m:a:n:M:g:i:D::S::46t:u:T:U:";
|
optstring = "dqfehI:p:P:m:a:n:M:g:i:D:S:46t:u:T:U:";
|
||||||
|
|
||||||
name = getopt_long(argc, argv, optstring, options, NULL);
|
name = getopt_long(argc, argv, optstring, options, NULL);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue