aboutsummaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorAnderson Toshiyuki Sasaki <ansasaki@redhat.com>2019-01-08 13:58:45 +0100
committerAndreas Schneider <asn@cryptomilk.org>2019-01-22 13:12:25 +0100
commit13aa791e7b38d5511215930e30e489559459196a (patch)
tree5b76ea46f6cd13571537efc0f84843bfb66a4bc1 /tests
parent7f18a27504227a14a94d1ffa71a83d16826396f7 (diff)
downloadlibssh-13aa791e7b38d5511215930e30e489559459196a.tar.gz
libssh-13aa791e7b38d5511215930e30e489559459196a.tar.xz
libssh-13aa791e7b38d5511215930e30e489559459196a.zip
tests: Provide the server state to callbacks
This aims to make it easier to implement custom callbacks. Signed-off-by: Anderson Toshiyuki Sasaki <ansasaki@redhat.com> Reviewed-by: Andreas Schneider <asn@cryptomilk.org>
Diffstat (limited to 'tests')
-rw-r--r--tests/server/test_server/default_cb.c3
-rw-r--r--tests/server/test_server/default_cb.h8
2 files changed, 11 insertions, 0 deletions
diff --git a/tests/server/test_server/default_cb.c b/tests/server/test_server/default_cb.c
index 41da1117..1e60f0cb 100644
--- a/tests/server/test_server/default_cb.c
+++ b/tests/server/test_server/default_cb.c
@@ -749,6 +749,9 @@ void default_handle_session_cb(ssh_event event,
goto end;
}
+ sdata.server_state = (void *)state;
+ cdata.server_state = (void *)state;
+
#ifdef WITH_PCAP
set_pcap(&sdata, session, state->pcap_file);
#endif
diff --git a/tests/server/test_server/default_cb.h b/tests/server/test_server/default_cb.h
index 90388a75..0db81559 100644
--- a/tests/server/test_server/default_cb.h
+++ b/tests/server/test_server/default_cb.h
@@ -64,6 +64,10 @@ struct channel_data_st {
ssh_event event;
/* Terminal size struct. */
struct winsize *winsize;
+ /* This pointer will hold the server state for default callbacks */
+ void *server_state;
+ /* This pointer is useful to set data for custom callbacks */
+ void *extra_data;
};
/* A userdata struct for session. */
@@ -77,6 +81,10 @@ struct session_data_st {
#ifdef WITH_PCAP
ssh_pcap_file pcap;
#endif
+ /* This pointer will hold the server state for default callbacks */
+ void *server_state;
+ /* This pointer is useful to set data for custom callbacks */
+ void *extra_data;
};
int auth_password_cb(ssh_session session, const char *user,