accept

Prototypes

int accept(int Socquette, struct sockaddr *Adresse, int *Taille);

Description

Accepte un nouveau client se connectant à la socquette identifiée par Socquette.

Les coordonnées du client sont renseignées dans Adresse dans la limite de Taille octets.

Le résultat est 0 si l'opération a réussie.

Exemple

#include <stdio.h>
#include <socket.h>

int Socquette;
int SocquetteClient;
struct sockaddr_in Adresse;
int Taille;
char Buffer[100];

Taille=sizeof(struct sockaddr_in);
Socquette=socket(AF_INET, SOCK_STREAM, 0);
if (Socquette<0) ...
Adresse.sin_family=AF_UNIX;
Adresse.sin_port=(unsigned short)80;
Adresse.sin_addr.S_un.S_un_b.s_b1=(unsigned char)127;
Adresse.sin_addr.S_un.S_un_b.s_b2=(unsigned char)0;
Adresse.sin_addr.S_un.S_un_b.s_b3=(unsigned char)0;
Adresse.sin_addr.S_un.S_un_b.s_b4=(unsigned char)1;
...
if (bind(Socquette, (struct sockaddr *)&Adresse, Taille)<0) ...
if (listen(Socquette, 10)<0) ...
memset(&Adresse, 0, Taille);
SoquetteClient=accept(Socquette, (struct sockaddr *)&Adresse, Taille);
if (SocquetteClient<0) ...
memset(Buffer, 0, 100);
if (recv(SocquetteClient, Buffer, 100, 0)<0) ...
if (send(SocquetteClient, Buffer, 100, 0)<0) ...
if (shutdown(Socquette, 0x2)<0) ...

Avertissement

Bien s'assurer que la socquette a été correctement créée.

Voir aussi

socket pour créer une socquette. bind pour désigner l'adresse IP et le port cible. setsockopt pour fixer les options de la socquette. connect pour connecter la socquette. recv pour lire depuis la socquette. send pour écrire dans la soquette. shutdown pour fermer le socquette.