diff options
author | Wolfram Schneider <wosch@FreeBSD.org> | 1996-12-29 21:56:31 +0000 |
---|---|---|
committer | Wolfram Schneider <wosch@FreeBSD.org> | 1996-12-29 21:56:31 +0000 |
commit | d8f99db12f55e1f07f7eb60a408904a29aa56d65 (patch) | |
tree | e9fde85ad04ad8a55dfae38918f6a270bd846b4a /adduser/rmuser.perl | |
parent | 77f867733f1e90fa723677dada8e2b5914bbb57c (diff) | |
download | pw-darwin-d8f99db12f55e1f07f7eb60a408904a29aa56d65.tar.gz pw-darwin-d8f99db12f55e1f07f7eb60a408904a29aa56d65.tar.zst pw-darwin-d8f99db12f55e1f07f7eb60a408904a29aa56d65.zip |
Allow dash `-' (except for first char) and underscore `_' in usernames.
pointed out by: max
Diffstat (limited to 'adduser/rmuser.perl')
-rw-r--r-- | adduser/rmuser.perl | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/adduser/rmuser.perl b/adduser/rmuser.perl index c55862a..73b42ae 100644 --- a/adduser/rmuser.perl +++ b/adduser/rmuser.perl @@ -30,7 +30,7 @@ # # Guy Helmer <ghelmer@alpha.dsu.edu>, 07/17/96 # -# $Id: rmuser.perl,v 1.1 1996/11/17 03:51:33 wosch Exp $ +# $Id: rmuser.perl,v 1.2 1996/12/07 21:25:12 ache Exp $ sub LOCK_SH {0x01;} sub LOCK_EX {0x02;} @@ -101,6 +101,8 @@ if ($< != 0) { if ($#ARGV == 0) { # Username was given as a parameter $login_name = pop(@ARGV); + die "Sorry, login name must contain alphanumeric characters only.\n" + if ($login_name !~ /^[a-z0-9_][a-z0-9_\-]*$/); } else { # Get the user name from the user $login_name = &get_login_name; @@ -229,7 +231,7 @@ sub get_login_name { print "Enter login name for user to remove: "; $login_name = <>; chop $login_name; - if (!($login_name =~ /[A-Za-z0-9_]/)) { + if (!($login_name =~ /^[a-z0-9_][a-z0-9_\-]*$/)) { print STDERR "Sorry, login name must contain alphanumeric characters only.\n"; } elsif (length($login_name) > 16 || length($login_name) == 0) { print STDERR "Sorry, login name must be 16 characters or less.\n"; |