From: Harm te Hennepe Date: Mon, 26 Mar 2018 20:37:56 +0000 (+0200) Subject: su.c: fix '--' slurping X-Git-Tag: 4.6~3^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=dbfe7dd42e67ff2fb50c6d6ad1552cb8c086b49a;p=shadow su.c: fix '--' slurping All arguments are already reordered and parsed by getopt_long since e663c69, so manual '--' slurping is wrong. Closes #101 --- diff --git a/src/su.c b/src/su.c index 974048e9..0e5dd6fd 100644 --- a/src/su.c +++ b/src/su.c @@ -809,10 +809,6 @@ static void process_flags (int argc, char **argv) if ((optind < argc) && (strcmp (argv[optind], "-") == 0)) { fakelogin = true; optind++; - if ( (optind < argc) - && (strcmp (argv[optind], "--") == 0)) { - optind++; - } } /* @@ -823,9 +819,6 @@ static void process_flags (int argc, char **argv) */ if ((optind < argc) && ('-' != argv[optind][0])) { STRFCPY (name, argv[optind++]); /* use this login id */ - if ((optind < argc) && (strcmp (argv[optind], "--") == 0)) { - optind++; - } } if ('\0' == name[0]) { /* use default user */ struct passwd *root_pw = getpwnam ("root");