problème avec <openssl/dh.h>
Bonjour,
j'ai besoin de me servire de openssl pour gérer des clés de cryptage et plus précisement des paramètres Diffie Hellman. Je suis étonné par le peux d'exemples ou de tutoriels sur cette librairie sur le web :(
Même si j'ai la doc sous les yeux je peine un peu à démarrer.
http://www.openssl.org/docs/crypto/dh.html#
J'ai notamment un problème à la compilation de ce code tout simple:
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
#include <stdio.h>
#include <openssl/dh.h>
#include <openssl/engine.h>
int main()
{
printf("Hello Word\n");
DH *myDH;
DH_size(myDH);
} |
erreur:
Code:
1 2 3 4 5
|
nexus TEST $ gcc test.c -o test
/tmp/cc0dRq7s.o: In function `main':
test.c:(.text+0x2f): undefined reference to `DH_size'
collect2: ld a retourné 1 code d'état d'exécution |
8O
Il ne trouve pas la fonction DH_size() alors que la déclaration de la structure DH ne lui pose pas de pb.
merci :wink:
Re: problème avec <openssl/dh.h>
Citation:
Envoyé par Tex-Twil
J'ai notamment un problème à la compilation de ce code tout simple:
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
#include <stdio.h>
#include <openssl/dh.h>
#include <openssl/engine.h>
int main()
{
printf("Hello Word\n");
DH *myDH;
DH_size(myDH);
} |
Ce code est très faux. Tu passes une valeur indéterminée à une fonction, le comportement est indéfini.
D'après
http://www.openssl.org/docs/crypto/dh.html#
C'est probablement
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
#include <stdio.h>
#include <openssl/dh.h>
#include <openssl/engine.h>
int main(void)
{
DH *myDH = DH_new();
if (myDH != NULL)
{
printf ("size = %d"\n, int DH_size(myDH);
/* ... */
DH_free(myDH);
}
return 0;
} |
Je dis ça un peu au pif, parce que je ne connais pas role des fonctions, et je ne vois pas d'exemple d'utilisation... Mais une bibilothèque basée sur une approche 'objet' est quelque chose de très courant...