diff options
-rw-r--r-- | debian/changelog | 7 | ||||
-rwxr-xr-x | lib/Vyatta/Login/User.pm | 7 |
2 files changed, 12 insertions, 2 deletions
diff --git a/debian/changelog b/debian/changelog index 732a2c6b..a2b0ab99 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +vyatta-cfg-system (0.16.31) unstable; urgency=low + + * Allow local user (non vbash) accounts + * Make message clearer + + -- Stephen Hemminger <stephen.hemminger@vyatta.com> Wed, 27 Jan 2010 18:21:04 -0800 + vyatta-cfg-system (0.16.30) unstable; urgency=low * Don't delete non-user accounts diff --git a/lib/Vyatta/Login/User.pm b/lib/Vyatta/Login/User.pm index 3038c467..11cf7f23 100755 --- a/lib/Vyatta/Login/User.pm +++ b/lib/Vyatta/Login/User.pm @@ -176,8 +176,11 @@ sub _local_users { my @users; setpwent(); - while ( my ($name, undef, $uid) = getpwent() ) { + while ( my ($name, undef, $uid, undef, undef, undef, + undef, undef, $shell) = getpwent() ) { next unless ($uid >= 1000 && $uid <= 29999); + next unless $shell eq '/bin/vbash'; + push @users, $name; } endpwent(); @@ -212,7 +215,7 @@ sub update { # did we see this user in configuration? next if defined $users{$user}; - warn "User $user not listed in current configuration\n"; + warn "removing $user not listed in current configuration\n"; # Remove user account but leave home directory to be safe system("sudo userdel $user") == 0 or die "Attempt to delete user $user failed: $!"; |