TCP/IP Programming Manual

Errors
If an error occurs, the return value is set to –1, and the external variable errno is set to one of
the following values:
Permission denied for broadcast because SO_BROADCAST is not set.EACCES
The message was too large to be sent atomically, as required by the socket options.EMSGSIZE
The specified socket was connected.EISCONN
The specified socket was shut down.ESHUTDOWN
The destination network was unreachable.ENETUNREACH
An invalid argument was specified.EINVAL
Usage Guidelines
For information on checking errors, see Nowait Call Errors (page 86).
Example
The following programming example calls the sendto64_ function.
#include <socket.h>
#include <netdb.h>
...
int status, tosend, len;
char buffer [8*1024];
...
tosend = sizeof(buffer);
status = sendto64_(channel, (char _ptr64*)&buffer[0], tosend, 0, (struct sockaddr _ptr64*)&remote, len);
sendto_nw
The sendto_nw function sends data on an unconnected UDP socket or raw socket created for
nowait operations.
C Synopsis
#include <socket.h>
#include <in.h>
#include <in6.h> /* for IPv6 use */
#include <netdb.h>
error = sendto_nw (socket, buffer_ptr, buffer_length, flags,
sockaddr_ptr, sockaddr_length, tag);
int error, socket;
char *buffer_ptr;
int buffer_length, flags;
struct sockaddr *sockaddr_ptr;
intsockaddr_length;
long tag;
TAL Synopsis
?NOLIST, SOURCE SOCKDEFT
?NOLIST, SOURCE SOCKPROC
error := sendto_nw (socket, buffer_ptr, buffer_length, flags,
sockaddr_ptr, sockaddr_length, tag);
INT(32) error,
socket;
STRING .EXT buffer_ptr;
INT(32) buffer_length,
flags;
INT .EXT sockaddr_ptr(sockaddr);
180 Library Routines