summaryrefslogtreecommitdiff
path: root/utils/rhrd-user
diff options
context:
space:
mode:
authorChristian Pointner <equinox@helsinki.at>2016-12-08 06:16:01 (GMT)
committerChristian Pointner <equinox@helsinki.at>2016-12-08 06:16:01 (GMT)
commitf0ea9667eaca528221a87dc455cdd1900f50c4c1 (patch)
tree0b74fed1f209a97d3503f50ba314d34ac5b4cc28 /utils/rhrd-user
parent5c1ce65bcb85772cd06d5bef7d2afd8add5c1593 (diff)
ask for confirmation on user/group removal
Diffstat (limited to 'utils/rhrd-user')
-rwxr-xr-xutils/rhrd-user24
1 files changed, 20 insertions, 4 deletions
diff --git a/utils/rhrd-user b/utils/rhrd-user
index 4d613b6..b6d5ac6 100755
--- a/utils/rhrd-user
+++ b/utils/rhrd-user
@@ -27,8 +27,9 @@ use String::MkPasswd qw(mkpasswd);
sub print_usage
{
print STDERR "Usage: rhrd-user list\n" .
- " rhrd-user (check|remove|groups|is-grids) <username>\n" .
+ " rhrd-user (check|groups|is-grids) <username>\n" .
" rhrd-user add <username> [ <fullname> ]\n" .
+ " rhrd-user remove [ -f ] <username>\n" .
" rhrd-user set-grids <username> (1|0)\n";
}
@@ -72,7 +73,13 @@ sub add
sub remove
{
- my ($ctx, $username) = @_;
+ my ($ctx, $username, $force) = @_;
+
+ if(!$force) {
+ return 1 if(!RHRD::utils::cmdline_ask_yn("do you really want to delete user '$username'"));
+ print("\n");
+ }
+ print("removing user: $username\n");
my @results = RHRD::rddb::remove_user($ctx, $username);
if(!defined $results[0] && defined $results[2]) {
@@ -166,11 +173,20 @@ if(defined $ctx) {
$ret = add($ctx, $username, $ARGV[2]);
}
} elsif($cmd eq "remove") {
- if($num_args != 2) {
+ if($num_args < 2 || $num_args > 3) {
print_usage();
$ret = 1;
} else {
- $ret = remove($ctx, $username);
+ if($num_args == 3) {
+ if($ARGV[1] ne '-f') {
+ print_usage();
+ $ret = 1;
+ } else {
+ $ret = remove($ctx, $ARGV[2], 1);
+ }
+ } else {
+ $ret = remove($ctx, $username, 0);
+ }
}
} elsif($cmd eq "groups") {
if($num_args != 2) {