[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gforge-commits] gforge/utils/ldap sql2ldif.pl,1.10.2.1,1.10.2.2
From: |
lo-lan-do |
Subject: |
[Gforge-commits] gforge/utils/ldap sql2ldif.pl,1.10.2.1,1.10.2.2 |
Date: |
Sun, 28 Mar 2004 10:47:52 -0600 |
Update of /cvsroot/gforge/gforge/utils/ldap
In directory db.perdue.net:/tmp/cvs-serv26081/utils/ldap
Modified Files:
Tag: Branch_3_1
sql2ldif.pl
Log Message:
Disable shell access for suspended and deleted accounts and enable
e-mail forwarding for accounts even if they don't belong to any group.
Index: sql2ldif.pl
===================================================================
RCS file: /cvsroot/gforge/gforge/utils/ldap/sql2ldif.pl,v
retrieving revision 1.10.2.1
retrieving revision 1.10.2.2
diff -u -d -r1.10.2.1 -r1.10.2.2
--- sql2ldif.pl 10 Jan 2004 21:41:11 -0000 1.10.2.1
+++ sql2ldif.pl 28 Mar 2004 16:47:47 -0000 1.10.2.2
@@ -83,6 +83,63 @@
";
}
+# Now for non-active users
+my $query = "
+SELECT user_name,realname,unix_pw,unix_uid,email
+FROM users
+WHERE unix_status!='A'
+";
+my $rel = $dbh->prepare($query);
+$rel->execute();
+
+#print "$sys_ldap_host\n";
+#print "$sys_ldap_base_dn\n";
+
address@hidden('/dev/null','/bin/cvssh','/bin/bash');
+
+while(my ($username, $realname, $pw, $uid, $email) = $rel->fetchrow()) {
+ $shell = '/bin/false' ;
+ $cvs_flags = 0 ;
+ print "dn: uid=$username,ou=People,$sys_ldap_base_dn\n";
+ #CB# To have the same id than generated by new_parse
+ $uid += $uid_add;
+ print "uid: $username\n";
+ if (!$realname) { $realname='?'; }
+ $realname=~tr#\x80-\xff#?#; # it should be UTF-8 encoded, we just drop
non-ascii chars
+ print "cn: $realname
+objectClass: account
+objectClass: posixAccount
+objectClass: top
+objectClass: shadowAccount
+objectClass: debGforgeAccount
+";
+ #CB# gid was 100, i replace with $gid=$uid
+ $gid = $uid;
+ print "userPassword: {crypt}$pw
+shadowLastChange: 10879
+shadowMax: 99999
+shadowWarning: 7
+loginShell: $shell
+debGforgeCvsShell: $cvs_flags2shell[$cvs_flags]
+uidNumber: $uid
+gidNumber: $gid
+homeDirectory: $chroot/home/users/$username
+gecos: $realname
+debGforgeForwardEmail: $email
+
+";
+ #CB# To have the same id than generated by new_parse
+ #CB# A group per user
+ print "dn: cn=$username,ou=Group,$sys_ldap_base_dn
+objectClass: posixGroup
+objectClass: top
+cn: $username
+userPassword: {crypt}x
+gidNumber: $gid
+
+";
+}
+
#
# Dump group entries (ou=Group)
#
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gforge-commits] gforge/utils/ldap sql2ldif.pl,1.10.2.1,1.10.2.2,
lo-lan-do <=