summaryrefslogtreecommitdiffstats
path: root/src/socket.c
diff options
context:
space:
mode:
authorAris Adamantiadis <aris@0xbadc0de.be>2011-03-22 11:49:57 +0100
committerAndreas Schneider <asn@cryptomilk.org>2011-03-23 08:49:26 +0100
commitb7f6794e03f4e1f20f78967656c7a7d6d6b1940a (patch)
tree1ce9d5df4d1b0342203056b00803eef1067fc25c /src/socket.c
parentcd9fc88151fb66225297ec3a278a2d9756544b38 (diff)
downloadlibssh-b7f6794e03f4e1f20f78967656c7a7d6d6b1940a.tar.gz
libssh-b7f6794e03f4e1f20f78967656c7a7d6d6b1940a.tar.xz
libssh-b7f6794e03f4e1f20f78967656c7a7d6d6b1940a.zip
Implement ssh_blocking_flush()
Based on code from Jan Willamowius (cherry picked from commit dff4e4e6d3a56123b00df48fdcd7a6de0a275aef)
Diffstat (limited to 'src/socket.c')
-rw-r--r--src/socket.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/socket.c b/src/socket.c
index 0f8fc23c..24616255 100644
--- a/src/socket.c
+++ b/src/socket.c
@@ -644,6 +644,18 @@ int ssh_socket_data_writable(ssh_socket s) {
return s->write_wontblock;
}
+/** @internal
+ * @brief returns the number of outgoing bytes currently buffered
+ * @param s the socket
+ * @returns numbers of bytes buffered, or 0 if the socket isn't connected
+ */
+int ssh_socket_buffered_write_bytes(ssh_socket s){
+ if(s==NULL || s->out_buffer == NULL)
+ return 0;
+ return buffer_get_rest_len(s->out_buffer);
+}
+
+
int ssh_socket_get_status(ssh_socket s) {
int r = 0;