diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/libssh/libssh.h | 4 | ||||
-rw-r--r-- | include/libssh/priv.h | 10 |
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; |