ltm rule command recv
iRule(1) BIG-IP TMSH Manual iRule(1)
recv
Receives data from a given sideband connection.
SYNOPSIS
recv ((
('-eol')
('-peek')
('-timeout' MSEC)
('-status' VARIABLE)
)#)?
(NCHARS)?
SIDEBAND_CONNECTION
(VARIABLE)?
DESCRIPTION
This command receives data from an existing sideband connection (established with connect). It is one of
several commands that make up the ability to create sideband connections from iRules.
RETURN VALUE
Receives some data (up to numChars bytes) from a sideband connection. If varname is specified, the response is
stored in that variable, and recv returns the amount of data received. Otherwise, recv returns the response
data.
Arguments
-timeout ms specifies the amount of time to wait for the data to be received. If unspecified, the default is
an immediate timeout, and likely not what you want in a typical situation.
is the name of the variable in which to store the received data. If specified, recv will return the
number of bytes received. If unspecified, recv will return the received data.
-eol causes the command to suspend until an end-of-line has been received or the timeout expires. The first
line of data will be returned.
-peek will return the data received, but will leave it buffered for a subsequent call to recv
If -status status_varname is used, the status of the connection attempt is saved to status_varname. These are
the possible return values for the recv status:
received - Got the requested amount of data
closed - the connection was closed. Some data may have been received.
timeout - A timeout occurred. Some data may have been received.
failed - An unexpected error occurred
VALID DURING
ANY_EVENT
EXAMPLES
when HTTP_REQUEST {
set dest "10.10.145.1:80"
set conn [connect -protocol TCP -timeout 30000 -idle 30 $dest]
set data "GET /mypage/index.html HTTP/1.0\r\n\r\n"
send $conn $data
# recv 2000 chars get recv bytes error
set recv_2kbytes [recv -timeout 30000 2000 $conn]
log local0. "Recv data: '$recv_2kbytes'"
set length_recv [string length $recv_2kbytes]
log local0. "length_recv has $length_recv bytes in it."
close $conn
}
HINTS
SEE ALSO
CHANGE LOG
@BIGIP-11.0.0 --First introduced the command.
BIG-IP 2020-06-23 iRule(1)