Goal: terminate argument validation in login when it hits a '--'.
Fixes: #66368

Status wrt upstream: It could certainly be submitted to upstream.
                     Upstream comment: "Better will be rewrite login
                     for use getopt_long()."

Index: shadow-4.1.0/src/login.c
===================================================================
--- shadow-4.1.0.orig/src/login.c
+++ shadow-4.1.0/src/login.c
@@ -253,6 +253,8 @@
 	for (arg = 1; arg < argc; arg++) {
 		if (argv[arg][0] == '-' && strlen (argv[arg]) > 2)
 			usage ();
+		if (!strcmp(argv[arg], "--"))
+			break; /* stop checking on a "--" */
 	}
 }
 
