Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

socket_recv6(3) [debian man page]

socket_recv6(3) 					     Library Functions Manual						   socket_recv6(3)

NAME
socket_recv6 - receive a UDP datagram SYNTAX
#include <socket.h> ssize_t socket_recv6(int s, char* buf, size_t len, char ip[16], uint16* port, uint32* scope_id); 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. 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. EXAMPLE
#include <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); SEE ALSO
socket_recv4(3), socket_getifname(3) socket_recv6(3)

Check Out this Related Man Page

UDP(7P) 																   UDP(7P)

NAME
UDP - Internet User Datagram Protocol SYNOPSIS
DESCRIPTION
UDP is a simple, unreliable datagram protocol used to support the socket type for the internet protocol family. UDP sockets are connec- tionless, and are normally used with the and calls (see send(2) and recv(2). The call can also be used to simulate a connection (see con- nect(2). When used in this manner, it fixes the destination for future transmitted packets (in which case the or system calls can be used), as well as designating the source from which packets are received. The and calls can be used at any time if the source of the mes- sage is unimportant. UDP address formats are identical to those used by TCP. In particular, UDP requires a port identifier in addition to the normal Internet address format. Note that the UDP port domain is separate from the TCP port domain (in other words, a UDP port cannot be connected to a TCP port). The default send buffer size for UDP sockets is 65535 bytes. The default receive buffer size for UDP sockets is 2147483647 bytes. The send and receive buffer sizes for UDP sockets can be set by using the and options of the system call or the and options of the system call. The maximum size for these buffers is 2147483647 bytes. The maximum receive buffer size may be lowered using the parameter The maximum message size for a UDP datagram socket is limited by the lesser of the maximum size of an IP datagram and the size of the UDP datagram socket buffer. The maximum size of an IP datagram limits the maximum message size of a UDP message to 65507 bytes. Therefore, using the maximum socket buffer size will allow multiple maximum-sized messages to be placed on the send queue. The default inbound and outbound message size limit for a UDP datagram socket is 65535 bytes. The maximum message size for a UDP broadcast is limited by the MTU size of the underlying link. ERRORS
One of the following errors may be returned in if a socket operation fails. For a more detailed list of errors, see the man pages for spe- cific system calls. [EISCONN] Attempt to send a datagram with the destination address specified, when the socket is already connected. [ENOBUFS] No buffer space is available for an internal data structure. [EADDRINUSE] Attempt to create a socket with a port which has already been allocated. [EADDRNOTAVAIL] Attempt to create a socket with a network address for which no network interface exists. AUTHOR
The socket interfaces to UDP were developed by the University of California, Berkeley. SEE ALSO
ndd(1M). getsockopt(2), recv(2), send(2), socket(2), t_open(3), t_optmgmt(3) inet(7F), socket(7), RFC 768 User Datagram Protocol RFC 1122 Requirements for Internet hosts UDP(7P)
Man Page