Provided by: libowfat-dev_0.30-2ubuntu1_amd64 bug

NAME

       socket_connect6 - attempt to make a TCP connection

SYNTAX

       #include <socket.h>

       int socket_connect6(int s, const char ip[16],
                           uint16 port,uint32 scope_id);

DESCRIPTION

       socket_connect6 attempts to make a connection from TCP socket s to TCP port port on IP address ip.

       The  meaning of scope_id is dependent on the implementation and IPv6 IP.  On link-local IPv6 addresses it
       specifies the outgoing interface index.  The name (e.g. "eth0")  for  a  given  interface  index  can  be
       queried with getifname.  scope_id should normally be set to 0.

       socket_connect6 may return

       •      0,  to  indicate  that  the connection succeeded (and succeeded immediately, if the socket is non-
              blocking)

       •      -1, setting errno to error_inprogress or error_wouldblock, to indicate that  the  socket  is  non-
              blocking

       •      -1,  setting  errno  to  something  else,  to  indicate  that  the  connection  failed (and failed
              immediately, if the socket is non-blocking).

       When a background connection succeeds or fails, s becomes writable; you can use socket_connected  to  see
       whether  the  connection  succeeded.  If the connection failed, socket_connected returns 0, setting errno
       appropriately.

       Once a TCP socket is connected, you can use the read and write system calls to transmit data.

       You can call socket_connect6 without  calling  socket_bind6.   This  has  the  effect  as  first  calling
       socket_bind6 with IP address :: and port 0.

EXAMPLE

         #include <socket.h>

         int s;
         char ip[16];
         uint16 p;

         s = socket_tcp6();
         socket_bind6(s,ip,p);
         socket_connect6(s,ip,p,0);

SEE ALSO

       socket_connect4(3), socket_fastopen_connect6(3), socket_getifname(3)

                                                                                              socket_connect6(3)