libssh2_channel_write_ex - write data to a channel stream blocking
#include <libssh2.h> ssize_t libssh2_channel_write_ex(LIBSSH2_CHANNEL *channel, int stream_id, char *buf, size_t buflen);
libssh2 manual libssh2_channel_write_ex(3ssh2) NAME libssh2_channel_write_ex - write data to a channel stream blocking SYNOPSIS #include <libssh2.h> ssize_t libssh2_channel_write_ex(LIBSSH2_CHANNEL *channel, int stream_id, char *buf, size_t buflen); DESCRIPTION Write data to a channel stream. All channel streams have one standard I/O substream (stream_id == 0), and may have up to 2^32 extended data streams as identified by the selected stream_id. The SSH2 protocol cur- rently defines a stream ID of 1 to be the stderr substream. channel - active channel stream to write to. stream_id - substream ID number (e.g. 0 or SSH_EXTENDED_DATA_STDERR) buf - pointer to buffer to write buflen - size of the data to write libssh2_channel_write(3) and libssh2_channel_write_stderr(3) are conve- nience macros for this function. libssh2_channel_write_ex(3) will use as much as possible of the buffer and put it into a single SSH protocol packet. This means that to get maximum performance when sending larger files, you should try to always pass in at least 32K of data to this function. RETURN VALUE Actual number of bytes written or negative on failure. LIB- SSH2_ERROR_EAGAIN when it would otherwise block. While LIB- SSH2_ERROR_EAGAIN is a negative number, it isn't really a failure per se. ERRORS LIBSSH2_ERROR_ALLOC - An internal memory allocation call failed. LIBSSH2_ERROR_SOCKET_SEND - Unable to send data on socket. LIBSSH2_ERROR_CHANNEL_CLOSED - The channel has been closed. LIBSSH2_ERROR_CHANNEL_EOF_SENT - The channel has been requested to be closed. ATTRIBUTES See attributes(7) for descriptions of the following attributes: +---------------+------------------+ |ATTRIBUTE TYPE | ATTRIBUTE VALUE | +---------------+------------------+ |Availability | library/libssh2 | +---------------+------------------+ |Stability | Uncommitted | +---------------+------------------+ SEE ALSO libssh2_channel_open_ex(3) libssh2_channel_read_ex(3) NOTES Source code for open source software components in Oracle Solaris can be found at https://www.oracle.com/downloads/opensource/solaris-source- code-downloads.html. This software was built from source available at https://github.com/oracle/solaris-userland. The original community source was downloaded from https://www.libssh2.org/download/lib- ssh2-1.10.0.tar.gz. Further information about this software can be found on the open source community website at https://www.libssh2.org/. libssh2 0.15 1 Jun 2007 libssh2_channel_write_ex(3ssh2)