libnetconf2 4.6.1
NETCONF server and client library in C.
Loading...
Searching...
No Matches
server_config.h
Go to the documentation of this file.
1
15
16#ifndef NC_CONFIG_SERVER_H_
17#define NC_CONFIG_SERVER_H_
18
19#ifdef __cplusplus
20extern "C" {
21#endif
22
23#include <stdarg.h>
24#include <stdint.h>
25
26#include <libyang/libyang.h>
27
28#include "session.h"
29
37
41
49
70int nc_server_config_load_modules(struct ly_ctx **ctx);
71
84int nc_server_config_setup_diff(const struct lyd_node *diff);
85
100int nc_server_config_setup_data(const struct lyd_node *data);
101
113int nc_server_config_setup_path(const struct ly_ctx *ctx, const char *path);
114
115#ifdef NC_ENABLED_SSH_TLS
116
130int nc_server_config_add_address_port(const struct ly_ctx *ctx, const char *endpt_name, NC_TRANSPORT_IMPL transport,
131 const char *address, uint16_t port, struct lyd_node **config);
132
133#endif /* NC_ENABLED_SSH_TLS */
134
146int nc_server_config_del_endpt(const char *endpt_name, struct lyd_node **config);
147
168int nc_server_config_add_unix_socket(const struct ly_ctx *ctx, const char *endpt_name, const char *path,
169 const char *mode, const char *owner, const char *group, struct lyd_node **config);
170
199int nc_server_config_add_unix_user_mapping(const struct ly_ctx *ctx, const char *endpt_name,
200 const char *system_user, const char *netconf_user, struct lyd_node **config);
201
211int nc_server_config_del_unix_user_mapping(const char *endpt_name, const char *system_user,
212 struct lyd_node **config);
213
214#ifdef NC_ENABLED_SSH_TLS
215
230int nc_server_config_add_keystore_asym_key(const struct ly_ctx *ctx, NC_TRANSPORT_IMPL ti, const char *asym_key_name,
231 const char *privkey_path, const char *pubkey_path, struct lyd_node **config);
232
241int nc_server_config_del_keystore_asym_key(const char *asym_key_name, struct lyd_node **config);
242
259int nc_server_config_add_keystore_cert(const struct ly_ctx *ctx, const char *asym_key_name, const char *cert_name,
260 const char *cert_path, struct lyd_node **config);
261
272int nc_server_config_del_keystore_cert(const char *asym_key_name, const char *cert_name, struct lyd_node **config);
273
288int nc_server_config_add_truststore_pubkey(const struct ly_ctx *ctx, const char *pub_bag_name, const char *pubkey_name,
289 const char *pubkey_path, struct lyd_node **config);
290
300int nc_server_config_del_truststore_pubkey(const char *pub_bag_name, const char *pubkey_name, struct lyd_node **config);
301
316int nc_server_config_add_truststore_cert(const struct ly_ctx *ctx, const char *cert_bag_name, const char *cert_name,
317 const char *cert_path, struct lyd_node **config);
318
328int nc_server_config_del_truststore_cert(const char *cert_bag_name,
329 const char *cert_name, struct lyd_node **config);
330
341int nc_server_config_oper_get_supported_ssh_algs(const struct ly_ctx *ctx, struct lyd_node **supported_algs);
342
352int nc_server_config_oper_get_supported_tls_algs(const struct ly_ctx *ctx, struct lyd_node **supported_algs);
353
364 const char *endpoint, const char *username, time_t *last_modified);
365
369
377
394int nc_server_config_add_ssh_hostkey(const struct ly_ctx *ctx, const char *endpt_name, const char *hostkey_name,
395 const char *privkey_path, const char *pubkey_path, struct lyd_node **config);
396
410int nc_server_config_del_ssh_hostkey(const struct ly_ctx *ctx, const char *endpt_name,
411 const char *hostkey_name, struct lyd_node **config);
412
428int nc_server_config_add_ssh_keystore_ref(const struct ly_ctx *ctx, const char *endpt_name, const char *hostkey_name,
429 const char *keystore_reference, struct lyd_node **config);
430
439int nc_server_config_del_ssh_keystore_ref(const char *endpt_name, const char *hostkey_name,
440 struct lyd_node **config);
441
457int nc_server_config_add_ssh_user_pubkey(const struct ly_ctx *ctx, const char *endpt_name,
458 const char *user_name, const char *pubkey_name, const char *pubkey_path, struct lyd_node **config);
459
470int nc_server_config_del_ssh_user_pubkey(const char *endpt_name, const char *user_name,
471 const char *pubkey_name, struct lyd_node **config);
472
488int nc_server_config_add_ssh_user_authkey(const struct ly_ctx *ctx, const char *endpt_name,
489 const char *user_name, struct lyd_node **config);
490
499int nc_server_config_del_ssh_user_authkey(const char *endpt_name, const char *user_name, struct lyd_node **config);
500
513int nc_server_config_hash_password(const char *crypt_hash, char **hashed_password);
514
528int nc_server_config_add_ssh_user_password(const struct ly_ctx *ctx, const char *endpt_name,
529 const char *user_name, const char *password, struct lyd_node **config);
530
539int nc_server_config_del_ssh_user_password(const char *endpt_name, const char *user_name,
540 struct lyd_node **config);
541
556int nc_server_config_add_ssh_user_interactive(const struct ly_ctx *ctx, const char *endpt_name,
557 const char *user_name, struct lyd_node **config);
558
567int nc_server_config_del_ssh_user_interactive(const char *endpt_name, const char *user_name,
568 struct lyd_node **config);
569
579int nc_server_config_del_ssh_user(const char *endpt_name,
580 const char *user_name, struct lyd_node **config);
581
597int nc_server_config_add_ssh_truststore_ref(const struct ly_ctx *ctx, const char *endpt_name, const char *user_name,
598 const char *truststore_reference, struct lyd_node **config);
599
608int nc_server_config_del_ssh_truststore_ref(const char *endpt_name, const char *user_name,
609 struct lyd_node **config);
610
626int nc_server_config_add_ssh_endpoint_client_ref(const struct ly_ctx *ctx, const char *endpt_name,
627 const char *referenced_endpt, struct lyd_node **config);
628
636int nc_server_config_del_ssh_endpoint_client_ref(const char *endpt_name, struct lyd_node **config);
637
641
649
664int nc_server_config_add_tls_server_cert(const struct ly_ctx *ctx, const char *endpt_name, const char *privkey_path,
665 const char *pubkey_path, const char *cert_path, struct lyd_node **config);
666
677int nc_server_config_del_tls_server_cert(const char *endpt_name, struct lyd_node **config);
678
691int nc_server_config_add_tls_keystore_ref(const struct ly_ctx *ctx, const char *endpt_name, const char *asym_key_ref,
692 const char *cert_ref, struct lyd_node **config);
693
704int nc_server_config_del_tls_keystore_ref(const char *endpt_name, struct lyd_node **config);
705
721int nc_server_config_add_tls_client_cert(const struct ly_ctx *ctx, const char *endpt_name, const char *cert_name,
722 const char *cert_path, struct lyd_node **config);
723
737int nc_server_config_del_tls_client_cert(const char *endpt_name, const char *cert_name, struct lyd_node **config);
738
750int nc_server_config_add_tls_client_cert_truststore_ref(const struct ly_ctx *ctx, const char *endpt_name,
751 const char *cert_bag_ref, struct lyd_node **config);
752
763int nc_server_config_del_tls_client_cert_truststore_ref(const char *endpt_name, struct lyd_node **config);
764
788int nc_server_config_add_tls_ca_cert(const struct ly_ctx *ctx, const char *endpt_name, const char *cert_name,
789 const char *cert_path, struct lyd_node **config);
790
804int nc_server_config_del_tls_ca_cert(const char *endpt_name, const char *cert_name, struct lyd_node **config);
805
817int nc_server_config_add_tls_ca_cert_truststore_ref(const struct ly_ctx *ctx, const char *endpt_name,
818 const char *cert_bag_ref, struct lyd_node **config);
819
830int nc_server_config_del_tls_ca_cert_truststore_ref(const char *endpt_name, struct lyd_node **config);
831
847int nc_server_config_add_tls_endpoint_client_ref(const struct ly_ctx *ctx, const char *endpt_name,
848 const char *referenced_endpt, struct lyd_node **config);
849
857int nc_server_config_del_tls_endpoint_client_ref(const char *endpt_name, struct lyd_node **config);
858
874int nc_server_config_add_tls_ctn(const struct ly_ctx *ctx, const char *endpt_name, uint32_t id, const char *fingerprint,
875 NC_TLS_CTN_MAPTYPE map_type, const char *name, struct lyd_node **config);
876
889int nc_server_config_del_tls_ctn(const char *endpt_name, uint32_t id, struct lyd_node **config);
890
894
902
906
914
930int nc_server_config_add_ch_address_port(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name,
931 NC_TRANSPORT_IMPL transport, const char *address, const char *port, struct lyd_node **config);
932
933#endif /* NC_ENABLED_SSH_TLS */
934
946int nc_server_config_del_ch_client(const char *client_name, struct lyd_node **config);
947
960int nc_server_config_del_ch_endpt(const char *client_name, const char *endpt_name, struct lyd_node **config);
961
974int nc_server_config_add_ch_persistent(const struct ly_ctx *ctx, const char *client_name, struct lyd_node **config);
975
989int nc_server_config_add_ch_period(const struct ly_ctx *ctx, const char *client_name, uint16_t period,
990 struct lyd_node **config);
991
1001int nc_server_config_del_ch_period(const char *client_name, struct lyd_node **config);
1002
1016int nc_server_config_add_ch_anchor_time(const struct ly_ctx *ctx, const char *client_name,
1017 const char *anchor_time, struct lyd_node **config);
1018
1026int nc_server_config_del_ch_anchor_time(const char *client_name, struct lyd_node **config);
1027
1041int nc_server_config_add_ch_idle_timeout(const struct ly_ctx *ctx, const char *client_name,
1042 uint16_t idle_timeout, struct lyd_node **config);
1043
1053int nc_server_config_del_ch_idle_timeout(const char *client_name, struct lyd_node **config);
1054
1068int nc_server_config_add_ch_reconnect_strategy(const struct ly_ctx *ctx, const char *client_name,
1069 NC_CH_START_WITH start_with, uint16_t max_wait, uint8_t max_attempts, struct lyd_node **config);
1070
1080int nc_server_config_del_ch_reconnect_strategy(const char *client_name, struct lyd_node **config);
1081
1085
1086#ifdef NC_ENABLED_SSH_TLS
1087
1095
1114int nc_server_config_add_ch_ssh_hostkey(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name,
1115 const char *hostkey_name, const char *privkey_path, const char *pubkey_path, struct lyd_node **config);
1116
1130int nc_server_config_del_ch_ssh_hostkey(const char *client_name, const char *endpt_name,
1131 const char *hostkey_name, struct lyd_node **config);
1132
1150int nc_server_config_add_ch_ssh_keystore_ref(const struct ly_ctx *ctx, const char *client_name,
1151 const char *endpt_name, const char *hostkey_name, const char *keystore_reference, struct lyd_node **config);
1152
1162int nc_server_config_del_ch_ssh_keystore_ref(const char *client_name, const char *endpt_name,
1163 const char *hostkey_name, struct lyd_node **config);
1164
1182int nc_server_config_add_ch_ssh_user_pubkey(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name,
1183 const char *user_name, const char *pubkey_name, const char *pubkey_path, struct lyd_node **config);
1184
1196int nc_server_config_del_ch_ssh_user_pubkey(const char *client_name, const char *endpt_name,
1197 const char *user_name, const char *pubkey_name, struct lyd_node **config);
1198
1216int nc_server_config_add_ch_ssh_user_authkey(const struct ly_ctx *ctx, const char *client_name,
1217 const char *endpt_name, const char *user_name, struct lyd_node **config);
1218
1228int nc_server_config_ch_del_ssh_user_authkey(const char *client_name, const char *endpt_name,
1229 const char *user_name, struct lyd_node **config);
1230
1246int nc_server_config_add_ch_ssh_user_password(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name,
1247 const char *user_name, const char *password, struct lyd_node **config);
1248
1258int nc_server_config_del_ch_ssh_user_password(const char *client_name, const char *endpt_name,
1259 const char *user_name, struct lyd_node **config);
1260
1277int nc_server_config_add_ch_ssh_user_interactive(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name,
1278 const char *user_name, struct lyd_node **config);
1279
1289int nc_server_config_del_ch_ssh_user_interactive(const char *client_name, const char *endpt_name,
1290 const char *user_name, struct lyd_node **config);
1291
1301int nc_server_config_del_ch_ssh_user(const char *client_name, const char *endpt_name,
1302 const char *user_name, struct lyd_node **config);
1303
1321int nc_server_config_add_ch_ssh_truststore_ref(const struct ly_ctx *ctx, const char *client_name,
1322 const char *endpt_name, const char *user_name, const char *truststore_reference, struct lyd_node **config);
1323
1333int nc_server_config_del_ch_ssh_truststore_ref(const char *client_name, const char *endpt_name,
1334 const char *user_name, struct lyd_node **config);
1335
1339
1347
1364int nc_server_config_add_ch_tls_server_cert(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name,
1365 const char *privkey_path, const char *pubkey_path, const char *cert_path, struct lyd_node **config);
1366
1378int nc_server_config_del_ch_tls_server_cert(const char *client_name, const char *endpt_name,
1379 struct lyd_node **config);
1380
1395int nc_server_config_add_ch_tls_keystore_ref(const struct ly_ctx *ctx, const char *client_name,
1396 const char *endpt_name, const char *asym_key_ref, const char *cert_ref, struct lyd_node **config);
1397
1409int nc_server_config_del_ch_tls_keystore_ref(const char *client_name, const char *endpt_name,
1410 struct lyd_node **config);
1411
1427int nc_server_config_add_ch_tls_client_cert(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name,
1428 const char *cert_name, const char *cert_path, struct lyd_node **config);
1429
1444int nc_server_config_del_ch_tls_client_cert(const char *client_name, const char *endpt_name,
1445 const char *cert_name, struct lyd_node **config);
1446
1460int nc_server_config_add_ch_tls_client_cert_truststore_ref(const struct ly_ctx *ctx, const char *client_name,
1461 const char *endpt_name, const char *cert_bag_ref, struct lyd_node **config);
1462
1474int nc_server_config_del_ch_tls_client_cert_truststore_ref(const char *client_name, const char *endpt_name,
1475 struct lyd_node **config);
1476
1492int nc_server_config_add_ch_tls_ca_cert(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name,
1493 const char *cert_name, const char *cert_path, struct lyd_node **config);
1494
1509int nc_server_config_del_ch_tls_ca_cert(const char *client_name, const char *endpt_name,
1510 const char *cert_name, struct lyd_node **config);
1511
1525int nc_server_config_add_ch_tls_ca_cert_truststore_ref(const struct ly_ctx *ctx, const char *client_name,
1526 const char *endpt_name, const char *cert_bag_ref, struct lyd_node **config);
1527
1539int nc_server_config_del_ch_tls_ca_cert_truststore_ref(const char *client_name, const char *endpt_name,
1540 struct lyd_node **config);
1541
1559int nc_server_config_add_ch_tls_ctn(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name,
1560 uint32_t id, const char *fingerprint, NC_TLS_CTN_MAPTYPE map_type, const char *name, struct lyd_node **config);
1561
1575int nc_server_config_del_ch_tls_ctn(const char *client_name, const char *endpt_name,
1576 uint32_t id, struct lyd_node **config);
1577
1581
1582#endif /* NC_ENABLED_SSH_TLS */
1583
1584#ifdef __cplusplus
1585}
1586#endif
1587
1588#endif /* NC_SESSION_SERVER_H_ */
int nc_server_config_add_ch_address_port(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, NC_TRANSPORT_IMPL transport, const char *address, const char *port, struct lyd_node **config)
Creates new YANG configuration data nodes for a Call Home client's address and port.
int nc_server_config_add_ch_persistent(const struct ly_ctx *ctx, const char *client_name, struct lyd_node **config)
Creates new YANG configuration data nodes for the Call Home persistent connection type.
int nc_server_config_add_ch_anchor_time(const struct ly_ctx *ctx, const char *client_name, const char *anchor_time, struct lyd_node **config)
Creates new YANG configuration data nodes for the anchor time parameter of the Call Home periodic con...
int nc_server_config_add_ch_period(const struct ly_ctx *ctx, const char *client_name, uint16_t period, struct lyd_node **config)
Creates new YANG configuration data nodes for the period parameter of the Call Home periodic connecti...
int nc_server_config_del_ch_idle_timeout(const char *client_name, struct lyd_node **config)
Deletes the Call Home idle timeout parameter of the periodic connection type from the YANG data.
int nc_server_config_del_ch_anchor_time(const char *client_name, struct lyd_node **config)
Deletes the Call Home anchor time parameter of the periodic connection type from the YANG data.
int nc_server_config_del_ch_endpt(const char *client_name, const char *endpt_name, struct lyd_node **config)
Deletes a Call Home endpoint from the YANG data.
int nc_server_config_del_ch_client(const char *client_name, struct lyd_node **config)
Deletes a Call Home client from the YANG data.
int nc_server_config_del_ch_reconnect_strategy(const char *client_name, struct lyd_node **config)
Resets the values of the Call Home reconnect strategy nodes to their defaults.
int nc_server_config_add_ch_reconnect_strategy(const struct ly_ctx *ctx, const char *client_name, NC_CH_START_WITH start_with, uint16_t max_wait, uint8_t max_attempts, struct lyd_node **config)
Creates new YANG configuration data nodes for the Call Home reconnect strategy.
int nc_server_config_del_ch_period(const char *client_name, struct lyd_node **config)
Deletes the Call Home period parameter of the periodic connection type from the YANG data.
int nc_server_config_add_ch_idle_timeout(const struct ly_ctx *ctx, const char *client_name, uint16_t idle_timeout, struct lyd_node **config)
Creates new YANG configuration data nodes for the idle timeout parameter of the Call Home periodic co...
int nc_server_config_add_ch_ssh_truststore_ref(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *user_name, const char *truststore_reference, struct lyd_node **config)
Creates new YANG data nodes for a reference to a public key bag located in the truststore.
int nc_server_config_del_ch_ssh_truststore_ref(const char *client_name, const char *endpt_name, const char *user_name, struct lyd_node **config)
Deletes a Call Home SSH truststore reference from the YANG data.
int nc_server_config_add_ch_ssh_user_authkey(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *user_name, struct lyd_node **config)
Creates new YANG configuration data nodes for a Call Home SSH user that will use system's authorized_...
int nc_server_config_del_ch_ssh_user(const char *client_name, const char *endpt_name, const char *user_name, struct lyd_node **config)
Deletes a Call Home SSH user from the YANG data.
int nc_server_config_del_ch_ssh_user_pubkey(const char *client_name, const char *endpt_name, const char *user_name, const char *pubkey_name, struct lyd_node **config)
Deletes a Call Home SSH user's public key from the YANG data.
int nc_server_config_add_ch_ssh_user_password(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *user_name, const char *password, struct lyd_node **config)
Creates new YANG data nodes for a Call Home SSH user's password authentication method.
int nc_server_config_del_ch_ssh_hostkey(const char *client_name, const char *endpt_name, const char *hostkey_name, struct lyd_node **config)
Deletes a Call Home hostkey from the YANG data.
int nc_server_config_del_ch_ssh_user_interactive(const char *client_name, const char *endpt_name, const char *user_name, struct lyd_node **config)
Deletes a Call Home SSH user's keyboard interactive authentication from the YANG data.
int nc_server_config_del_ch_ssh_user_password(const char *client_name, const char *endpt_name, const char *user_name, struct lyd_node **config)
Deletes a Call Home SSH user's password from the YANG data.
int nc_server_config_add_ch_ssh_user_pubkey(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *user_name, const char *pubkey_name, const char *pubkey_path, struct lyd_node **config)
Creates new YANG data nodes for a Call Home SSH user's public key authentication method.
int nc_server_config_ch_del_ssh_user_authkey(const char *client_name, const char *endpt_name, const char *user_name, struct lyd_node **config)
Deletes a Call Home SSH user's authorized_keys method from the YANG data.
int nc_server_config_add_ch_ssh_keystore_ref(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *hostkey_name, const char *keystore_reference, struct lyd_node **config)
Creates new YANG data nodes for a reference to an asymmetric key located in the keystore.
int nc_server_config_del_ch_ssh_keystore_ref(const char *client_name, const char *endpt_name, const char *hostkey_name, struct lyd_node **config)
Deletes a Call Home keystore reference from the YANG data.
int nc_server_config_add_ch_ssh_user_interactive(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *user_name, struct lyd_node **config)
Creates new YANG configuration data nodes for a Call Home SSH user's keyboard interactive authenticat...
int nc_server_config_add_ch_ssh_hostkey(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *hostkey_name, const char *privkey_path, const char *pubkey_path, struct lyd_node **config)
Creates new YANG data nodes for a Call Home SSH hostkey.
int nc_server_config_add_ch_tls_ctn(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, uint32_t id, const char *fingerprint, NC_TLS_CTN_MAPTYPE map_type, const char *name, struct lyd_node **config)
Creates new YANG configuration data nodes for a Call Home cert-to-name entry.
int nc_server_config_add_ch_tls_client_cert(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *cert_name, const char *cert_path, struct lyd_node **config)
Creates new YANG configuration data nodes for a Call Home client's (end-entity) certificate.
int nc_server_config_del_ch_tls_ctn(const char *client_name, const char *endpt_name, uint32_t id, struct lyd_node **config)
Deletes a Call Home cert-to-name entry from the YANG data.
int nc_server_config_add_ch_tls_ca_cert_truststore_ref(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *cert_bag_ref, struct lyd_node **config)
Creates new YANG configuration data nodes for a Call Home truststore reference to a set of client cer...
int nc_server_config_add_ch_tls_client_cert_truststore_ref(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *cert_bag_ref, struct lyd_node **config)
Creates new YANG configuration data nodes for a Call Home truststore reference to a set of client (en...
int nc_server_config_del_ch_tls_server_cert(const char *client_name, const char *endpt_name, struct lyd_node **config)
Deletes a Call Home server certificate from the YANG data.
int nc_server_config_add_ch_tls_server_cert(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *privkey_path, const char *pubkey_path, const char *cert_path, struct lyd_node **config)
Creates new YANG configuration data nodes for a Call Home server's certificate.
int nc_server_config_del_ch_tls_ca_cert_truststore_ref(const char *client_name, const char *endpt_name, struct lyd_node **config)
Deletes a Call Home client certificate authority (trust-anchor) certificates truststore reference fro...
int nc_server_config_del_ch_tls_ca_cert(const char *client_name, const char *endpt_name, const char *cert_name, struct lyd_node **config)
Deletes a Call Home client certificate authority (trust-anchor) certificate from the YANG data.
int nc_server_config_del_ch_tls_client_cert_truststore_ref(const char *client_name, const char *endpt_name, struct lyd_node **config)
Deletes a Call Home client (end-entity) certificates truststore reference from the YANG data.
int nc_server_config_del_ch_tls_keystore_ref(const char *client_name, const char *endpt_name, struct lyd_node **config)
Deletes a TLS server certificate keystore reference from the YANG data.
int nc_server_config_del_ch_tls_client_cert(const char *client_name, const char *endpt_name, const char *cert_name, struct lyd_node **config)
Deletes a Call Home client (end-entity) certificate from the YANG data.
int nc_server_config_add_ch_tls_ca_cert(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *cert_name, const char *cert_path, struct lyd_node **config)
Creates new YANG configuration data nodes for a client certificate authority (trust-anchor) certifica...
int nc_server_config_add_ch_tls_keystore_ref(const struct ly_ctx *ctx, const char *client_name, const char *endpt_name, const char *asym_key_ref, const char *cert_ref, struct lyd_node **config)
Creates new YANG configuration data nodes for a keystore reference to the Call Home TLS server's cert...
int nc_server_config_oper_get_supported_tls_algs(const struct ly_ctx *ctx, struct lyd_node **supported_algs)
Gets all the TLS transport cipher suites supported by the server.
int nc_server_config_del_unix_user_mapping(const char *endpt_name, const char *system_user, struct lyd_node **config)
Deletes a UNIX username mapping from the YANG data.
int nc_server_config_add_address_port(const struct ly_ctx *ctx, const char *endpt_name, NC_TRANSPORT_IMPL transport, const char *address, uint16_t port, struct lyd_node **config)
Creates new YANG configuration data nodes for address and port.
int nc_server_config_del_truststore_pubkey(const char *pub_bag_name, const char *pubkey_name, struct lyd_node **config)
Deletes a truststore's public key from the YANG data.
int nc_server_config_del_keystore_asym_key(const char *asym_key_name, struct lyd_node **config)
Deletes a keystore's asymmetric key from the YANG data.
int nc_server_config_load_modules(struct ly_ctx **ctx)
Implements all the required modules and their features in the context. Needs to be called before any ...
int nc_server_config_add_unix_user_mapping(const struct ly_ctx *ctx, const char *endpt_name, const char *system_user, const char *netconf_user, struct lyd_node **config)
Creates new YANG data nodes for a UNIX username mapping.
int nc_server_config_del_endpt(const char *endpt_name, struct lyd_node **config)
Deletes an endpoint from the YANG data.
int nc_server_config_del_keystore_cert(const char *asym_key_name, const char *cert_name, struct lyd_node **config)
Deletes a keystore's certificate from the YANG data.
int nc_server_config_add_unix_socket(const struct ly_ctx *ctx, const char *endpt_name, const char *path, const char *mode, const char *owner, const char *group, struct lyd_node **config)
Creates new YANG data nodes for a UNIX socket endpoint.
int nc_server_config_oper_get_supported_ssh_algs(const struct ly_ctx *ctx, struct lyd_node **supported_algs)
Gets all the SSH transport algorithms supported by the server.
int nc_server_config_setup_diff(const struct lyd_node *diff)
Configure server based on the given diff.
int nc_server_config_add_truststore_cert(const struct ly_ctx *ctx, const char *cert_bag_name, const char *cert_name, const char *cert_path, struct lyd_node **config)
Creates new YANG data nodes for a certificate in the truststore.
int nc_server_config_del_truststore_cert(const char *cert_bag_name, const char *cert_name, struct lyd_node **config)
Deletes a truststore's certificate from the YANG data.
int nc_server_config_add_keystore_cert(const struct ly_ctx *ctx, const char *asym_key_name, const char *cert_name, const char *cert_path, struct lyd_node **config)
Creates new YANG data nodes for a certificate in the keystore.
int nc_server_config_oper_get_user_password_last_modified(const char *ch_client, const char *endpoint, const char *username, time_t *last_modified)
Gets the last modified time of an SSH user's password.
int nc_server_config_setup_data(const struct lyd_node *data)
Configure server based on the given data.
int nc_server_config_add_keystore_asym_key(const struct ly_ctx *ctx, NC_TRANSPORT_IMPL ti, const char *asym_key_name, const char *privkey_path, const char *pubkey_path, struct lyd_node **config)
Creates new YANG data nodes for an asymmetric key in the keystore.
int nc_server_config_setup_path(const struct ly_ctx *ctx, const char *path)
Configure server based on the given data stored in a file.
int nc_server_config_add_truststore_pubkey(const struct ly_ctx *ctx, const char *pub_bag_name, const char *pubkey_name, const char *pubkey_path, struct lyd_node **config)
Creates new YANG data nodes for a public key in the truststore.
int nc_server_config_del_ssh_user(const char *endpt_name, const char *user_name, struct lyd_node **config)
Deletes an SSH user from the YANG data.
int nc_server_config_del_ssh_user_interactive(const char *endpt_name, const char *user_name, struct lyd_node **config)
Deletes an SSH user's keyboard interactive authentication from the YANG data.
int nc_server_config_del_ssh_user_pubkey(const char *endpt_name, const char *user_name, const char *pubkey_name, struct lyd_node **config)
Deletes an SSH user's public key from the YANG data.
int nc_server_config_add_ssh_user_authkey(const struct ly_ctx *ctx, const char *endpt_name, const char *user_name, struct lyd_node **config)
Creates new YANG configuration data nodes for an SSH user that will use system's authorized_keys to a...
int nc_server_config_add_ssh_truststore_ref(const struct ly_ctx *ctx, const char *endpt_name, const char *user_name, const char *truststore_reference, struct lyd_node **config)
Creates new YANG data nodes for a reference to a public key bag located in the truststore.
int nc_server_config_add_ssh_user_pubkey(const struct ly_ctx *ctx, const char *endpt_name, const char *user_name, const char *pubkey_name, const char *pubkey_path, struct lyd_node **config)
Creates new YANG configuration data nodes for an SSH user's public key authentication method.
int nc_server_config_add_ssh_user_password(const struct ly_ctx *ctx, const char *endpt_name, const char *user_name, const char *password, struct lyd_node **config)
Creates new YANG configuration data nodes for an SSH user's password authentication method.
int nc_server_config_del_ssh_hostkey(const struct ly_ctx *ctx, const char *endpt_name, const char *hostkey_name, struct lyd_node **config)
Deletes a hostkey from the YANG data.
int nc_server_config_del_ssh_truststore_ref(const char *endpt_name, const char *user_name, struct lyd_node **config)
Deletes a truststore reference from the YANG data.
int nc_server_config_del_ssh_user_authkey(const char *endpt_name, const char *user_name, struct lyd_node **config)
Deletes an SSH user's authorized_keys method from the YANG data.
int nc_server_config_del_ssh_keystore_ref(const char *endpt_name, const char *hostkey_name, struct lyd_node **config)
Deletes a keystore reference from the YANG data.
int nc_server_config_add_ssh_hostkey(const struct ly_ctx *ctx, const char *endpt_name, const char *hostkey_name, const char *privkey_path, const char *pubkey_path, struct lyd_node **config)
Creates new YANG configuration data nodes for a hostkey.
int nc_server_config_add_ssh_keystore_ref(const struct ly_ctx *ctx, const char *endpt_name, const char *hostkey_name, const char *keystore_reference, struct lyd_node **config)
Creates new YANG data nodes for a reference to an asymmetric key located in the keystore.
int nc_server_config_del_ssh_user_password(const char *endpt_name, const char *user_name, struct lyd_node **config)
Deletes an SSH user's password from the YANG data.
int nc_server_config_hash_password(const char *crypt_hash, char **hashed_password)
Hashes a clear-text 'iana-crypt-hash' password the way the server stores it in its configuration.
int nc_server_config_add_ssh_user_interactive(const struct ly_ctx *ctx, const char *endpt_name, const char *user_name, struct lyd_node **config)
Creates new YANG configuration data nodes for an SSH user's keyboard interactive authentication metho...
int nc_server_config_del_ssh_endpoint_client_ref(const char *endpt_name, struct lyd_node **config)
Deletes reference to another SSH endpoint's users from the YANG data.
int nc_server_config_add_ssh_endpoint_client_ref(const struct ly_ctx *ctx, const char *endpt_name, const char *referenced_endpt, struct lyd_node **config)
Creates new YANG configuration data nodes, which will be a reference to another SSH endpoint's users.
int nc_server_config_add_tls_server_cert(const struct ly_ctx *ctx, const char *endpt_name, const char *privkey_path, const char *pubkey_path, const char *cert_path, struct lyd_node **config)
Creates new YANG configuration data nodes for a server's certificate.
int nc_server_config_add_tls_ca_cert_truststore_ref(const struct ly_ctx *ctx, const char *endpt_name, const char *cert_bag_ref, struct lyd_node **config)
Creates new YANG configuration data nodes for a truststore reference to a set of client certificate a...
int nc_server_config_add_tls_ctn(const struct ly_ctx *ctx, const char *endpt_name, uint32_t id, const char *fingerprint, NC_TLS_CTN_MAPTYPE map_type, const char *name, struct lyd_node **config)
Creates new YANG configuration data nodes for a cert-to-name entry.
int nc_server_config_del_tls_ca_cert(const char *endpt_name, const char *cert_name, struct lyd_node **config)
Deletes a client certificate authority (trust-anchor) certificate from the YANG data.
int nc_server_config_add_tls_keystore_ref(const struct ly_ctx *ctx, const char *endpt_name, const char *asym_key_ref, const char *cert_ref, struct lyd_node **config)
Creates new YANG configuration data nodes for a keystore reference to the TLS server's certificate.
int nc_server_config_del_tls_keystore_ref(const char *endpt_name, struct lyd_node **config)
Deletes a TLS server certificate keystore reference from the YANG data.
int nc_server_config_del_tls_endpoint_client_ref(const char *endpt_name, struct lyd_node **config)
Deletes reference to another TLS endpoint's users from the YANG data.
int nc_server_config_del_tls_client_cert(const char *endpt_name, const char *cert_name, struct lyd_node **config)
Deletes a client (end-entity) certificate from the YANG data.
int nc_server_config_del_tls_client_cert_truststore_ref(const char *endpt_name, struct lyd_node **config)
Deletes a client (end-entity) certificates truststore reference from the YANG data.
int nc_server_config_del_tls_ctn(const char *endpt_name, uint32_t id, struct lyd_node **config)
Deletes a cert-to-name entry from the YANG data.
int nc_server_config_del_tls_server_cert(const char *endpt_name, struct lyd_node **config)
Deletes the server's certificate from the YANG data.
int nc_server_config_del_tls_ca_cert_truststore_ref(const char *endpt_name, struct lyd_node **config)
Deletes a client certificate authority (trust-anchor) certificates truststore reference from the YANG...
int nc_server_config_add_tls_ca_cert(const struct ly_ctx *ctx, const char *endpt_name, const char *cert_name, const char *cert_path, struct lyd_node **config)
Creates new YANG configuration data nodes for a client certificate authority (trust-anchor) certifica...
int nc_server_config_add_tls_endpoint_client_ref(const struct ly_ctx *ctx, const char *endpt_name, const char *referenced_endpt, struct lyd_node **config)
Creates new YANG configuration data nodes, which will be a reference to another TLS endpoint's certif...
int nc_server_config_add_tls_client_cert_truststore_ref(const struct ly_ctx *ctx, const char *endpt_name, const char *cert_bag_ref, struct lyd_node **config)
Creates new YANG configuration data nodes for a truststore reference to a set of client (end-entity) ...
int nc_server_config_add_tls_client_cert(const struct ly_ctx *ctx, const char *endpt_name, const char *cert_name, const char *cert_path, struct lyd_node **config)
Creates new YANG configuration data nodes for a client's (end-entity) certificate.
libnetconf2 session manipulation
NC_TLS_CTN_MAPTYPE
Enumeration of cert-to-name mapping types.
Definition session.h:51
NC_CH_START_WITH
Enumeration of Call Home client priority policy.
Definition session.h:109
NC_TRANSPORT_IMPL
Enumeration of transport implementations (ways how libnetconf implements NETCONF transport protocol).
Definition session.h:85