From f9f74a587c8e96dcf90214c760022684afc8bef7 Mon Sep 17 00:00:00 2001 From: Jakub Hrozek Date: Sun, 6 Jan 2013 16:04:32 +0100 Subject: AD: replace GID/UID, do not add another one The code would call sysdb_attrs_add_uint32 which added another UID or GID to the ID=0 we already downloaded from LDAP (0 is the default value) when ID-mapping an entry. This led to funky behaviour later on when we wanted to process the ID. --- src/providers/ldap/sdap_async_users.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/providers/ldap/sdap_async_users.c') diff --git a/src/providers/ldap/sdap_async_users.c b/src/providers/ldap/sdap_async_users.c index f640b970a..ade1d37b5 100644 --- a/src/providers/ldap/sdap_async_users.c +++ b/src/providers/ldap/sdap_async_users.c @@ -160,8 +160,11 @@ int sdap_save_user(TALLOC_CTX *memctx, /* Store the UID in the ldap_attrs so it doesn't get * treated as a missing attribute from LDAP and removed. */ - ret = sysdb_attrs_add_uint32(attrs, SYSDB_UIDNUM, uid); - if (ret != EOK) goto done; + ret = sdap_replace_id(attrs, SYSDB_UIDNUM, uid); + if (ret) { + DEBUG(SSSDBG_OP_FAILURE, ("Cannot set the id-mapped UID\n")); + goto done; + } } else { ret = sysdb_attrs_get_uint32_t(attrs, opts->user_map[SDAP_AT_USER_UID].sys_name, -- cgit