table of contents
        
      
      
    - Tumbleweed 0.34-2.1
 - Leap-16.0
 
| socket_accept6(3) | Library Functions Manual | socket_accept6(3) | 
NAME¶
socket_accept6 - accept an IPv6 TCP connection on a socket
SYNTAX¶
#include <libowfat/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 <libowfat/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), socket_accept6_makenonblocking(3), socket_accept6_setcloseonexec(3), socket_accept6_makenonblocking_setcloseonexec(3)