aboutsummaryrefslogtreecommitdiff
path: root/include/libssh/session.h
diff options
context:
space:
mode:
authorJakub Jelen <jjelen@redhat.com>2018-08-06 11:51:26 +0200
committerAndreas Schneider <asn@cryptomilk.org>2018-08-31 14:18:34 +0200
commit761225712a28d70adea7a2b872c265bc98a83511 (patch)
treee3b64f27742c357a1625e30407d12b7888c2e9cc /include/libssh/session.h
parentdf13d8c61f4fe0cc7d07260d59740eaf7f939d65 (diff)
downloadlibssh-761225712a28d70adea7a2b872c265bc98a83511.tar.gz
libssh-761225712a28d70adea7a2b872c265bc98a83511.tar.xz
libssh-761225712a28d70adea7a2b872c265bc98a83511.zip
client: Handle the MSG_EXT_INFO packet signalling supported extensions
RFC 8308: The extension negotiation in Secure Shell (SSH) Protocol RFC 8332: Use of RSA Keys with SHA-256 and SHA-512 in the Secure Shell (SSH) Protocol Signed-off-by: Jakub Jelen <jjelen@redhat.com> Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
Diffstat (limited to 'include/libssh/session.h')
-rw-r--r--include/libssh/session.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/libssh/session.h b/include/libssh/session.h
index 6cb79628..00717652 100644
--- a/include/libssh/session.h
+++ b/include/libssh/session.h
@@ -86,6 +86,11 @@ enum ssh_pending_call_e {
#define SSH_OPT_FLAG_KBDINT_AUTH 0x4
#define SSH_OPT_FLAG_GSSAPI_AUTH 0x8
+/* extensions flags */
+/* server-sig-algs extension */
+#define SSH_EXT_SIG_RSA_SHA256 0x01
+#define SSH_EXT_SIG_RSA_SHA512 0x02
+
/* members that are common to ssh_session and ssh_bind */
struct ssh_common_struct {
struct error_struct error;
@@ -114,6 +119,9 @@ struct ssh_session_struct {
/* session flags (SSH_SESSION_FLAG_*) */
int flags;
+ /* Extensions negotiated using RFC 8308 */
+ uint32_t extensions;
+
ssh_string banner; /* that's the issue banner from
the server */
char *discon_msg; /* disconnect message from