Bonsoir

j'ai un probleme qd je crée une socket udp en souhaitant lui associer un numéro de port quelconque (automatiquement)

je la crée comme ceci
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
	struct hostent*infosHost;
	struct in_addr adresseIP;
	struct sockaddr_in adresseSocketClient;
	unsigned int tailleSockaddr_in;
 
 
	if((hSocket = socket(AF_INET,SOCK_DGRAM,0))==-1)
	{
		printf("Erreur: %d",errno);
		exit(1);
	}
	else
	printf("creation de la socket reussie \n",hSocket);
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
	tailleSockaddr_in = sizeof(struct sockaddr_in);
	memset(&adresseSocketClient,0,tailleSockaddr_in);//init
	adresseSocketClient.sin_family = AF_INET;
	memcpy(&adresseSocketClient.sin_addr,infosHost->h_addr,infosHost->h_length);
mon probleme est que le numéro de port qui lui est associé est tjrs null
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
	printf("IP host:%s \n",inet_ntoa(adresseIP));
	printf("num port %d \n",ntohs(adresseSocketClient.sin_port));
et je ne comprend pas pk?