diff options
author | Gerald Carter <jerry@samba.org> | 2005-01-20 16:31:42 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 10:55:03 -0500 |
commit | e86235fbdcfe8dd71b2ee887052e27f67a240fab (patch) | |
tree | 8c655206dc786e92dc5884f124dc48bab0ffe999 /examples/LDAP/smbldap-tools/smbldap-userdel.pl | |
parent | 5f659ffbf07eeba2fdabaaa7def0f78726f68ab2 (diff) | |
download | samba-e86235fbdcfe8dd71b2ee887052e27f67a240fab.tar.gz samba-e86235fbdcfe8dd71b2ee887052e27f67a240fab.tar.bz2 samba-e86235fbdcfe8dd71b2ee887052e27f67a240fab.zip |
r4867: Removing smbldap-tools from the svn tree. I'll include
the latest version in the actual release tarballs.
Have spoken to the idealx developers about this.
Updated README to reflect the changte for people using svn.
Removed ldapsync.pl since it is no longer needed when using
the smbldap-tools (only keep things you support).
(This used to be commit f745e5119f420d4826ac395037880666761e05e8)
Diffstat (limited to 'examples/LDAP/smbldap-tools/smbldap-userdel.pl')
-rwxr-xr-x | examples/LDAP/smbldap-tools/smbldap-userdel.pl | 125 |
1 files changed, 0 insertions, 125 deletions
diff --git a/examples/LDAP/smbldap-tools/smbldap-userdel.pl b/examples/LDAP/smbldap-tools/smbldap-userdel.pl deleted file mode 100755 index f1e69e209c..0000000000 --- a/examples/LDAP/smbldap-tools/smbldap-userdel.pl +++ /dev/null @@ -1,125 +0,0 @@ -#!/usr/bin/perl - -# This code was developped by IDEALX (http://IDEALX.org/) and -# contributors (their names can be found in the CONTRIBUTORS file). -# -# Copyright (C) 2001-2002 IDEALX -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, -# USA. - -# Purpose of smbldap-userdel : user (posix,shadow,samba) deletion - -use strict; -use FindBin; -use FindBin qw($RealBin); -use lib "$RealBin/"; -use smbldap_tools; - - -##################### - -use Getopt::Std; -my %Options; - -my $ok = getopts('r?', \%Options); - -if ( (!$ok) || (@ARGV < 1) || ($Options{'?'}) ) { - print "Usage: $0 [-r?] username\n"; - print " -r remove home directory\n"; - exit (1); -} - -# Read only first @ARGV -my $user = $ARGV[0]; - -my $dn; -# user must not exist in LDAP -if (!defined($dn=get_user_dn($user))) { - print "$0: user $user does not exist\n"; - exit (6); -} - -if ($< != 0) { - print "You must be root to delete an user\n"; - exit (1); -} - -my $homedir; -if (defined($Options{'r'})) { - $homedir=get_homedir($user); -} - -# remove user from groups -my $groups = find_groups_of $user; -my @grplines = split(/\n/,$groups); - -my $grp; -foreach $grp (@grplines) { - my $gname = ""; - if ( $grp =~ /dn: cn=([^,]+),/) { - $gname = $1; - #print "xx $gname\n"; - } - if ($gname ne "") { - group_remove_member($gname, $user); - } -} - -# XXX -delete_user($user); - -# delete dir -- be sure that homeDir is not a strange value -if (defined($Options{'r'})) { - if ($homedir !~ /^\/dev/ and $homedir !~ /^\/$/) { - system "rm -rf $homedir"; - } -} - -my $nscd_status = system "/etc/init.d/nscd status >/dev/null 2>&1"; - -if ($nscd_status == 0) { - system "/etc/init.d/nscd restart > /dev/null 2>&1"; -} - -exit (0); - -############################################################ - -=head1 NAME - - smbldap-userdel.pl - Delete a user account and related files - -=head1 SYNOPSIS - - smbldap-userdel.pl [-r] login - -=head1 DESCRIPTION - - The smbldap-userdel.pl command modifies the system - account files, deleting all entries that refer to login. - The named user must exist. - - -r Files in the user's home directory will be removed along with - the home directory itself. Files located in other file - systems will have to be searched for and deleted manually. - -=head1 SEE ALSO - - userdel(1) - -=cut - -#' |