libnetconf2  3.5.1
NETCONF server and client library in C.
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
session_server_ch.h
Go to the documentation of this file.
1 
16 #ifndef NC_SESSION_SERVER_CH_H_
17 #define NC_SESSION_SERVER_CH_H_
18 
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22 
23 #include <libyang/libyang.h>
24 #include <stdint.h>
25 #include <time.h>
26 
27 #include "netconf.h"
28 #include "session.h"
29 
30 #ifdef NC_ENABLED_SSH_TLS
31 
56 int nc_server_ch_is_client(const char *name);
57 
65 int nc_server_ch_client_is_endpt(const char *client_name, const char *endpt_name);
66 
74 typedef const struct ly_ctx *(*nc_server_ch_session_acquire_ctx_cb)(void *cb_data);
75 
81 typedef void (*nc_server_ch_session_release_ctx_cb)(void *cb_data);
82 
92 typedef int (*nc_server_ch_new_session_cb)(const char *client_name, struct nc_session *new_session, void *user_data);
93 
105 int nc_connect_ch_client_dispatch(const char *client_name, nc_server_ch_session_acquire_ctx_cb acquire_ctx_cb,
106  nc_server_ch_session_release_ctx_cb release_ctx_cb, void *ctx_cb_data, nc_server_ch_new_session_cb new_session_cb,
107  void *new_session_cb_data);
108 
121  nc_server_ch_session_release_ctx_cb release_ctx_cb, void *ctx_cb_data, nc_server_ch_new_session_cb new_session_cb,
122  void *new_session_cb_data);
123 
126 #endif /* NC_ENABLED_SSH_TLS */
127 
128 #ifdef __cplusplus
129 }
130 #endif
131 
132 #endif /* NC_SESSION_SERVER_CH_H_ */
libnetconf2 session manipulation
int(* nc_server_ch_new_session_cb)(const char *client_name, struct nc_session *new_session, void *user_data)
Callback for new Call Home sessions.
void(* nc_server_ch_session_release_ctx_cb)(void *cb_data)
Callback for releasing a locked context for Call Home sessions.
void nc_server_ch_set_dispatch_data(nc_server_ch_session_acquire_ctx_cb acquire_ctx_cb, nc_server_ch_session_release_ctx_cb release_ctx_cb, void *ctx_cb_data, nc_server_ch_new_session_cb new_session_cb, void *new_session_cb_data)
Set callbacks and their data for Call Home threads.
struct ly_ctx *(* nc_server_ch_session_acquire_ctx_cb)(void *cb_data)
Callback for getting a locked context for new Call Home sessions.
int nc_server_ch_is_client(const char *name)
Check if a Call Home client exists.
int nc_connect_ch_client_dispatch(const char *client_name, nc_server_ch_session_acquire_ctx_cb acquire_ctx_cb, nc_server_ch_session_release_ctx_cb release_ctx_cb, void *ctx_cb_data, nc_server_ch_new_session_cb new_session_cb, void *new_session_cb_data)
Dispatch a thread connecting to a listening NETCONF client and creating Call Home sessions...
libnetconf2&#39;s general public functions and structures definitions.
int nc_server_ch_client_is_endpt(const char *client_name, const char *endpt_name)
Check if an endpoint of a Call Home client exists.