Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

__skb_recv_datagram(9) [suse man page]

__SKB_RECV_DATAGRAM(9)						 Linux Networking					    __SKB_RECV_DATAGRAM(9)

NAME
__skb_recv_datagram - Receive a datagram skbuff SYNOPSIS
struct sk_buff * __skb_recv_datagram(struct sock * sk, unsigned flags, int * peeked, int * err); ARGUMENTS
sk socket flags MSG_ flags peeked returns non-zero if this packet has been seen before err error code returned DESCRIPTION
Get a datagram skbuff, understands the peeking, nonblocking wakeups and possible races. This replaces identical code in packet, raw and udp, as well as the IPX AX.25 and Appletalk. It also finally fixes the long standing peek and read race for datagram sockets. If you alter this routine remember it must be re-entrant. This function will lock the socket if a skb is returned, so the caller needs to unlock the socket in that case (usually by calling skb_free_datagram) * It does not lock socket since today. This function is * free of race conditions. This measure should/can improve * significantly datagram socket latencies at high loads, * when data copying to user space takes lots of time. * (BTW I've just killed the last cli in IP/IPv6/core/netlink/packet * 8) Great win.) * --ANK (980729) The order of the tests when we find no data waiting are specified quite explicitly by POSIX 1003.1g, don't change them without having the standard around please. COPYRIGHT
Kernel Hackers Manual 2.6. July 2010 __SKB_RECV_DATAGRAM(9)

Check Out this Related Man Page

udp(n)								 Tnm Tcl Extension							    udp(n)

__________________________________________________________________________________________________________________________________________________

NAME
udp - Send and receive UDP datagrams. _________________________________________________________________ DESCRIPTION
The udp command allows to send and receive datagrams using the User Datagram Protocol (UDP) (RFC 768). UDP COMMAND
udp open [port] The udp open command opens a UDP datagram socket and returns an udp handle. The socket is bound to given port number or name. An unused port number is used if the port argument is missing. udp connect host port The udp connect command opens a UDP datagram socket and connects it to a port on a remote host. A connected UDP socket only allows to send messages to a single destination. This usually allows to shorten the code since there is no need to specify the destination address for each udp send command on a connected UDP socket. The command returns a udp handle. udp send handle [host port] message The udp send command sends a datagram containing message to the destination specified by host and port. The host and port arguments may not be used if the UDP handle is already connected to a transport endpoint. If the UDP handle is not connected, you must use these optional arguments to specify the destination of the datagram. udp receive handle The udp receive command receives a datagram from the UDP socket associated with handle. This command blocks until a datagram is ready to be received. In most cases, it might be a good idea to check for pending datagrams using the udp bind command. udp close handle The udp close command closes the UDP socket associated with handle. udp bind handle readable [script] udp bind handle writable [script] The udp bind command allows to bind scripts to a UDP handle. A script is evaluated once the UDP handle becomes either readable or writable, depending on the third argument of the udp bind command. The script currently bound to a UDP handle can be retrieved by calling the udp bind command without a script argument. Bindings are removed by binding an empty string. udp info [handle] The udp info command without the handle argument returns a list of all existing UDP handles. Information about the state of a UDP handle can be obtained by supplying a valid UDP handle. The result is a list containing the source IP address, the source port, the destination IP address and the destination port. SEE ALSO
scotty(1), Tnm(n), Tcl(n) AUTHORS
Juergen Schoenwaelder <schoenw@cs.utwente.nl> Tnm udp(n)
Man Page