src/server/daemon/ldap_auth.c

changeset 579
e10457d74fe1
parent 490
d218607f5a7e
equal deleted inserted replaced
578:eb48f716b31c 579:e10457d74fe1
486 for(int i=0;i<count;i++) { 486 for(int i=0;i<count;i++) {
487 cxstring memberValue = cx_strn(values[i]->bv_val, values[i]->bv_len); 487 cxstring memberValue = cx_strn(values[i]->bv_val, values[i]->bv_len);
488 CxHashKey key = cx_hash_key(memberValue.ptr, memberValue.length); 488 CxHashKey key = cx_hash_key(memberValue.ptr, memberValue.length);
489 char *g_member = cxMapGet(group->members, key); 489 char *g_member = cxMapGet(group->members, key);
490 if(!g_member) { 490 if(!g_member) {
491 cxmutstr member = cx_strdup_a(group->members->allocator, memberValue); 491 cxmutstr member = cx_strdup_a(group->members->collection.allocator, memberValue);
492 if(!member.ptr) { 492 if(!member.ptr) {
493 ret = 1; 493 ret = 1;
494 break; 494 break;
495 } 495 }
496 if(cxMapPut(group->members, key, member.ptr)) { 496 if(cxMapPut(group->members, key, member.ptr)) {
531 if(is_member_attribute(authdb, attribute)) { 531 if(is_member_attribute(authdb, attribute)) {
532 if(group_add_member(group, ldap, msg, attribute)) { 532 if(group_add_member(group, ldap, msg, attribute)) {
533 // OOM 533 // OOM
534 ldap_memfree(attribute); 534 ldap_memfree(attribute);
535 // free at least some memory 535 // free at least some memory
536 cxMapDestroy(group->members); 536 cxMapFree(group->members);
537 pool_free(sn->pool, group); 537 pool_free(sn->pool, group);
538 group = NULL; 538 group = NULL;
539 break; 539 break;
540 } 540 }
541 } 541 }

mercurial