From 1220c314db3886b9dc78326e8a0ee1528c3f4001 Mon Sep 17 00:00:00 2001 From: joey <> Date: Sat, 11 Aug 2007 13:27:37 +0000 Subject: [PATCH] Query the LDAP server if no locally defined group with that name was found --- ud-useradd | 2 +- userdir_ldap.py | 8 +++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/ud-useradd b/ud-useradd index 075b20b..419ae6a 100755 --- a/ud-useradd +++ b/ud-useradd @@ -160,7 +160,7 @@ if Res != "": # GID Res = raw_input("Group ID Number [" + gidNumber + "]? "); if Res != "": - gidNumber = Group2GID(Res); + gidNumber = Group2GID(l, Res); # UID if uidNumber == 0: diff --git a/userdir_ldap.py b/userdir_ldap.py index a048299..0ba37f4 100644 --- a/userdir_ldap.py +++ b/userdir_ldap.py @@ -411,7 +411,7 @@ def GetUID(l,Name,UnknownMap = {}): return (None,None); -def Group2GID(name): +def Group2GID(l, name): """ Returns the numerical id of a common group on error returns -1 @@ -419,4 +419,10 @@ def Group2GID(name): for g in DebianGroups.keys(): if name == g: return DebianGroups[g] + + filter = "(gid=%s)" % name + res = l.search_s(BaseDn,ldap.SCOPE_ONELEVEL,filter,["gidNumber"]); + if res: + return GetAttr(res[0], "gidNumber") + return -1 -- 2.20.1