From 9c3400fed701494b24575a602d25a83ae1815b72 Mon Sep 17 00:00:00 2001 From: Peter Palfrader Date: Mon, 2 Aug 2010 21:19:41 +0000 Subject: [PATCH] GenGroup partially --- UDLdap.py | 4 ++-- ud-generate | 19 ++++++++----------- 2 files changed, 10 insertions(+), 13 deletions(-) diff --git a/UDLdap.py b/UDLdap.py index 46bd7d0..4f83137 100644 --- a/UDLdap.py +++ b/UDLdap.py @@ -3,8 +3,8 @@ import time import userdir_ldap class Account: - array_values = ['keyFingerPrint', 'mailWhitelist', 'mailRBL', 'mailRHSBL'] - int_values = ['shadowExpire'] + array_values = ['keyFingerPrint', 'mailWhitelist', 'mailRBL', 'mailRHSBL', 'supplementaryGid'] + int_values = ['shadowExpire', 'gidNumber'] defaults = { 'accountStatus': 'active', 'keyFingerPrint': [] diff --git a/ud-generate b/ud-generate index 06f861f..490376a 100755 --- a/ud-generate +++ b/ud-generate @@ -459,19 +459,16 @@ def GenGroup(File): # Sort them into a list of groups having a set of users for x in PasswdAttrs: - uid = GetAttr(x, "uid") - if 'gidNumber' in x[1]: - GroupHasPrimaryMembers[ int(x[1]["gidNumber"][0]) ] = True - if x[1].has_key("uidNumber") == 0 or not IsInGroup(x): - continue - if x[1].has_key("supplementaryGid") == 0: - continue - + a = UDLdap.Account(x[0], x[1]) + GroupHasPrimaryMembers[ a['gidNumber'] ] = True + if not IsInGroup(x): continue + if not 'supplementaryGid' in a: continue + supgroups=[] - addGroups(supgroups, x[1]["supplementaryGid"], uid) + addGroups(supgroups, a['supplementaryGid'], a['uid']) for g in supgroups: - GroupMap[g].append(uid) - + GroupMap[g].append(a['uid']) + # Output the group file. J = 0 for x in GroupMap.keys(): -- 2.20.1