1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
   |  
        int iSock, iRetour;
	struct sockaddr_in siAdresse; //Declaration de la structure des infos liés à l'ecoute
 
	// initialisation du port d'ecoute
	int m_iPort = 3232;
 
	//Creation de la socket d'ecoute
	iSock = socket(AF_INET, SOCK_STREAM, 0);
	if (iSock < 0)
        {
                cout << " erreur socket" << endl
		return 0;
        }
 
	siAdresse.sin_family 	  = AF_INET;
	siAdresse.sin_port   	  = htons(m_iPort); 
	siAdresse.sin_addr.s_addr = INADDR_ANY;
 
	//lie la socket au port et a l'adresse 
	iRetour = bind( iSock, (struct sockaddr*)& siAdresse, sizeof(siAdresse));
	if (iRetour < 0)
        {
                cout << " erreur bind" << endl
		return 0;
        }
 
	int iSockClient;
 
	int iTailleC = sizeof (siAdresse);
 
	listen (iRetour, 5);
	// lancement du serveur et attente des clients
	while (true)
	{
		cout << "Attente d'un client" << endl;
		iSockClient = accept(iRetour, (struct sockaddr*)& siAdresse, (socklen_t*) iTailleC);	
		if (iSockClient == -1)
		{
			cout << "erreur dans le accpet" << endl;
			return 0;
		}
 
		cout << "Un Client vient de se connecter" << endl;
	} |