summaryrefslogtreecommitdiffstats
path: root/multi.c
diff options
context:
space:
mode:
authorJames Yonan <james@openvpn.net>2010-06-01 07:12:27 +0000
committerJames Yonan <james@openvpn.net>2010-06-01 07:12:27 +0000
commitaaf72974672e4f2af2053247b63ef6f06bdc80c0 (patch)
treece55a352a9bb5f4e95a650f871ab0843964f4007 /multi.c
parent3cf6c9328250061600b78c8a7deb0edc850e739b (diff)
downloadopenvpn-aaf72974672e4f2af2053247b63ef6f06bdc80c0.tar.gz
openvpn-aaf72974672e4f2af2053247b63ef6f06bdc80c0.tar.xz
openvpn-aaf72974672e4f2af2053247b63ef6f06bdc80c0.zip
Implemented a key/value auth channel from client to server.
Version 2.1.1i git-svn-id: http://svn.openvpn.net/projects/openvpn/branches/BETA21/openvpn@5668 e7ae566f-a301-0410-adde-c780ea21d3b5
Diffstat (limited to 'multi.c')
-rw-r--r--multi.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/multi.c b/multi.c
index 5c80c46..2808c9b 100644
--- a/multi.c
+++ b/multi.c
@@ -2597,6 +2597,20 @@ management_client_auth (void *arg,
buffer_list_free (cc_config);
return ret;
}
+
+static char *
+management_get_peer_info (void *arg, const unsigned long cid)
+{
+ struct multi_context *m = (struct multi_context *) arg;
+ struct multi_instance *mi = lookup_by_cid (m, cid);
+ char *ret = NULL;
+
+ if (mi)
+ ret = tls_get_peer_info (mi->context.c2.tls_multi);
+
+ return ret;
+}
+
#endif
#ifdef MANAGEMENT_PF
@@ -2637,6 +2651,7 @@ init_management_callback_multi (struct multi_context *m)
#ifdef MANAGEMENT_DEF_AUTH
cb.kill_by_cid = management_kill_by_cid;
cb.client_auth = management_client_auth;
+ cb.get_peer_info = management_get_peer_info;
#endif
#ifdef MANAGEMENT_PF
cb.client_pf = management_client_pf;