diff options
author | Lukas Slebodnik <lslebodn@redhat.com> | 2015-03-11 18:11:13 +0100 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2015-03-23 10:32:56 +0100 |
commit | cbab37e665d948278a491733e3993ac62beb0427 (patch) | |
tree | 0a4b6cd8496faf8e3e8626d6b8090525acc662ae | |
parent | f5c1ef14c603dda7ca3e5d9fe8c4cf54d72e97f2 (diff) | |
download | sssd-cbab37e665d948278a491733e3993ac62beb0427.tar.gz sssd-cbab37e665d948278a491733e3993ac62beb0427.tar.xz sssd-cbab37e665d948278a491733e3993ac62beb0427.zip |
memberof: Do not create request with 0 attribute values
[sysdb_set_entry_attr] (0x0080): ldb_modify failed: [Constraint violation](19)
[attribute 'ghost': attribute on 'name=Escalation,cn=groups,cn=LDAP,cn=sysdb'
specified, but with 0 values (illegal)]
[sysdb_error_to_errno] (0x0020): LDB returned unexpected error:
[Constraint violation]
[sysdb_set_entry_attr] (0x0040): Error: 14 (Bad address)
[sdap_store_group_with_gid] (0x0040): Could not store group Escalation
[sdap_save_group] (0x0080): Could not store group with GID: [Bad address]
[sdap_save_group] (0x0080): Failed to save group [Escalation]: [Bad address]
[sdap_save_groups] (0x0040): Failed to store group 1. Ignoring.
Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>
(cherry picked from commit 999c87114479f230c840a5c020e107c45b29fd56)
-rw-r--r-- | src/ldb_modules/memberof.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/ldb_modules/memberof.c b/src/ldb_modules/memberof.c index 995c382a8..4d7b23ea1 100644 --- a/src/ldb_modules/memberof.c +++ b/src/ldb_modules/memberof.c @@ -3302,6 +3302,12 @@ static int mbof_inherited_mod(struct mbof_mod_ctx *mod_ctx) } el->num_values = j; + if (el->num_values == 0) { + /* nothing to do */ + /* We cannot modify element which has 0 values */ + msg->num_elements = 0; + } + mod_ctx->igh->mod_msg = msg; mod_ctx->igh->el = el; |