summaryrefslogtreecommitdiffstats
path: root/adduser
diff options
context:
space:
mode:
authorDoug Barton <dougb@FreeBSD.org>2000-12-17 23:42:45 +0000
committerDoug Barton <dougb@FreeBSD.org>2000-12-17 23:42:45 +0000
commit4dbf59b1474960e1f74f5f236e5a301b1584d38c (patch)
treea8543fd08e2b227068777f2449c6dfdd0412e7d8 /adduser
parent13c910d4a0b7db5ab916a9c1b15c2283d1a817c7 (diff)
downloadpw-darwin-4dbf59b1474960e1f74f5f236e5a301b1584d38c.tar.gz
pw-darwin-4dbf59b1474960e1f74f5f236e5a301b1584d38c.tar.zst
pw-darwin-4dbf59b1474960e1f74f5f236e5a301b1584d38c.zip
* Fix a long line that I introduced in the last commit
* Backslash escape non-alphanumeric chars in the login name so that perl doesn't choke on things like '$'.
Diffstat (limited to 'adduser')
-rw-r--r--adduser/rmuser.perl5
1 files changed, 3 insertions, 2 deletions
diff --git a/adduser/rmuser.perl b/adduser/rmuser.perl
index b3f1406..c5c9b74 100644
--- a/adduser/rmuser.perl
+++ b/adduser/rmuser.perl
@@ -117,7 +117,8 @@ if ($#ARGV == 0) {
$login_name = &get_login_name;
}
-($name, $password, $uid, $gid, $change, $class, $gecos, $home_dir, $shell) = (getpwnam("$login_name"));
+($name, $password, $uid, $gid, $change, $class, $gecos, $home_dir, $shell) =
+ (getpwnam("$login_name"));
if ($?) {
print STDERR "${whoami}: Error: User ${login_name} not in password database\n";
@@ -316,7 +317,7 @@ sub update_passwd_file {
print STDERR "\n${whoami}: Warning: couldn't set mode of $new_passwd_file to 0600 ($!)\n\tcontinuing, but please check mode of /etc/master.passwd!\n";
$skipped = 0;
while (<MASTER_PW>) {
- if (not /^$login_name\:/io) {
+ if (not /^\Q$login_name:/io) {
print NEW_PW;
} else {
print STDERR "Dropped entry for $login_name\n" if $debug;