Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : https en c [ Archives / Réseau / Internet ] (topl)

lundi 19 avril 2004 à 10:51:55 | https en c

topl


Bonjour,

Je voudrais savoir comment effectuer une connexion web en utilisant le https.

Je connais pas trop le protocole et tout la phase de négociation des certificats.

Donc si kelkun connait une librairie fiable avec un tuto pour faire ca merci!!!


lolo le rigolo

lundi 19 avril 2004 à 11:27:30 | Re : https en c

MetalDwarf


la librairie OpenSSL si tu veux faire du bas niveau. Elle est disponible sous Linux et Windows au moins.
OpenSSL permet de faire un serveur ou un client, mais si tu veux simplement recuperer une page web pas HTTPS, le plus simple est d utiliser libcurl qui fait tout a ta place!

http://curl.haxx.se/libcurl/c

Voila!!

lundi 19 avril 2004 à 13:12:47 | Re : https en c

lpikachu58

ou reprend des librairie d'apache


be linux

lundi 19 avril 2004 à 16:34:37 | Re : https en c

MetalDwarf


En fait Apache utilise OpenSSL...

mardi 20 avril 2004 à 09:21:02 | Re : https en c
mardi 20 avril 2004 à 15:36:35 | Re : https en c

topl

Pour les interesse g reussi avec libssl(livre avec openssl).


#include <openssl/ssl.h>

int s;
SSL *ssl=NULL;
SSL_CTX *sslctx;

/* conection a une socket 's' sur le server sur port 443*/


SSL_load_error_strings();
SSL_library_init();
if ((sslctx = SSL_CTX_new(SSLv23_client_method())) == NULL) { fprintf(stderr, "SSL_CTX_new() error\n"); exit(1); }
if ((ssl = SSL_new(sslctx)) == NULL) { fprintf(stderr, "SSL_new() error\n"); exit(1);}
if (SSL_set_fd(ssl, s) != 1) { fprintf(stderr, "SSL_set_fd() error\n"); exit(1)}
if (SSL_connect(ssl) != 1) { fprintf(stderr, "SSL_connect() error\n"); exit(1);}
sprintf(tmp,"GET %s \r\n\r\n",purl);
if (SSL_write(ssl, tmp, strlen(tmp)) != strlen(tmp)) { perror("write() error"); exit(1); }

while (SSL_read(ssl, bufrec, sizeof(bufrec))>0)
{
printf("%s",bufrec);
}




lolo le rigolo

samedi 9 avril 2005 à 05:39:30 | Re : https en c

slims

Bonjour aux lecteurs,
merci topl d avoir copier le bout de code utilisant la librairie openssl, cela m a fais gagner du temps sur un projet perso.
Cependant me semble qu il y a une petite erreur sur ces lignes.
while (SSL_read(ssl, bufrec, sizeof(bufrec))>0)
{
   printf("%s",bufrec);
}
Se serait mieux si tu recuperais la valeur de retour de SSL_read() a fin de mettre un '\0' en fin de tampon pour eviter le debordement memoire.

int      nb_read;

while ((nb_read = SSL_read(ssl, buffer, sizeof(buffer))) > 0)
{
   buffer[nb_read] = '\0';
   printf("%s", buffer);
}
printf("\n");
Amicalement,
slims42.




Cette discussion est classé dans : https


Répondre à ce message

Sujets en rapport avec ce message

Récupérer la page source d'une page HTTPs [ par zebulon88 ] Bonjour à tous,je recherche un moyen d'afficher le code source d'une page HTTPs,Est ce possible?Les données s'affichent bien dans le navigateur, on pe UrldownloadTofile from https server [ par weahgeorges ] Salut,je rédige un programme sous windows qui doit récupérer des fichiers sur un server https ( Je veux dire avant de pouvoir accéder au server je doi

Livres en rapport



Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,094 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.