Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1755 connectés 

  FORUM HardWare.fr
  Programmation
  C

  [C-ANSI] Création Socket

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C-ANSI] Création Socket

n°1476050
paowz
Posté le 15-11-2006 à 21:04:36  profilanswer
 

Bonjour,
 
J'essaie de coder un truc de base, c'est à dire, mettre une socket en écoute pour un serveur.
Je fais ca sous code::block avec winsock.h (puisque y a pas socket.h parmi les includes)
 
ca donne ca:
 

Code :
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include  <sys/types.h>
  4. #include  <winsock.h>
  5. int portServer; //port d'écoute de la socket
  6. int newSock; //notre socket
  7. void error(char *msg){
  8.     perror(msg);
  9.     exit(1);
  10. }
  11. int main(int argc,char *argv[]){
  12.     struct sockaddr_in servAddr;
  13.     if((portServer = atoi(argv[1])) <= 1024)
  14.         error("Ports lower than 1024 forbidden !" );
  15. //création d'une socket
  16. if((newSock = socket(AF_INET,SOCK_STREAM,0)) < 0)
  17.         error("can't create socket.." );
  18.     servAddr.sin_family = AF_INET;
  19.     servAddr.sin_addr.s_addr = INADDR_ANY;
  20.     servAddr.sin_port = htons(portServer);
  21.     //liaison avec le port
  22.     if(bind(newSock,(struct sockaddr *) &servAddr, sizeof(servAddr)) < 0)
  23.         error("can't bind socket.." );
  24.     listen(newSock,5);
  25. return 0;
  26. }


 
Le problème est qu'il refuse de me créer cette socket en me retournant une valeur inferieure à 0, il s'arrete à "can't create socket" et je vois pas pourquoi  :??:  :??:  
 
Si vous aviez une idée.. :)
 
Cdt,

mood
Publicité
Posté le 15-11-2006 à 21:04:36  profilanswer
 

n°1476051
Emmanuel D​elahaye
C is a sharp tool
Posté le 15-11-2006 à 21:08:34  profilanswer
 

paowz a écrit :

J'essaie de coder un truc de base, c'est à dire, mettre une socket en écoute pour un serveur.
Je fais ca sous code::block avec winsock.h (puisque y a pas socket.h parmi les includes)
<...>
Le problème est qu'il refuse de me créer cette socket en me retournant une valeur inferieure à 0, il s'arrete à "can't create socket" et je vois pas pourquoi  :??:  :??:  
 
Si vous aviez une idée...


Ben oui... Faut lire la doc... Je conseille winsock2...
 
Modeste initiation : http://mapage.noos.fr/emdel/reseaux.htm
 
Au fait, C-ANSI et 'sockets' ne vont pas ensemble. Au mieux, les sockets sont POSIX.1. Aucune trace dans le pavé qui définit le langage C.  
 
http://www.open-std.org/jtc1/sc22/ [...] /n1124.pdf
 
 


Message édité par Emmanuel Delahaye le 15-11-2006 à 21:11:47

---------------
Des infos sur la programmation et le langage C: http://www.bien-programmer.fr Pas de Wi-Fi à la maison : http://www.cpl-france.org/
n°1476104
paowz
Posté le 15-11-2006 à 22:52:12  profilanswer
 

Merci bien :)
 
En fait, il fallait prévenir win que le processus allait utiliser des sockets, contrairement à unix qui n'a pas besoin d'être prévenu.
Très bons liens, sinon ^^
 
Cdt,


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C

  [C-ANSI] Création Socket

 

Sujets relatifs
création dynamique de nouvelles colonnes d'un listviewcréation d'un script avec namo web editor 5.5
[RESOLU] Ordre d'execution a la creation dune form ?je voudrais un conseil sur les logiciels de création
Outil de creation de siteProgrammation socket C
logiciel creation pages web WYSIWYG[socket]Vérifier l'état d'un socket
Socket multiport[c] Socket error 98 close serveur
Plus de sujets relatifs à : [C-ANSI] Création Socket


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR