aboutsummaryrefslogtreecommitdiff
path: root/src/socket.c
diff options
context:
space:
mode:
authorAndreas Schneider <asn@cryptomilk.org>2018-09-24 18:40:11 +0200
committerAndreas Schneider <asn@cryptomilk.org>2018-09-25 14:37:25 +0200
commit35bf5334b8f582aa9dd123761e8129f5b2b2749d (patch)
tree163bc7eea674e390ed846e76e1a7feb05d787518 /src/socket.c
parenta7604c7d6ecb5fd756878d12b033735c867a65d6 (diff)
downloadlibssh-35bf5334b8f582aa9dd123761e8129f5b2b2749d.tar.gz
libssh-35bf5334b8f582aa9dd123761e8129f5b2b2749d.tar.xz
libssh-35bf5334b8f582aa9dd123761e8129f5b2b2749d.zip
socket: Return ssize_t for ssh_socket_unbuffered_write()
Signed-off-by: Andreas Schneider <asn@cryptomilk.org>
Diffstat (limited to 'src/socket.c')
-rw-r--r--src/socket.c26
1 files changed, 16 insertions, 10 deletions
diff --git a/src/socket.c b/src/socket.c
index 8cf463d0..d13f6ad3 100644
--- a/src/socket.c
+++ b/src/socket.c
@@ -96,8 +96,9 @@ static int sockets_initialized = 0;
static ssize_t ssh_socket_unbuffered_read(ssh_socket s,
void *buffer,
uint32_t len);
-static int ssh_socket_unbuffered_write(ssh_socket s, const void *buffer,
- uint32_t len);
+static ssize_t ssh_socket_unbuffered_write(ssh_socket s,
+ const void *buffer,
+ uint32_t len);
/**
* \internal
@@ -583,9 +584,11 @@ static ssize_t ssh_socket_unbuffered_read(ssh_socket s,
/** \internal
* \brief writes len bytes from buffer to socket
*/
-static int ssh_socket_unbuffered_write(ssh_socket s, const void *buffer,
- uint32_t len) {
- int w = -1;
+static ssize_t ssh_socket_unbuffered_write(ssh_socket s,
+ const void *buffer,
+ uint32_t len)
+{
+ ssize_t w = -1;
if (s->data_except) {
return -1;
@@ -674,7 +677,6 @@ int ssh_socket_nonblocking_flush(ssh_socket s)
{
ssh_session session = s->session;
uint32_t len;
- int w;
if (!ssh_socket_is_open(s)) {
session->alive = 0;
@@ -702,8 +704,12 @@ int ssh_socket_nonblocking_flush(ssh_socket s)
}
if (s->write_wontblock && len > 0) {
- w = ssh_socket_unbuffered_write(s, ssh_buffer_get(s->out_buffer), len);
- if (w < 0) {
+ ssize_t bwritten;
+
+ bwritten = ssh_socket_unbuffered_write(s,
+ ssh_buffer_get(s->out_buffer),
+ len);
+ if (bwritten < 0) {
session->alive = 0;
ssh_socket_close(s);
@@ -722,9 +728,9 @@ int ssh_socket_nonblocking_flush(ssh_socket s)
return SSH_ERROR;
}
- ssh_buffer_pass_bytes(s->out_buffer, w);
+ ssh_buffer_pass_bytes(s->out_buffer, bwritten);
if (s->session->socket_counter != NULL) {
- s->session->socket_counter->out_bytes += w;
+ s->session->socket_counter->out_bytes += bwritten;
}
}