From: Michael Adam Date: Wed, 23 Jun 2010 10:02:31 +0000 (+0200) Subject: s3:idmap_ldap: use idmap_rw_new_mapping in idmap_ldap_new_mapping X-Git-Url: http://git.samba.org/?p=metze%2Fsamba%2Fwip.git;a=commitdiff_plain;h=e875e4762ab1477be513eaa56fda7d260fa6ae7e s3:idmap_ldap: use idmap_rw_new_mapping in idmap_ldap_new_mapping --- diff --git a/source3/winbindd/idmap_ldap.c b/source3/winbindd/idmap_ldap.c index e03ecb913ba5..29ccf408a7cb 100644 --- a/source3/winbindd/idmap_ldap.c +++ b/source3/winbindd/idmap_ldap.c @@ -768,43 +768,12 @@ done: static NTSTATUS idmap_ldap_new_mapping(struct idmap_domain *dom, struct id_map *map) { NTSTATUS ret; + struct idmap_ldap_context *ctx; - if (map == NULL) { - ret = NT_STATUS_INVALID_PARAMETER; - goto done; - } - - if ((map->xid.type != ID_TYPE_UID) && (map->xid.type != ID_TYPE_GID)) { - ret = NT_STATUS_INVALID_PARAMETER; - goto done; - } - - if (map->sid == NULL) { - ret = NT_STATUS_INVALID_PARAMETER; - goto done; - } - - ret = idmap_ldap_get_new_id(dom, &map->xid); - if (!NT_STATUS_IS_OK(ret)) { - DEBUG(3, ("Could not allocate id: %s\n", nt_errstr(ret))); - goto done; - } - - DEBUG(10, ("Setting mapping: %s <-> %s %lu\n", - sid_string_dbg(map->sid), - (map->xid.type == ID_TYPE_UID) ? "UID" : "GID", - (unsigned long)map->xid.id)); - - map->status = ID_MAPPED; + ctx = talloc_get_type(dom->private_data, struct idmap_ldap_context); - /* store the mapping */ - ret = idmap_ldap_set_mapping(dom, map); - if (!NT_STATUS_IS_OK(ret)) { - DEBUG(3, ("Could not store the new mapping: %s\n", - nt_errstr(ret))); - } + ret = idmap_rw_new_mapping(dom, ctx->rw_ops, map); -done: return ret; }