[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Ayuda con helper/plugin de openvpn-auth-ldap.so



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

Reply to: