diff options
author | Rob Crittenden <rcritten@redhat.com> | 2008-10-04 05:17:11 -0400 |
---|---|---|
committer | Rob Crittenden <rcritten@redhat.com> | 2008-10-04 05:17:11 -0400 |
commit | cb795fa14bc2798fd8f1c6e2b87d19432e3f84a1 (patch) | |
tree | df904bb60d1842d01ba98bd2234913b5d73070ed /ipa_server/servercore.py | |
parent | 7e4b0a072e69351496010d7b2151c9b434c8fdb0 (diff) | |
download | freeipa-cb795fa14bc2798fd8f1c6e2b87d19432e3f84a1.tar.gz freeipa-cb795fa14bc2798fd8f1c6e2b87d19432e3f84a1.tar.xz freeipa-cb795fa14bc2798fd8f1c6e2b87d19432e3f84a1.zip |
Add group plugin, routine to get cn=ipaconfig
Diffstat (limited to 'ipa_server/servercore.py')
-rw-r--r-- | ipa_server/servercore.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/ipa_server/servercore.py b/ipa_server/servercore.py index dd23aacb5..34008abe3 100644 --- a/ipa_server/servercore.py +++ b/ipa_server/servercore.py @@ -32,6 +32,8 @@ realm = krbctx.default_realm basedn = ipautil.realm_to_suffix(realm) DefaultUserContainer = "cn=users,cn=accounts" +DefaultGroupContainer = "cn=groups,cn=accounts" +DefaultServiceContainer = "cn=services,cn=accounts" def convert_entry(ent): entry = dict(ent.data) @@ -97,6 +99,16 @@ def get_list (base, searchfilter, sattrs=None): return map(convert_entry, entries) +# General searches + +def get_entry_by_dn (dn, sattrs=None): + """Get a specific entry. Return as a dict of values. + Multi-valued fields are represented as lists. + """ + searchfilter = "(objectClass=*)" +# logging.info("IPA: get_entry_by_dn '%s'" % dn) + return get_base_entry(dn, searchfilter, sattrs) + def update_entry (oldentry, newentry): """Update an LDAP entry @@ -148,3 +160,14 @@ def get_objectclasses(): result.append(oc[3].replace("'","")) return result + +def get_ipa_config(): + """Retrieve the IPA configuration""" + searchfilter = "cn=ipaconfig" + try: + config = get_sub_entry("cn=etc," + basedn, searchfilter) + except ldap.NO_SUCH_OBJECT, e: + # FIXME + raise e + + return config |