summaryrefslogtreecommitdiffstats
path: root/src/messages.c
diff options
context:
space:
mode:
authorTristan CACQUERAY <tristanC@wombatt.eu>2013-09-18 17:58:42 +0200
committerAris Adamantiadis <aris@0xbadc0de.be>2013-09-27 15:34:45 +0200
commite588e2325d7e7f6c856fffaa1353ff690c608ccf (patch)
treee8de8c96afff6b243585ccced9e8b29e2b598183 /src/messages.c
parent04fd756c496e6fa435356c679c16b5dfbbd1806d (diff)
downloadlibssh-e588e2325d7e7f6c856fffaa1353ff690c608ccf.tar.gz
libssh-e588e2325d7e7f6c856fffaa1353ff690c608ccf.tar.xz
libssh-e588e2325d7e7f6c856fffaa1353ff690c608ccf.zip
callbacks: add support for auth_none_function
Diffstat (limited to 'src/messages.c')
-rw-r--r--src/messages.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/messages.c b/src/messages.c
index 003ecf8..73f3997 100644
--- a/src/messages.c
+++ b/src/messages.c
@@ -127,6 +127,17 @@ static int ssh_execute_server_request(ssh_session session, ssh_message msg)
}
return SSH_OK;
+ } else if (msg->auth_request.method == SSH_AUTH_METHOD_NONE &&
+ ssh_callbacks_exists(session->server_callbacks, auth_none_function)) {
+ rc = session->server_callbacks->auth_none_function(session,
+ msg->auth_request.username, session->server_callbacks->userdata);
+ if (rc == SSH_AUTH_SUCCESS || rc == SSH_AUTH_PARTIAL){
+ ssh_message_auth_reply_success(msg, rc == SSH_AUTH_PARTIAL);
+ } else {
+ ssh_message_reply_default(msg);
+ }
+
+ return SSH_OK;
}
break;
case SSH_REQUEST_CHANNEL_OPEN: