summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/libssh/server.h2
-rw-r--r--libssh/server.c13
2 files changed, 15 insertions, 0 deletions
diff --git a/include/libssh/server.h b/include/libssh/server.h
index 993a1402..2067e164 100644
--- a/include/libssh/server.h
+++ b/include/libssh/server.h
@@ -151,6 +151,8 @@ LIBSSH_API ssh_public_key ssh_message_auth_publickey(ssh_message msg);
LIBSSH_API enum ssh_publickey_state_e ssh_message_auth_publickey_state(ssh_message msg);
LIBSSH_API int ssh_message_auth_reply_success(ssh_message msg,int partial);
LIBSSH_API int ssh_message_auth_reply_pk_ok(ssh_message msg, ssh_string algo, ssh_string pubkey);
+LIBSSH_API int ssh_message_auth_reply_pk_ok_simple(ssh_message msg);
+
LIBSSH_API int ssh_message_auth_set_methods(ssh_message msg, int methods);
LIBSSH_API int ssh_message_service_reply_success(ssh_message msg);
diff --git a/libssh/server.c b/libssh/server.c
index bb260e3f..9a9bdc4b 100644
--- a/libssh/server.c
+++ b/libssh/server.c
@@ -808,6 +808,19 @@ int ssh_message_auth_reply_pk_ok(ssh_message msg, ssh_string algo, ssh_string pu
return packet_send(msg->session);
}
+int ssh_message_auth_reply_pk_ok_simple(ssh_message msg) {
+ ssh_string algo;
+ ssh_string pubkey;
+ int ret;
+ algo=string_from_char(msg->auth_request.public_key->type_c);
+ pubkey=publickey_to_string(msg->auth_request.public_key);
+ ret=ssh_message_auth_reply_pk_ok(msg,algo,pubkey);
+ string_free(algo);
+ string_free(pubkey);
+ return ret;
+}
+
+
char *ssh_message_channel_request_open_originator(ssh_message msg){
return msg->channel_request_open.originator;
}