Main Page   Modules   Alphabetical List   Data Structures   File List   Data Fields   Globals   Related Pages   Examples  

UDP Sockets
[Socket API]

UDP sockets. More...

Functions

UDPSOCKETNutUdpCreateSocket (u_short port)
 Create an UDP socket.

int NutUdpSendTo (UDPSOCKET *sock, u_long addr, u_short port, void *data, u_short len)
 Send an UDP datagram.

int NutUdpReceiveFrom (UDPSOCKET *sock, u_long *addr, u_short *port, void *data, u_short size, u_long timeout)
 Receive an UDP datagram.

int NutUdpDestroySocket (UDPSOCKET *sock)
 Close UDP socket.

UDPSOCKETNutUdpFindSocket (u_short port)
 Find a matching socket.


Variables

UDPSOCKETudpSocketList

Detailed Description

UDP sockets.

Nut/Net supports connectionless UDP sockets only.


Function Documentation

UDPSOCKET* NutUdpCreateSocket u_short    port
 

Create an UDP socket.

Parameters:
port Server applications provide the local port number with this parameter. Client applications should pass zero.
Returns:
Socket descriptor of the newly created UDP socket or 0 if there is not enough memory left.

int NutUdpDestroySocket UDPSOCKET   sock
 

Close UDP socket.

The memory occupied by the socket is immediately released after calling this function. The application must not use the socket after this call.

Parameters:
sock Socket descriptor. This pointer must have been retrieved by calling NutUdpCreateSocket().
Returns:
0 on success, -1 otherwise.

UDPSOCKET* NutUdpFindSocket u_short    port
 

Find a matching socket.

Loop through all sockets and find a matching one.

Note:
Applications typically do not need to call this function.
Parameters:
port Local port number.
Returns:
Socket descriptor.

int NutUdpReceiveFrom UDPSOCKET   sock,
u_long   addr,
u_short   port,
void *    data,
u_short    size,
u_long    timeout
 

Receive an UDP datagram.

Parameters:
sock Socket descriptor. This pointer must have been retrieved by calling NutUdpCreateSocket().
addr IP address of the remote host in network byte order.
port Remote port number in host byte order.
data Pointer to the buffer that receives the data.
size Size of the buffer that receives the data.
timeout Maximum number of milliseconds to wait.
Returns:
The number of bytes received, if successful. The return value -1 indicates an error. On timeout 0 is returned.
Note:
Timeout is limited to the granularity of the system timer.

int NutUdpSendTo UDPSOCKET   sock,
u_long    addr,
u_short    port,
void *    data,
u_short    len
 

Send an UDP datagram.

Parameters:
sock Socket descriptor. This pointer must have been retrieved by calling NutUdpCreateSocket().
addr IP address of the remote host in network byte order.
port Remote port number in host byte order.
data Pointer to a buffer containing the data to send.
len Number of bytes to be sent.
Returns:
0 on success, -1 otherwise.


Variable Documentation

UDPSOCKET* udpSocketList
 

Linked list of all UDP sockets.


© 2000-2003 by egnite Software GmbH - visit http://www.ethernut.de/