logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

socket_recv6 - receive a UDP datagram

Description

       socket_recv6  receives up to len bytes starting at buf from a UDP datagram coming in on the socket s.  It
       writes the UDP port to port and the IP address to ip, and returns the number of bytes  actually  received
       (or -1 if anything went wrong).

       For link-local addresses, scope_id will become the network interface number, which can be translated into
       the name of the interface ("eth0") with socket_getifname.

Example

         #include <libowfat/socket.h>

         int s;
         char ip[16];
         uint16 p;
         char buf[1000];
         int len;
         uint32 scope_id;

         s = socket_tcp4();
         socket_bind6(s,ip,p);
         len = socket_recv6(s,buf,sizeof(buf),ip,&p,&scope_id);

Name

       socket_recv6 - receive a UDP datagram

Return Value

       socket_recv6  returns the number of bytes in the datagram if one was received.  If not, it returns -1 and
       sets errno appropriately.

See Also

socket_recv4(3), socket_getifname(3)

                                                                                                 socket_recv6(3)

Syntax

#include<libowfat/socket.h>

       ssize_t socket_recv6(int s, char* buf, size_t len,
               char ip[16], uint16* port, uint32* scope_id);

See Also