コード例 #1
0
ファイル: requete.c プロジェクト: alucas/HTTP-server
void *requeteThread(void *param){
  client_t *client = (client_t *)param;
  int keep_alive = 0;
  int ret = 0;
  int endRequete = 0;

  initClientsBuffer(client);
  
  if(pthread_detach(pthread_self()) != 0){
    perror("pthread_detach");
    return NULL;
  }

  client->requete.use = 0;
  while((ret = readRequete(&client->requete, client->sock, &endRequete, true)) != -1){
    
    traiterRequete(client, ret, &keep_alive, endRequete);

    if(!keep_alive){
      break;
    }
  }

  if(client->sock != -1){
    printf("\e[31mdéconnexion du client (%s):%s (socket %d)\e[0m\n", client->host, client->serv, client->sock);
    deconnexionClient(client);
  }
コード例 #2
0
ファイル: FenServeur.cpp プロジェクト: f4deb/Raspberry-Pi
void FenServeur::nouvelleConnexion()
{
    envoyerATous(tr("<em>Un nouveau client vient de se connecter</em>"));

    QTcpSocket *nouveauClient = serveur->nextPendingConnection();
    clients << nouveauClient;

    connect(nouveauClient, SIGNAL(readyRead()), this, SLOT(donneesRecues()));
    connect(nouveauClient, SIGNAL(disconnected()), this, SLOT(deconnexionClient()));
}
コード例 #3
0
ファイル: serveur.cpp プロジェクト: folkvir/SurvivalSquare
/**
 * @brief serveur::newConnexion
 */
void serveur::newConnexion()
{
    //envoyerATous(tr("<em>Un nouveau client vient de se connecter</em>"));

    QTcpSocket *nouveauClient = server->nextPendingConnection();
    clients << nouveauClient;

    connect(nouveauClient, SIGNAL(readyRead()), this, SLOT(donneesRecues()));
    connect(nouveauClient, SIGNAL(disconnected()), this, SLOT(deconnexionClient()));

    QTime current = QTime::currentTime();
    log->append(QString("["+ (current.toString("HH:mm.ss a")) +"] : Connexion d'un nouveau joueur' "));
}