summaryrefslogtreecommitdiff
path: root/source3/winbindd/idmap_ldap.c
diff options
context:
space:
mode:
Diffstat (limited to 'source3/winbindd/idmap_ldap.c')
-rw-r--r--source3/winbindd/idmap_ldap.c119
1 files changed, 0 insertions, 119 deletions
diff --git a/source3/winbindd/idmap_ldap.c b/source3/winbindd/idmap_ldap.c
index 453d31aeca..32bcff9e61 100644
--- a/source3/winbindd/idmap_ldap.c
+++ b/source3/winbindd/idmap_ldap.c
@@ -512,124 +512,6 @@ done:
}
/**********************************
- Set highest id.
-**********************************/
-
-static NTSTATUS idmap_ldap_set_hwm(struct unixid *xid)
-{
- TALLOC_CTX *ctx;
- NTSTATUS ret = NT_STATUS_UNSUCCESSFUL;
- int rc = LDAP_SERVER_DOWN;
- int count = 0;
- LDAPMessage *result = NULL;
- LDAPMessage *entry = NULL;
- LDAPMod **mods = NULL;
- char *new_id_str;
- char *filter = NULL;
- const char *dn = NULL;
- const char **attr_list;
- const char *type;
-
- /* Only do query if we are online */
- if (idmap_is_offline()) {
- return NT_STATUS_FILE_IS_OFFLINE;
- }
-
- if ( ! idmap_alloc_ldap) {
- return NT_STATUS_UNSUCCESSFUL;
- }
-
- ctx = talloc_new(idmap_alloc_ldap);
- if ( ! ctx) {
- DEBUG(0, ("Out of memory!\n"));
- return NT_STATUS_NO_MEMORY;
- }
-
- /* get type */
- switch (xid->type) {
-
- case ID_TYPE_UID:
- type = get_attr_key2string(idpool_attr_list,
- LDAP_ATTR_UIDNUMBER);
- break;
-
- case ID_TYPE_GID:
- type = get_attr_key2string(idpool_attr_list,
- LDAP_ATTR_GIDNUMBER);
- break;
-
- default:
- DEBUG(2, ("Invalid ID type (0x%x)\n", xid->type));
- return NT_STATUS_INVALID_PARAMETER;
- }
-
- filter = talloc_asprintf(ctx, "(objectClass=%s)", LDAP_OBJ_IDPOOL);
- CHECK_ALLOC_DONE(filter);
-
- attr_list = get_attr_list(ctx, idpool_attr_list);
- CHECK_ALLOC_DONE(attr_list);
-
- rc = smbldap_search(idmap_alloc_ldap->smbldap_state,
- idmap_alloc_ldap->suffix,
- LDAP_SCOPE_SUBTREE, filter,
- attr_list, 0, &result);
-
- if (rc != LDAP_SUCCESS) {
- DEBUG(0,("%s object not found\n", LDAP_OBJ_IDPOOL));
- goto done;
- }
-
- talloc_autofree_ldapmsg(ctx, result);
-
- count = ldap_count_entries(idmap_alloc_ldap->smbldap_state->ldap_struct,
- result);
- if (count != 1) {
- DEBUG(0,("Single %s object not found\n", LDAP_OBJ_IDPOOL));
- goto done;
- }
-
- entry = ldap_first_entry(idmap_alloc_ldap->smbldap_state->ldap_struct,
- result);
-
- dn = smbldap_talloc_dn(ctx,
- idmap_alloc_ldap->smbldap_state->ldap_struct,
- entry);
- if ( ! dn) {
- goto done;
- }
-
- new_id_str = talloc_asprintf(ctx, "%lu", (unsigned long)xid->id);
- if ( ! new_id_str) {
- DEBUG(0,("Out of memory\n"));
- ret = NT_STATUS_NO_MEMORY;
- goto done;
- }
-
- smbldap_set_mod(&mods, LDAP_MOD_REPLACE, type, new_id_str);
-
- if (mods == NULL) {
- DEBUG(0,("smbldap_set_mod() failed.\n"));
- goto done;
- }
-
- rc = smbldap_modify(idmap_alloc_ldap->smbldap_state, dn, mods);
-
- ldap_mods_free(mods, True);
-
- if (rc != LDAP_SUCCESS) {
- DEBUG(1,("Failed to allocate new %s. "
- "smbldap_modify() failed.\n", type));
- goto done;
- }
-
- ret = NT_STATUS_OK;
-
-done:
- talloc_free(ctx);
- return ret;
-}
-
-/**********************************
Close idmap ldap alloc
**********************************/
@@ -1420,7 +1302,6 @@ static struct idmap_alloc_methods idmap_ldap_alloc_methods = {
.init = idmap_ldap_alloc_init,
.allocate_id = idmap_ldap_allocate_id,
- .set_id_hwm = idmap_ldap_set_hwm,
.close_fn = idmap_ldap_alloc_close,
};