socket_accept6 man page

socket_accept6 — accept an IPv6 TCP connection on a socket

Syntax

#include <socket.h>

int socket_accept6(int s,char ip[16],uint16 *port,uint32 *scope_id);

Description

When a TCP connection arrives on a listening TCP socket s, the socket becomes readable.

socket_accept6 accepts the connection. It sets ip and port to the client IP address and client TCP port and scope_id to the IPv6 scope ID. It creates a new socket for the connection, and returns a file descriptor pointing to the new socket; you can use the read and write system calls to transmit data through that file descriptor.

If scope_id is the null pointer, socket_accept6 will discard the scope ID.

If something goes wrong, socket_accept6 returns -1, setting errno appropriately, without creating a new socket.

Example

#include <socket.h>

int s;
char ip[16];
uint16 port;
uint32 scope_id;

s = socket_tcp6();
socket_bind6(s,ip,port,scope_id);
socket_listen(s,16);
socket_accept6(s,ip,&port,&scope_id);

See Also

socket_accept4(3), socket_connected(3)

Referenced By

socket_accept4(3), socket_local6(3), socket_remote6(3).