Accept()

Necesitaría saber porque en un accept () se puede llegar a ingresar como parámetros (s, 0,0) donde "s" es el identificador dell socket creado, ¿pero los 0?
Es un cliente Servidor, el servidor en c bajo Linux y el cliente en visual basic.

1 respuesta

Respuesta
1
La declaración de la función accept es algo así:
int accept(int desc, struct sockaddr * p_addr,int * plgadr)
// desc - descriptor del socket
// p_addr - direccion del socket conectado
// P_lgadr - puntero al tamaño de la direccion
T leo de mi documentación:
"accept() extrae la conexión pendiente de la cola creada en el descriptor indicado, desc. En caso de no existir alguna conexión en la cola se bloque hasta que aparezca una.
Accept() crea un nuevo socket cuyo valor de descriptor es el entero devuelto por la llamada. Este socket está conectado con un cliente cuya dirección dejara el sistema operativo en la estructura pauntada por p_addr.
Por este nuevo socket se pueden enviar y recibir datos, mientras que el primer socket sigue escuchando nuevas peticiones y enviándolas a la cola
bla bla bla... bla
"
Bueno, como puedes comprobar son dos parámetros de salida, no de entrada, uno recibe el socket remoto y otro su tamaño.
Y eso es todo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas