El 10 sept. 2016 12:24 a. m., "OddieX" <odd...@gmail.com> escribió: > > Estimados, ante todo esta es una consulta para programadores de C, ya que basicamente el problema que tengo es de programacion del helper... > > Estoy teniendo un problema con el helper que viene con Debian Jessie, para autenticar OpenVPN via LDAP... > > El tema es el siguiente: > > Mi scheme de OpenLDAP, en la rama ou="group" no tiene el MemberAttribute = "memberOf" o "member", sino que tiene memberUid: > Eh aqui el problema, el helper esta programado para que cuando haga una busqueda de grupos, le pase ese MemberAttribute con el %u y luego el DN Base completo... > > El atributo memberOf o member, toma lo siguiente: member: uid=test,ou=people,dc=domain,dc=com > En cambio el atributo memberUid: toma lo siguiente: memberUid: uid=test > > Yo necesitaria modificar el source del helper, para que deje de pasarle luego del MemberAttribute el DN Base y pase solo el uid=%u > > El problema es que no tengo idea de lenguaje C, y me estoy volviendo loco, ya de movida, tengo el problema del header objc-api.h que esta deprecated a partir de la version 4.8 de gcc-objc, cambie ese header por runtime.h, pero compila barbaro y cuando pruebo el helper crashea... > > Y el segundo problema, es que quiero eliminar esa parte del filtro, edite el archivo auth-ldap.m y lo modifique: > > while ((entry = [entryIter nextObject]) != nil) { > if ([ldap compareDN: [entry dn] withAttribute: [groupConfig memberAttribute] value: [ldapUser dn]]) { > /* Group match! */ > result = groupConfig; > } > } > > > Le elimine de withAttribute: en adelante quedando asi: > > while ((entry = [entryIter nextObject]) != nil) { > if ([ldap compareDN: [entry dn] ]) { > /* Group match! */ > result = groupConfig; > } > } > > Me gustaria saber si esta bien lo que estoy haciendo en el codigo (ya que no entiendo mucho de C)... Y si alguien la tiene clara y me dice como solucionar lo de objc-api.h, ya que creo que por ese header me crashea el binario cuando lo testeo (sin hacerle modificaciones)... > > Saludos
Buenas, porque no añades el atributo memberof? http://www.adimian.com/blog/2014/10/how-to-enable-memberof-using-openldap/ Saludos.