Reformat ssh_connector_fd_out_cb

Signed-off-by: Jakub Jelen <jjelen@redhat.com>
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
This commit is contained in:
Jakub Jelen
2023-02-28 17:35:15 +01:00
committed by Andreas Schneider
parent 5506aadf05
commit 832b94a660

View File

@@ -326,35 +326,40 @@ static void ssh_connector_fd_in_cb(ssh_connector connector)
/** @internal /** @internal
* @brief Callback called when a poll event is received on an output fd * @brief Callback called when a poll event is received on an output fd
*/ */
static void ssh_connector_fd_out_cb(ssh_connector connector){ static void
ssh_connector_fd_out_cb(ssh_connector connector)
{
unsigned char buffer[CHUNKSIZE]; unsigned char buffer[CHUNKSIZE];
ssize_t r; ssize_t r;
ssize_t w; ssize_t w;
ssize_t total = 0; ssize_t total = 0;
SSH_LOG(SSH_LOG_TRACE, "connector POLLOUT event for fd %d", connector->out_fd); SSH_LOG(SSH_LOG_TRACE, "connector POLLOUT event for fd %d",
connector->out_fd);
if(connector->in_available){ if (connector->in_available) {
if (connector->in_channel != NULL){ if (connector->in_channel != NULL) {
r = ssh_channel_read_nonblocking(connector->in_channel, buffer, CHUNKSIZE, 0); r = ssh_channel_read_nonblocking(connector->in_channel, buffer,
if(r == SSH_ERROR){ CHUNKSIZE, 0);
if (r == SSH_ERROR) {
ssh_connector_except_channel(connector, connector->in_channel); ssh_connector_except_channel(connector, connector->in_channel);
return; return;
} else if(r == 0 && ssh_channel_is_eof(connector->in_channel)){ } else if (r == 0 && ssh_channel_is_eof(connector->in_channel)) {
close(connector->out_fd); close(connector->out_fd);
connector->out_fd = SSH_INVALID_SOCKET; connector->out_fd = SSH_INVALID_SOCKET;
return; return;
} else if(r>0) { } else if (r > 0) {
/* loop around write in case the write blocks even for CHUNKSIZE bytes */ /* loop around write in case the write blocks even for CHUNKSIZE bytes */
while (total != r){ while (total != r) {
w = ssh_connector_fd_write(connector, buffer + total, r - total); w = ssh_connector_fd_write(connector, buffer + total,
if (w < 0){ r - total);
if (w < 0) {
ssh_connector_except(connector, connector->out_fd); ssh_connector_except(connector, connector->out_fd);
return; return;
} }
total += w; total += w;
} }
} }
} else if (connector->in_fd != SSH_INVALID_SOCKET){ } else if (connector->in_fd != SSH_INVALID_SOCKET) {
/* fallback on the socket input callback */ /* fallback on the socket input callback */
connector->out_wontblock = 1; connector->out_wontblock = 1;
ssh_connector_fd_in_cb(connector); ssh_connector_fd_in_cb(connector);