aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/libssh/libssh.h1
-rw-r--r--src/session.c15
2 files changed, 16 insertions, 0 deletions
diff --git a/include/libssh/libssh.h b/include/libssh/libssh.h
index 9a00ea7c..46aafae1 100644
--- a/include/libssh/libssh.h
+++ b/include/libssh/libssh.h
@@ -625,6 +625,7 @@ LIBSSH_API int ssh_event_dopoll(ssh_event event, int timeout);
LIBSSH_API int ssh_event_remove_fd(ssh_event event, socket_t fd);
LIBSSH_API int ssh_event_remove_session(ssh_event event, ssh_session session);
LIBSSH_API void ssh_event_free(ssh_event event);
+LIBSSH_API const char* ssh_get_clientbanner(ssh_session session);
LIBSSH_API const char* ssh_get_serverbanner(ssh_session session);
#ifndef LIBSSH_LEGACY_0_4
diff --git a/src/session.c b/src/session.c
index ebf48d8d..171779c5 100644
--- a/src/session.c
+++ b/src/session.c
@@ -280,6 +280,21 @@ void ssh_free(ssh_session session) {
}
/**
+ * @brief get the client banner
+ *
+ * @param[in] session The SSH session
+ *
+ * @return Returns the client banner string or NULL.
+ */
+const char* ssh_get_clientbanner(ssh_session session) {
+ if (session == NULL) {
+ return NULL;
+ }
+
+ return session->clientbanner;
+}
+
+/**
* @brief get the server banner
*
* @param[in] session The SSH session