{
{   The purpose of this procedure is to send data over the
{ given global socket to the specified destination address.
{ This process first determines the device to use to reach the
{ given destination address. If the send queue on the channel
{ connection to the selected device is empty and there is enough
{ outbound capacity available, the user data is moved to system buffers
{ and sent to the device. If partial data is sent, the task is
{ queued in the send queue. The remaining data is sent as and when
{ outbound capacity becomes available.
{   If the send queue is non empty and the interface mode is blocking,
{ the current task is queued at the end of the send queue. Otherwise,
{ an appropriate status is returned to the user.
{
{       NLP$UDP_SEND_DATA (GLOBAL_SOCKET_ID, TIME_STAMP, LOCAL_IP_ADDRESS,
{             DESTINATION_SOCKET, DATA, DATA_LENGTH, CHECKSUM, INTERFACE_MODE,
{             INTERFACE_TIMEOUT, USER_CACHE_ENABLED, STATUS)
{
{ GLOBAL_SOCKET_ID: (input) This parameter specifies the global socket
{       identifier.
{
{ TIME_STAMP: (input) This parameter specifies the value of the free running
{       clock at the time of socket creation. This time stamp must match the
{       the time stamp in the global socket.
{
{ LOCAL_IP_ADDRESS: (input) This parameter specifies the IP address of the
{       local UDP device. If a non zero value is specified for this parameter,
{       the device supporting this IP address will be used to reach the
{       given destination address. A zero value implies that any device that can
{       reach the destination address can be used.
{
{ DESTINATION_SOCKET: (input) This parameter specifies the port and IP address
{       of the destination socket.
{
{ DATA: (input) This parameter specifies the data fragments.
{
{ DATA_LENGTH: (input) This parameter specifies the length of the data to be
{        sent.
{
{ CHECKSUM: (input) This parameter specifies the checksum option selected for the
{        socket.
{
{ INTERFACE_MODE: (input) This parameter specifies the interface mode option
{        selected for the socket.
{
{ INTERFACE_TIMEOUT: (input) This parameter specifies the interface timeout option
{        selected for the socket.
{
{ USER_CACHE_ENABLED: (input) This parameter specifies the user cache enabled option
{        selected for the socket.
{
{ STATUS: (output) This parameter specifies the request status.
{       CONDITION:
{             nae$sk_insufficient_resources
{             nae$sk_send_in_progress
{             nae$sk_send_timeout
{             nae$sk_socket_disconnected
{             nae$sk_socket_terminated
{
