The send callable service sends data on a socket.
Operation | Environment |
---|---|
Authorization: | Supervisor state or problem state, any PSW key |
Dispatchable unit mode: | Task or SRB |
Cross memory mode: | PASN = HASN |
AMODE (BPX1SND): | 31-bit task or SRB mode |
AMODE (BPX4SND): | 64-bit task mode only |
ASC mode: | Primary mode |
Interrupt status: | Enabled for interrupts |
Locks: | Unlocked |
Control parameters: | All parameters must be addressable by the caller and in the primary address space. |
|
AMODE 64 callers use BPX4SND with the same parameters.
The name of a fullword that contains the socket file descriptor for which the send is to be done.
The name of a field that contains the length of Buffer.
The name of a field that contains the data that is to be transmitted.
The name of a field that contains the ALET for Buffer.
You should specify a Buffer_alet of 0 for the normal case of a buffer in the user's address space (current primary address space). If a value other than 0 is specified for the Buffer_alet, the value must represent a valid entry in the dispatchable unit access list (DUAL).
The name of a field that contains information about how the data is to be sent. See BPXYMSGF — Map the message flags for more information about the format of this field.
Return_code | Explanation |
---|---|
EBADF | Socket_descriptor does not refer to a valid descriptor. The following reason codes can accompany the return code: JRFileDesNotInUse, JRFileNotOpen. |
ECONNRESET | Connection reset by peer. |
EINTR | A signal interrupted the send before any data was written. The following reason code can accompany the return code: JRSockRdwrSignal. |
EIO | There has been a network or transport failure. The following reason code can accompany the return code: JRPrevSockError. |
EMSGSIZE | The message is too large to be sent all at once, as the socket requires. The following reason code can accompany the return code: JRSockBufMax. |
ENOBUFS | A buffer could not be obtained. The following reason code can accompany the return code: JROutofSocketCells. |
ENOTCONN | The socket is not connected. The following reason code can accompany the return code: JRSocketNotCon. |
ENOTSOCK | Socket_descriptor does not refer to a valid socket descriptor. The following reason code can accompany the return code: JRMustBeSocket. |
EPIPE | An attempt was made to send to a socket that is shut down or closed. The following reason code can accompany the return code: JRSocketClosed. This error also generates a SIGPIPE signal. |
EWOULDBLOCK |
The following reason codes can accompany the return code: JRWouldBlock, JRTimeout. |
The name of a fullword in which the send service stores the reason code. The send service returns Reason_code only if Return_value is -1. Reason_code further qualifies the Return_code value. For the reason codes, see z/OS UNIX System Services Messages and Codes.
There are no restrictions on the use of the send service.
For an example using this callable service, see BPX1SND (send) example.