libnetconf2  1.1.48
NETCONF library for clients and servers
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
session_server_ch.h File Reference

libnetconf2 Call Home session server manipulation More...

#include <stdint.h>
#include <libyang/libyang.h>
#include "session.h"
#include "netconf.h"

Go to the source code of this file.

Functions

int nc_server_ch_add_client (const char *name)
 Add a new Call Home client. More...
 
int nc_server_ch_del_client (const char *name)
 Drop any connections, stop connecting and remove a client. More...
 
int nc_server_ch_is_client (const char *name)
 Check if a Call Home client exists. More...
 
int nc_server_ch_client_add_endpt (const char *client_name, const char *endpt_name, NC_TRANSPORT_IMPL ti)
 Add a new Call Home client endpoint. More...
 
int nc_server_ch_client_del_endpt (const char *client_name, const char *endpt_name, NC_TRANSPORT_IMPL ti)
 Remove a Call Home client endpoint. More...
 
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. More...
 
int nc_server_ch_client_endpt_set_address (const char *client_name, const char *endpt_name, const char *address)
 Change Call Home client endpoint listening address. More...
 
int nc_server_ch_client_endpt_set_port (const char *client_name, const char *endpt_name, uint16_t port)
 Change Call Home client endpoint listening port. More...
 
int nc_server_ch_client_endpt_enable_keepalives (const char *client_name, const char *endpt_name, int enable)
 Change Call Home client endpoint keepalives state. Affects only new connections. More...
 
int nc_server_ch_client_endpt_set_keepalives (const char *client_name, const char *endpt_name, int idle_time, int max_probes, int probe_interval)
 Change Call Home client endpoint keepalives parameters. Affects only new connections. More...
 
int nc_server_ch_client_set_conn_type (const char *client_name, NC_CH_CONN_TYPE conn_type)
 Set Call Home client connection type. More...
 
int nc_server_ch_client_periodic_set_period (const char *client_name, uint16_t period)
 Set Call Home client periodic connection period for reconnecting. More...
 
int nc_server_ch_client_periodic_set_anchor_time (const char *client_name, time_t anchor_time)
 Set Call Home client periodic connection period anchor time. More...
 
int nc_server_ch_client_periodic_set_idle_timeout (const char *client_name, uint16_t idle_timeout)
 Set Call Home client periodic connection idle timeout. More...
 
int nc_server_ch_client_set_start_with (const char *client_name, NC_CH_START_WITH start_with)
 Set Call Home client start-with policy. More...
 
int nc_server_ch_client_set_max_attempts (const char *client_name, uint8_t max_attempts)
 Set Call Home client overall max attempts. More...
 
int nc_connect_ch_client_dispatch (const char *client_name, void(*session_clb)(const char *client_name, struct nc_session *new_session))
 Establish a Call Home connection with a listening NETCONF client. More...
 
int nc_server_ssh_ch_client_endpt_add_hostkey (const char *client_name, const char *endpt_name, const char *name, int16_t idx)
 Add Call Home SSH host keys the server will identify itself with. Only the name is set, the key itself wil be retrieved using a callback. More...
 
int nc_server_ssh_ch_client_endpt_del_hostkey (const char *client_name, const char *endpt_name, const char *name, int16_t idx)
 Delete Call Home SSH host keys. Their order is preserved. More...
 
int nc_server_ssh_ch_client_endpt_mov_hostkey (const char *client_name, const char *endpt_name, const char *key_mov, const char *key_after)
 Move Call Home SSH host key. More...
 
int nc_server_ssh_ch_client_endpt_set_auth_methods (const char *client_name, const char *endpt_name, int auth_methods)
 Set accepted Call Home SSH authentication methods. All (publickey, password, interactive) are supported by default. More...
 
int nc_server_ssh_ch_client_endpt_get_auth_methods (const char *client_name, const char *endpt_name)
 Get accepted Call Home SSH authentication methods. More...
 
int nc_server_ssh_ch_client_endpt_set_auth_attempts (const char *client_name, const char *endpt_name, uint16_t auth_attempts)
 Set Call Home SSH authentication attempts of every client. 3 by default. More...
 
int nc_server_ssh_ch_client_endpt_set_auth_timeout (const char *client_name, const char *endpt_name, uint16_t auth_timeout)
 Set Call Home SSH authentication timeout. 30 seconds by default. More...
 
int nc_server_tls_ch_client_endpt_set_server_cert (const char *client_name, const char *endpt_name, const char *name)
 Set the server Call Home TLS certificate. Only the name is set, the certificate itself wil be retrieved using a callback. More...
 
int nc_server_tls_ch_client_endpt_add_trusted_cert_list (const char *client_name, const char *endpt_name, const char *name)
 Add a Call Home trusted certificate list. Can be both a CA or a client one. More...
 
int nc_server_tls_ch_client_endpt_del_trusted_cert_list (const char *client_name, const char *endpt_name, const char *name)
 Remove a set Call Home trusted certificate list. CRLs and CTN entries are not affected. More...
 
int nc_server_tls_ch_client_endpt_set_trusted_ca_paths (const char *client_name, const char *endpt_name, const char *ca_file, const char *ca_dir)
 Set trusted Call Home Certificate Authority certificate locations. There can only be one file and one directory, they are replaced if already set. More...
 
int nc_server_tls_ch_client_endpt_set_crl_paths (const char *client_name, const char *endpt_name, const char *crl_file, const char *crl_dir)
 Set Call Home Certificate Revocation List locations. There can only be one file and one directory, they are replaced if already set. More...
 
void nc_server_tls_ch_client_endpt_clear_crls (const char *client_name, const char *endpt_name)
 Destroy and clean Call Home CRLs. Call Home certificates, private keys, and CTN entries are not affected. More...
 
int nc_server_tls_ch_client_endpt_add_ctn (const char *client_name, const char *endpt_name, uint32_t id, const char *fingerprint, NC_TLS_CTN_MAPTYPE map_type, const char *name)
 Add a cert-to-name entry. More...
 
int nc_server_tls_ch_client_endpt_del_ctn (const char *client_name, const char *endpt_name, int64_t id, const char *fingerprint, NC_TLS_CTN_MAPTYPE map_type, const char *name)
 Remove a Call Home cert-to-name entry. More...
 
int nc_server_tls_ch_client_endpt_get_ctn (const char *client_name, const char *endpt_name, uint32_t *id, char **fingerprint, NC_TLS_CTN_MAPTYPE *map_type, char **name)
 Get a Call Home cert-to-name entry. More...
 

Detailed Description

libnetconf2 Call Home session server manipulation

Author
Michal Vasko mvask.nosp@m.o@ce.nosp@m.snet..nosp@m.cz Copyright (c) 2015 CESNET, z.s.p.o.

This source code is licensed under BSD 3-Clause License (the "License"). You may not use this file except in compliance with the License. You may obtain a copy of the License at

https://opensource.org/licenses/BSD-3-Clause

Definition in file session_server_ch.h.