aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/libssh/libssh.h4
-rw-r--r--include/libssh/priv.h10
2 files changed, 13 insertions, 1 deletions
diff --git a/include/libssh/libssh.h b/include/libssh/libssh.h
index ebfe41f1..60002504 100644
--- a/include/libssh/libssh.h
+++ b/include/libssh/libssh.h
@@ -90,6 +90,10 @@ typedef uint8_t u8;
#define SSH_FATAL 2
#define SSH_EINTR 3
+/* error return codes */
+#define SSH_OK 0 /* No error */
+#define SSH_ERROR -1 /* error of some kind */
+#define SSH_AGAIN 1 /* the nonblocking call must be repeated */
char *ssh_get_error(void *error);
int ssh_get_error_code(void *error);
diff --git a/include/libssh/priv.h b/include/libssh/priv.h
index c2a1f863..e587e1ea 100644
--- a/include/libssh/priv.h
+++ b/include/libssh/priv.h
@@ -304,7 +304,7 @@ struct ssh_session {
not block */
int data_to_write;
int data_except;
- int blocking; // functions should not block
+ int blocking; // functions should block
STRING *banner; /* that's the issue banner from
the server */
@@ -315,6 +315,14 @@ struct ssh_session {
BUFFER *in_buffer;
PACKET in_packet;
BUFFER *out_buffer;
+
+ BUFFER *out_socket_buffer;
+ BUFFER *in_socket_buffer;
+
+ /* the states are used by the nonblocking stuff to remember */
+ /* where it was before being interrupted */
+ int packet_state;
+
KEX server_kex;
KEX client_kex;
BUFFER *in_hashbuf;