[evolvis-commits] r7950: Fixed errors in deteted user management?==?UTF-8?Q?↵
mirabilos at evolvis.org
mirabilos at evolvis.org
Thu Feb 24 15:53:39 CET 2011
Author: mirabilos
Date: 2011-02-24 15:53:39 +0100 (Thu, 24 Feb 2011)
New Revision: 7950
Modified:
trunk/gforge_base/evolvisforge-5.1/gforge/debian/changelog
trunk/gforge_base/evolvisforge-5.1/gforge/utils/new_parse.pl
trunk/gforge_base/evolvisforge-5.1/gforge/utils/underworld-dummy/ssh_dump.pl
Log:
Fixed errors in deteted user management
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/debian/changelog
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/debian/changelog 2011-02-24 14:53:38 UTC (rev 7949)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/debian/changelog 2011-02-24 14:53:39 UTC (rev 7950)
@@ -1,3 +1,11 @@
+sourceforge (2.6-0+15+) experimental; urgency=low
+
+ * [Christian] repared broken delete function in new_parse.pl
+ * [Christian] made that ssh_dump.pl don't try to create key files for
+ deleted user
+
+ -- Christian Bayle <bayle at debian.org> Sun, 1 Dec 2002 11:53:50 +0100
+
sourceforge (2.6-0+15) experimental; urgency=low
* [Christian] Add the possibility to hide forum in news_show_latest
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/utils/new_parse.pl
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/utils/new_parse.pl 2011-02-24 14:53:38 UTC (rev 7949)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/utils/new_parse.pl 2011-02-24 14:53:39 UTC (rev 7950)
@@ -50,7 +50,7 @@
($uid, $status, $username, $shell, $passwd, $realname) = split(":", $ln);
$uid += $uid_add;
$username =~ tr/A-Z/a-z/;
- $user_exists = (-d $homedir_prefix . $username);
+ $user_exists = (-d $homedir_prefix . $username || -f "/var/lib/sourceforge/tmp/$username.tar.gz");
if ($status eq 'A' && $user_exists) {
update_user($uid, $username, $realname, $shell, $passwd);
@@ -202,12 +202,17 @@
# User Deletion Function
#############################
sub delete_user {
- my ($username, $junk, $uid, $gid, $realname, $homedir, $shell, $counter);
- my $this_user = shift(@_);
+ #my ($username, $junk, $uid, $gid, $realname, $homedir, $shell, $counter);
+ my $username = shift(@_);
- print("Deleting User : $this_user\n");
- system("/bin/mv /var/lib/sourceforge/chroot/home/users/$username /var/lib/sourceforge/chroot/home/users/deleted_$username");
- system("/bin/tar -czf /var/lib/sourceforge/tmp/$username.tar.gz /var/lib/sourceforge/chroot/home/users/deleted_$username && /bin/rm -rf /var/lib/sourceforge/chroot/home/users/deleted_$username");
+ my $alreadydone=(-f "/var/lib/sourceforge/tmp/$username.tar.gz");
+ if (!$alreadydone){
+ print("Deleting User : $username\n");
+ echo("/bin/mv /var/lib/sourceforge/chroot/home/users/$username /var/lib/sourceforge/chroot/home/users/deleted_$username\n");
+ system("/bin/mv /var/lib/sourceforge/chroot/home/users/$username /var/lib/sourceforge/chroot/home/users/deleted_$username");
+ echo("/bin/tar -czf /var/lib/sourceforge/tmp/$username.tar.gz /var/lib/sourceforge/chroot/home/users/deleted_$username && /bin/rm -rf /var/lib/sourceforge/chroot/home/users/deleted_$username\n");
+ system("/bin/tar -czf /var/lib/sourceforge/tmp/$username.tar.gz /var/lib/sourceforge/chroot/home/users/deleted_$username && /bin/rm -rf /var/lib/sourceforge/chroot/home/users/deleted_$username");
+ }
}
#############################
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/utils/underworld-dummy/ssh_dump.pl
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/utils/underworld-dummy/ssh_dump.pl 2011-02-24 14:53:38 UTC (rev 7949)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/utils/underworld-dummy/ssh_dump.pl 2011-02-24 14:53:39 UTC (rev 7950)
@@ -13,7 +13,7 @@
&db_connect;
# Dump the Table information
-$query = "SELECT user_name,unix_uid,authorized_keys FROM users WHERE authorized_keys != ''";
+$query = "SELECT user_name,unix_uid,authorized_keys FROM users WHERE authorized_keys != '' AND status !='D'";
$c = $dbh->prepare($query);
$c->execute();
while(my ($username, $unix_uid, $ssh_key) = $c->fetchrow()) {
More information about the evolvis-commits
mailing list