diff options
author | Aris Adamantiadis <aris@0xbadc0de.be> | 2013-02-11 21:31:11 +0100 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2013-07-13 13:59:58 +0200 |
commit | ab2e641b4a68e31390510f020d939107bef53b37 (patch) | |
tree | 6c85b2d683af3998c46553c5480da18ed90d8164 /src/callbacks.c | |
parent | 48b715cce0d74c6695df5f085ed79de065ec072f (diff) | |
download | libssh-ab2e641b4a68e31390510f020d939107bef53b37.tar.gz libssh-ab2e641b4a68e31390510f020d939107bef53b37.tar.xz libssh-ab2e641b4a68e31390510f020d939107bef53b37.zip |
Defined SSH server callbacks interface
Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
Diffstat (limited to 'src/callbacks.c')
-rw-r--r-- | src/callbacks.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/callbacks.c b/src/callbacks.c index 5a61180d..f524aba3 100644 --- a/src/callbacks.c +++ b/src/callbacks.c @@ -59,3 +59,19 @@ int ssh_set_channel_callbacks(ssh_channel channel, ssh_channel_callbacks cb) { leave_function(); return 0; } + +int ssh_set_server_callbacks(ssh_session session, ssh_server_callbacks cb){ + if (session == NULL || cb == NULL) { + return SSH_ERROR; + } + enter_function(); + if(cb->size <= 0 || cb->size > 1024 * sizeof(void *)){ + ssh_set_error(session,SSH_FATAL, + "Invalid callback passed in (badly initialized)"); + leave_function(); + return SSH_ERROR; + } + session->server_callbacks = cb; + leave_function(); + return 0; +} |