Article View: es.comp.os.linux.programacion
Article #25Re: Problemas con libldap (CLAVE PGP)
From: Zephryn Xirdal
Date: Sun, 16 Oct 2005 10:16
Date: Sun, 16 Oct 2005 10:16
100 lines
4133 bytes
4133 bytes
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Oye, quillo, �d�nde est� tu clave pgp, que no me sale por ning�n lado?
Trauma wrote:
> El Sat, 15 Oct 2005 23:53:03 +0000 (UTC), Claudio <claudio@example.org>
> dijo:
>
>
>>>On 2005-10-15, Trauma <trauma@calambre.homeip.net> wrote:
>>>
>>>>Holas
>>>>
>>>>Estoy tonteando con libldap, y estoy atascado en la funci�n ldap_bind_s
>>>>
>>>>� Alguna idea sobre donde estoy metiendo la pata ?
>
>
>>>Pues sin c�digo es dificil. Muy dificil. No solo hay que saber C, hay
>>>que saber ldap y ser adivino. Te cuento, a mi me funciona esto:
>
>
> Tienes raz�n. Sin el c�digo es dificil, pero es que es para gestionar
> autorizaciones de un programa externo, y hay que seguir sus
> convenciones para el paso de argumentos a trav�s de la entrada
> estandar, por lo que est� lleno de operaciones con cadenas, y la
> llamada a ldap_bind no es tan directa. No obstante, ha sido comprobado
> justo hasta la llamada, que se realizaba con los argumentos correctos.
>
>
>>>$ cat ml.c
>>>#include <stdio.h>
>>>#include <stdlib.h>
>>>#include <ldap.h>
>>>
>>>main()
>>> {
>>> LDAP *p;
>>> int i;
>>> p = ldap_init("localhost",389);
>>> if (p== NULL) { exit((int)3);};
>>> i = ldap_bind_s(p,"cn=micommonname,dc=midominio,dc=tld","lapassquemeinvente",LDAP_AUTH_SIMPLE);
>>> if (i!=LDAP_SUCCESS) ldap_perror(p,"ldap");
>>> else puts("lo hice, lo hice!\n");
>>> }
>
>
> No va. Me dice que estoy usando la versi�n 2 del protocolo, y me pide
> la 3.
>
> Mirando en el c�digo fuente de libldap, he encontrado la forma, aunque
> aparentemente no est� documentada ( al menos en Debian Sarge ). Hay que
> forzar la versi�n 3 del protocolo despu�s de la llamada a ldap_init, y
> antes de realizar el bind.
>
> El c�digo quedar�a as�:
>
> #include <stdio.h>
> #include <stdlib.h>
> #include <ldap.h>
>
> main( ) {
> LDAP *p;
> int i;
> int v = LDAP_VERSION_MAX;
>
> if( ( p = ldap_init( "localhost", 389 ) ) == NULL ) exit( 3 );
>
> if( ldap_set_option( p, LDAP_OPT_PROTOCOL_VERSION, &version ) !=
> LDAP_OPT_SUCCESS )
> exit( 3 );
>
> i = ldap_bind_s( p,
> "cn=micommonname,dc=midominio,dc=tld",
> "lapassquemeinvente",
> LDAP_AUTH_SIMPLE );
>
> if( i != LDAP_SUCCESS )
> ldap_perror( p, "ldap" );
> else
> puts( "lo hice, lo hice! \n" );
> }
>
> Esto no realiza ninguna comprobaci�n de las versiones soportadas por el
> servidor. Tan solo utiliza la m�xima con soporte en libldap. De
> momento, y para lo que yo lo utilizar�, servir�.
>
> Bueno, muchas gracias. Ya volver� si me surge algo m�s.
>
> Enga, nos leemos.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (MingW32)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
iD8DBQFDUihjwSATqLEzPfMRAlgJAJ9MAtbH1nEzOJ/+0b76bwNQUkLpqgCeIfZ5
q43InqQDg32bXbjwFYKPHfY=
=joyD
-----END PGP SIGNATURE-----
Technical Details
Message-ID:
<3renikFh9go4U1@individual.net>Path:
arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mailReferences:
<20051016003601.46f9726b.trauma@calambre.homeip.net> <slrndl35iv.5ml.claudio@example.org> <20051016113916.070a6bd8.trauma@calambre.homeip.net>Show Full Headers
Complete Article Headers
X-Google-Thread: f86c8,98eb576eea54a68d X-Google-Thread: 10f58f,98eb576eea54a68d X-Google-Attributes: gidf86c8,gid10f58f,public X-Google-Language: SPANISH,ASCII Path: arc1-ca.pugleaf.net!g2news1.google.com!news2.google.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: Zephryn Xirdal <zephryn.xirdal@QUITAME.gmail.com> Newsgroups: es.comp.os.linux.programacion,es.comp.lenguajes.c Subject: Re: Problemas con libldap (CLAVE PGP) Date: Sun, 16 Oct 2005 12:16:03 +0200 Lines: 100 Message-ID: <3renikFh9go4U1@individual.net> References: <20051016003601.46f9726b.trauma@calambre.homeip.net> <slrndl35iv.5ml.claudio@example.org> <20051016113916.070a6bd8.trauma@calambre.homeip.net> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Trace: individual.net p7vw7SU++x0zLoyqMW5RsA8GgWHp1RhrhlXK7HX7UrWOWymhgn User-Agent: Mozilla Thunderbird 1.0.7 (Windows/20050923) X-Accept-Language: en-us, en In-Reply-To: <20051016113916.070a6bd8.trauma@calambre.homeip.net> X-Enigmail-Version: 0.93.0.0