diff options
author | Jakub Hrozek <jhrozek@redhat.com> | 2013-01-06 16:04:32 +0100 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2013-01-09 17:59:23 +0100 |
commit | f9f74a587c8e96dcf90214c760022684afc8bef7 (patch) | |
tree | f5ba9de45392c96e5362b0238a36db516dd83496 /src/providers/ldap/sdap_async_groups.c | |
parent | 480195bd70467bf05e2fd92cf25cec822a670ced (diff) | |
download | sssd-f9f74a587c8e96dcf90214c760022684afc8bef7.tar.gz sssd-f9f74a587c8e96dcf90214c760022684afc8bef7.tar.xz sssd-f9f74a587c8e96dcf90214c760022684afc8bef7.zip |
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.
Diffstat (limited to 'src/providers/ldap/sdap_async_groups.c')
-rw-r--r-- | src/providers/ldap/sdap_async_groups.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/providers/ldap/sdap_async_groups.c b/src/providers/ldap/sdap_async_groups.c index 26f36fb93..e1e84c339 100644 --- a/src/providers/ldap/sdap_async_groups.c +++ b/src/providers/ldap/sdap_async_groups.c @@ -398,11 +398,9 @@ static int sdap_save_group(TALLOC_CTX *memctx, /* Store the GID 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_GIDNUM, gid); - if (ret != EOK) { - DEBUG(SSSDBG_MINOR_FAILURE, - ("Could not store GID: [%s]\n", - strerror(ret))); + ret = sdap_replace_id(attrs, SYSDB_GIDNUM, gid); + if (ret) { + DEBUG(SSSDBG_OP_FAILURE, ("Cannot set the id-mapped GID\n")); goto done; } } else { |