Page principale | Liste des namespaces | Hiérarchie des classes | Liste par ordre alphabétique | Liste des composants | Liste des fichiers | Membres des namespaces | Composants | Déclarations

# ExCSocketServer.cpp

Aller à la documentation de ce fichier.

    00001 // ExCSocketServeur.cpp: implementation of the ExCSocketServer class.
    00002 //
    00004 #include "ExCSocketServer.h"
    00006 // Construction/Destruction
    00008
    00009 ExCSocketServer::ExCSocketServer(){Guard(ExCSocketServer::ExCSocketServer())
    00010         ExCSocket();
    00011 UnGuard
    00012 }
    00013
    00014 ExCSocketServer::ExCSocketServer(int domaine,int protocole){Guard(ExCSocketServer::ExCSocketServer())
    00015         ExCSocket(domaine,protocole);
    00016 UnGuard
    00017 }
    00018
    00019 ExCSocketServer::~ExCSocketServer(){Guard(ExCSocketServer::~ExCSocketServer())
    00020         Close();
    00021 UnGuard
    00022 }
    00023
    00024 int ExCSocketServer::Listen(){Guard(ExCSocketServer::Listen())
    00025         int hNewSocket=0;
    00026         #ifdef _WIN32
    00027                 int tailleSockaddr_in;
    00028         #else
    00029                 unsigned int tailleSockaddr_in;
    00030         #endif
    00031
    00032
    00033         tailleSockaddr_in= sizeof(struct sockaddr_in);
    00034         hNewSocket=accept(m_hSocket,(struct sockaddr *)&m_AdresseSocket,&tailleSockaddr_in);
    00035         if(hNewSocket==-1)
    00036         {
    00037                 Close();
    00038                 Trace(Erreur sur le listen)
    00039                 EXC
    00040         }
    00041         return hNewSocket;
    00042
    00043 UnGuard
    00044 }
    00045
    00046 void ExCSocketServer::Init(void){Guard(CSocket::Init(void))
    00047         ExCSocket::Init();
    00048         #ifndef _WIN32
    00049                 if(bind(m_hSocket,(struct sockaddr *)&m_AdresseSocket,sizeof(struct sockaddr_in))==-1)
    00050                 {
    00051                         Trace(Erreur sur le bind su socket)
    00052                         EXC
    00053                 }
    00054                 if(listen(m_hSocket,SOMAXCONN)==-1)
    00055                 {
    00056                         close(m_hSocket);
    00057                         EXC
    00058                 }
    00059         #endif
    00060 UnGuard
    00061 }