Specifications
Chapter 18. TCP/IP
479
Syntax:
CALL "SOCKET.FN3" .fcRcvfrom SOCKFD%,
RECVBUFF$[()], RECVLEN%, RECVMODE%, FAMILY%, PORT%,
address, RECVSIZE% [,RECVFLAG%]
where address is ADDRESS or IPADDRESS$
Description: This function receives data sent to the UDP socket specified by the socket
identifier.
BSD4.4 socket API equivalent: This function is equivalent to the BSD4.4
socket API recvfrom() function.
Parameters:
SOCKFD% Socket identifier
RECVBUFF$[()] Receive buffer
RECVLEN% Maximum number of bytes to receive
RECVMODE% Receive mode
RECVFLAG% Storage method (optional)
The receive buffer (
RECVBUFF$) can be either a string non-array or string
array variable. The maximum size for a string non-array is 255 bytes; for a
string array, 4096.
The receive mode (
RECVMODE%) must be one of the following values:
The protocol family (
FAMILY%) must be 2, the value indicating the ARPA
Internet protocols.
The storage method (
RECVFLAG%) is required for a string array buffer. It
is ignored for a string non-array variable and new data will be written.
The storage method (
RECVFLAG%) must be one of the following values:
Note: If RECVFLAG% is 0 or omitted, the user application program must
initialize the receive buffer string array variable before receiving any data.
Return value:
FAMILY% Protocol family of sending station
PORT% Port number of sending station
ADDRESS Address of sending station
IPADDRESS$ Address of sending station in dotted quad notation
RECVSIZE% Number of bytes received
.fcRcvfrom Receive data sent to the specified UDP socket
.soRvNrm
0 Normal
.soRvPeek
2 Peek at next message
.soINet 2 ARPA Internet protocols
.soRvApend
0 Append data to buffer (default if omitted)
.soRvWrite
1 Overwrite buffer with data