yumapro  24.10-1
YumaPro SDK
Loading...
Searching...
No Matches
agt.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2008 - 2012, Andy Bierman, All Rights Reserved.
3 * Copyright (c) 2012 - 2024, YumaWorks, Inc., All Rights Reserved.
4 *
5 * Unless required by applicable law or agreed to in writing,
6 * software distributed under the License is distributed on an
7 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8 * KIND, either express or implied. See the License for the
9 * specific language governing permissions and limitations
10 * under the License.
11 */
12#ifndef _H_agt
13#define _H_agt
14
15/* FILE: agt.h
16*********************************************************************
17* *
18* P U R P O S E *
19* *
20*********************************************************************/
21
28/*********************************************************************
29* *
30* C H A N G E H I S T O R Y *
31* *
32*********************************************************************
33
34date init comment
35----------------------------------------------------------------------
3604-nov-05 abb Begun
3702-aug-08 abb Convert from NCX typdef to YANG object design
3803-oct-08 abb Convert to YANG only, remove app, parmset,
39 and parm layers in the NETCONF database
40*/
41
42#ifndef _H_agt_not
43#include "agt_not.h"
44#endif
45
46#ifndef _H_help
47#include "help.h"
48#endif
49
50#ifndef _H_log
51#include "log.h"
52#endif
53
54#ifndef _H_ncxtypes
55#include "ncxtypes.h"
56#endif
57
58#ifndef _H_status
59#include "status.h"
60#endif
61
62#ifdef __cplusplus
63extern "C" {
64#endif
65
66
67/* define a top-level header here here */
68
69
157/* header field defined here, used in rest of library */
158
170/********************************************************************
171* *
172* C O N S T A N T S *
173* *
174*********************************************************************/
175
185#define AGT_NUM_CB (AGT_CB_ROLLBACK+1)
186
188#define AGT_MAX_PORTS 4
189
193#define AGT_DEF_SUBSYS_TIMEOUT 30
194
196#define AGT_DEF_CONF_FILE \
197 (const xmlChar *)"/etc/yumapro/netconfd-pro.conf"
198
200#define AGT_DEF_FACTORY_CONFIG_FILE \
201 (const xmlChar *)"factory-startup-cfg.xml"
202
204#define AGT_DEF_CONF_DIR (const xmlChar *)"/etc/yumapro/netconfd-pro.d"
205
207#define AGT_DEF_FHS_LOG_FILE \
208 (const xmlChar *)"/var/log/netconfd-pro/server.log"
209
211#define AGT_DEF_SYSLIB_FILE (const xmlChar *)"libyp_system.so"
212
214#define AGT_SYSLIB_NAME (const xmlChar *)"yp_system"
215
217#define AGT_DEF_BACKUP_DIR (const xmlChar *)"$HOME/.yumapro/backups"
218
220#define AGT_DEF_BACKUPS_NAME (const xmlChar *)"backups"
221
223#define AGT_DEF_FHS_BACKUP_DIR \
224 (const xmlChar *)"/var/lib/netconfd-pro/backups"
225
227#define AGT_SRID_FHS_BACKUP_DIR \
228 (const xmlChar *)"/var/lib/netconfd-pro/%s/backups"
229
233#define AGT_DEF_DELETE_EMPTY_NP FALSE
234
238#define AGT_DEF_SYSTEM_SORTED FALSE
239
241#define AGT_DEF_LAX_NAMESPACES TRUE
242
244#define AGT_DEF_EVENTLOG_SIZE 1000
245
247#define AGT_DEF_MAX_BURST 10
248
250#define AGT_DEF_HELLO_TIMEOUT 300
251
253#define AGT_DEF_IDLE_TIMEOUT 3600
254
256#define AGT_DEF_LINESIZE 72
257
259#define AGT_DEF_INDENT 1
260
262#define AGT_DEF_MESSAGE_INDENT (-1)
263
265#define AGT_DEF_MAX_SESSIONS 8
266
268#define AGT_DEF_MAX_CLI_SESSIONS 0
269
271#define AGT_DEF_MAX_USER_SESSIONS 0
272
276#define AGT_MAX_USERNAME_LEN 1024
277
281#define AGT_MAX_PER_USER_SESSIONS 1024
282
283
285#define AGT_DEF_YANGAPI_SERVER_URL (const xmlChar *)"http://localhost"
286
288#define AGT_DEF_RESTCONF_SERVER_URL (const xmlChar *)"http://localhost"
289
291#define AGT_DEF_SAVE_OWNERS FALSE
292
294#define AGT_DEF_JSON_LEAF_LIST_1LINE FALSE
295
297#define AGT_DEF_SAVE_CONFIG_SYSTEM FALSE
298
300#define AGT_DEF_WITH_CONFIG_ID TRUE
301
303#define AGT_DEF_WITH_OCPATTERN FALSE
304
306#define AGT_DEF_NO_NVSTORE FALSE
307
309#define AGT_DEF_WITH_CALLHOME FALSE
310
312#define AGT_DEF_WITH_SCHEMA_MOUNT TRUE
313
315#define AGT_DEF_CALLHOME_RETRY_INT 60
316
318#define AGT_DEF_CALLHOME_RETRY_MAX 10
319
321#define AGT_DEF_CALLHOME_PORT NCX_DEF_SSH_CALLHOME
322
324#define AGT_DEF_CALLHOME_TLS_PORT NCX_DEF_TLS_CALLHOME
325
327#define AGT_DEF_CALLHOME_RESTCONF_TLS_PORT NCX_DEF_RESTCONF_TLS_CALLHOME
328
330#define AGT_YUMAWORKS_CALLHOME_MODULE (const xmlChar *)"yumaworks-callhome"
331
333#define AGT_YUMAWORKS_CALLHOME_REVISION (const xmlChar *)"2020-10-17"
334#define AGT_DEF_FILELOC_FHS FALSE
335
337#define AGT_DEF_NO_AUDIT_LOG FALSE
338
343#define AGT_DEF_CRYPT_HASH_PREFIX (const xmlChar *)"$6$"
344
346#define AGT_DEF_MIN_PASSWD_LEN 8
347
349#define AGT_DEF_HA_ENABLED FALSE
350
352#define AGT_DEF_HA_SIL_STANDBY FALSE
353
355#define AGT_DEF_HA_PORT 8088
356
358#define AGT_DEF_HA_STANDBY_MODE AGT_HA_MODE_HOT_STANDBY
359
361#define AGT_DEF_YPCOAP_PORT 5683
362
364#define AGT_DEF_YPCOAP_DTLS_PORT 5684
365
367#define AGT_DEF_YPCOAP_ADDRESS (const xmlChar *)"0.0.0.0"
368
370#define AGT_DEF_RESTCONF_DEFAULT_ENCODING NCX_MSG_ENCODING_JSON
371
373#define AGT_DEF_TLS_PORT 6513
374
376#define AGT_DEF_DB_LOCK_RETRY 500 // mSec
377
379#define AGT_DEF_DB_LOCK_TIMEOUT 20 // Sec
380
382#define AGT_DEF_WITH_YUMAWORKS_CONFIG_CHANGE FALSE
383
385#define AGT_DEF_WITH_YUMAWORKS_CALLHOME TRUE
386
388#define AGT_DEF_WITH_YUMAWORKS_EVENT_STREAM TRUE
389
391#define AGT_DEF_WITH_NMDA FALSE
392
394#define AGT_DEF_STARTUP_SKIP_VALIDATION FALSE
395
397#define AGT_DEF_RETURN_STATUS FALSE
398
402#define AGT_DEF_WAIT_DATASTORE_READY FALSE
403
405#define AGT_DEF_YANG_SID_MODE NCX_YANG_SID_MODE_SID_FILE
406
408#define AGT_DEF_WITH_YANG_CBOR FALSE
409
413#define AGT_DEF_SILCALL_DELETE_FIRST TRUE
414
419#define AGT_DEF_XPATH_DBLSLASH_OK FALSE
420
422#define AGT_DEF_SIL_CC_CALLBACK_ALL FALSE
423
425#define AGT_DEF_DISABLED_PROTOCOLS EMPTY_STRING
426
428#define AGT_SELECT_TIMEOUT_SEC 0
429
432#define AGT_SELECT_TIMEOUT_USEC 10000
433
435#define AGT_USER_VAR (const xmlChar *)"user"
436
438#define AGT_URL_SCHEME_LIST (const xmlChar *)"file"
439
441#define AGT_URL_SCHEME_LIST_TFTP (const xmlChar *)"file,tftp"
442
444#define AGT_FILE_SCHEME (const xmlChar *)"file:///"
445
447#define AGT_TOASTER_MOD (const xmlChar *)"toaster"
448
450#define AGT_TEST_MOD (const xmlChar *)"test"
451
453#define AGT_SIL_SA (const xmlChar *)"sil-sa"
454
456#define AGT_DB_API (const xmlChar *)"db-api"
457
459#define AGT_YP_HA (const xmlChar *)"yp-ha"
460
462#define AGT_YP_GNMI (const xmlChar *)"yp-gnmi"
463
465#define AGT_YP_GRPC (const xmlChar *)"yp-grpc"
466
468#define AGT_YCONTROL_MOD (const xmlChar *)"yumaworks-ycontrol"
469
471#define AGT_DB_API_MOD (const xmlChar *)"yumaworks-db-api"
472
474#define AGT_SIL_SA_MOD (const xmlChar *)"yumaworks-sil-sa"
475
477#define AGT_PROFILE_MOD (const xmlChar *)"yumaworks-agt-profile"
478
480#define AGT_ACTION_MOD (const xmlChar *)"yang-attributes"
481
483#define AGT_YP_HA_MOD (const xmlChar *)"yumaworks-yp-ha"
484
486#define AGT_TEMPLATES_MOD (const xmlChar *)"yumaworks-templates"
487
489#define AGT_LOCK_MOD (const xmlChar *)"yumaworks-lock"
490
492#define AGT_YP_GNMI_MOD (const xmlChar *)"yumaworks-yp-gnmi"
493
495#define AGT_YP_GRPC_MOD (const xmlChar *)"yumaworks-yp-grpc"
496
498#define AGT_YP_SCHEMA_MOUNT_MOD (const xmlChar *)"yumaworks-schema-mount"
499
501#define AGT_YP_SM_YANGLIB_MOD (const xmlChar *)"yumaworks-sm-yanglib"
502
504#define AGT_DEF_SERVER_ID (const xmlChar *)"server1"
505
507#define AGT_WITHDEF_MOD (const xmlChar *)"ietf-netconf-with-defaults"
508
509
513#define AGT_TEST_FL_MIN_ELEMS bit0
514
516#define AGT_TEST_FL_MAX_ELEMS bit1
517
519#define AGT_TEST_FL_MANDATORY bit2
520
522#define AGT_TEST_FL_MUST bit3
523
525#define AGT_TEST_FL_UNIQUE bit4
526
528#define AGT_TEST_FL_XPATH_TYPE bit5
529
531#define AGT_TEST_FL_CHOICE bit6
532
534#define AGT_TEST_FL_WHEN bit7
535
537#define AGT_TEST_ALL_COMMIT_MASK (bit0|bit1|bit2|bit3|bit4|bit5|bit6)
538
540#define AGT_TEST_INSTANCE_MASK (bit0|bit1|bit2|bit4|bit6)
541
543#define AGT_CLI_NOSTARTUP (const xmlChar *)"no-startup"
544
546#define AGT_CLI_STARTUP (const xmlChar *)"startup"
547
549#define AGT_CLI_FACTORY_STARTUP (const xmlChar *)"factory-startup"
550
552#define AGT_CLI_STARTUP_FACTORY_FILE (const xmlChar *)"startup-factory-file"
553
555#define AGT_EVAL_REQUEST_LIMIT 500
556
560#define AGT_MAX_OWNER_ID 255
561
563#define AGT_WATCHER (const xmlChar *)"ypwatcher"
564
566#define AGT_DEF_WAT_INTERVAL 10
567
569#define AGT_DEF_SSHD_COMMAND (const xmlChar *)"/usr/sbin/sshd"
570
572#define AGT_DEF_SUBSYS_COMMAND \
573 (const xmlChar *)"/usr/sbin/netconf-subsystem-pro"
574
576#define AGT_DEF_SNMP_SUBAGENT_PRIO 127
577
578/* flags for the agt_auditlog_events mask from
579 * --audit-log-events CLI parameter.
580 * edit-candidate events are generated when an edit
581* to <candidate> is completed.
582 */
583#define AGT_FL_AUDIT_EDIT_CANDIDATE bit0
584
588#define AGT_FL_AUDIT_EDIT_RUNNING bit1
589
593#define AGT_FL_AUDIT_UPDATE_STARTUP bit2
594
596#define AGT_FL_AUDIT_CLIENT_SESSION bit3
597
599#define AGT_FL_AUDIT_CONTROL_SESSION bit4
600
602#define AGT_FL_AUDIT_NACM_WRITE_ERROR bit5
603
605#define AGT_FL_AUDIT_NACM_EXEC_ERROR bit6
606
608#define AGT_FL_AUDIT_RPC_SUMMARY bit7
609
611#define AGT_FL_AUDIT_EDIT_DATA bit8
612
614#define AGT_FL_AUDIT_RPC_ERROR bit9
615
617#define AGT_DEF_AUDIT_EVENTS AGT_FL_AUDIT_EDIT_RUNNING
618
620#define AGT_DEF_CRL_MISSING_OK false
621
623#define AGT_DEF_CRL_MODE AGT_CRL_MODE_OFF
624
626#define AGT_DEF_CVT_SUBTREE_FILTER false
627
631#define AGT_DEF_PUSH_MIN_PERIOD 100
632
634#define AGT_DEF_PUSH_MIN_DAMPENING 100
635
637#define AGT_DEF_PUSH_MAX_PERIODIC 16
638
640#define AGT_DEF_PUSH_MAX_OPERATIONAL 4
641
643#define AGT_DEF_PUSH_SIMOP_ENABLED true
644
646#define AGT_DEF_PUSH_SIMOP_PERIOD 500
647
649#define AGT_DEF_PUSH_SIMOP_PATCH_UPDATE true
650
652#define AGT_NON_NMDA_YANGLIB_REV (const xmlChar *)"2016-06-21"
653
655#define AGT_NMDA_YANGLIB_REV (const xmlChar *)"2019-01-04"
656
658#define AGT_SIL_SA_MODULE (const xmlChar *)"yumaworks-sil-sa"
659
663#define AGT_DEF_TLS_DEPRECATED_OK false
664
666#define AGT_DEF_TLS_DH_ENABLED true
667
669#define AGT_DEF_SAVE_CONFIG_TEMPNAME true
670
672#define AGT_SAVE_CONFIG_TEMPNAME_EXT (const xmlChar *)".temp"
673
678#define AGT_DEF_RETURN_EMPTY_NPCONTAINERS TRUE
679
685#define AGT_DEF_MAX_DBLSLASH_MATCHES 25
686
687
700#define AGT_DEF_MAX_NODES_PER_UPDATE 10000
701
702
703/********************************************************************
704* *
705* T Y P E S *
706* *
707*********************************************************************/
708
710typedef enum agt_acmode_t_ {
717
718
726typedef enum agt_cbtyp_t_ {
732
733
735typedef enum agt_acm_model_t_ {
741
742
744typedef enum agt_transaction_model_t_ {
749
750
752typedef enum agt_commit_type_t_ {
757
758
760typedef enum agt_exit_mode_t_ {
767
768
770typedef enum agt_tx_type_t_ {
777
778
780typedef enum agt_ccparm_t_ {
787
788
790typedef enum agt_ha_role_t_ {
796
797
799typedef enum agt_ch_proto_t_ {
805
806
808typedef enum agt_crl_mode_t_ {
814
815
817typedef enum agt_hook_type_t_ {
823
824
828typedef struct agt_replay_subsys_t_ {
829 dlq_hdr_t qhdr;
830 xmlChar *subsys_id;
832
833
837typedef struct agt_maxuser_t_ {
838 dlq_hdr_t qhdr;
839 xmlChar *username;
842
843
844
845
879typedef struct agt_profile_t_ {
884
887
890
893
896
899
902
905
908
911
914
917
919 boolean agt_startup_error; /* T: stop, F: check fallback */
920
922 boolean agt_running_error; /* T: stop, F: check fallback */
923
926
929
932
935
938
941
950
953
956
959
962
965
967 const xmlChar *agt_accesscontrol;
968
970 const xmlChar *agt_conffile;
971
973 const xmlChar *agt_confdir;
974
976 const xmlChar *agt_logfile;
977
979 const xmlChar *agt_startup;
980
983
985 const xmlChar *agt_defaultStyle;
986
991 //const xmlChar *agt_superuser;
992
994 const xmlChar *agt_extern_libspec;
995
997 const xmlChar *agt_backup_dir;
998
1002 const xmlChar *agt_server_id;
1003
1010 const xmlChar *agt_server_root;
1011
1014
1017
1020
1023
1026
1029
1032
1035
1037 boolean agt_useurl;
1038
1041
1044
1047
1050
1053
1056
1059
1062
1065
1068
1071
1074
1077
1080
1083
1086
1088 uint16 agt_ports[AGT_MAX_PORTS];
1089
1092
1095
1097 const xmlChar *agt_coap_address;
1098
1101
1104
1107
1110
1113
1116
1119
1122
1128
1131
1139
1142
1145
1148
1151
1154
1157
1164
1167
1170
1178
1189
1195
1202
1208
1213
1218
1227
1233
1236
1244
1247
1250
1253
1256
1259
1262
1265
1268
1271
1274
1277
1280
1282 const xmlChar *agt_ha_server_key;
1283
1286
1287 // leaf-list ha-server not stored here; not sent to subsys
1288
1291
1296
1299
1300 /* TBD: add this data to subsystems in the near future */
1301
1306
1312
1318
1330
1334 boolean agt_with_yang11_hello; /* d: false */
1335
1342
1347
1353
1354 /* the callhome-server parameter is handled by agt_callhome */
1355
1360 const xmlChar *agt_sshd_path;
1361
1366 const xmlChar *agt_subsys_path;
1367
1372 const xmlChar *agt_sshd_config;
1373
1374
1381
1384
1387
1390
1392 boolean agt_startup_fallback; /* T: restart, F: continue */
1393
1395 boolean agt_running_fallback; /* T: restart, F: continue */
1396
1397
1398 /* the SNMP agent parameters */
1399
1402
1405
1410
1417
1420
1423
1426
1428 const xmlChar *agt_netconf_tls_key;
1429
1432
1435
1438
1441
1443 const xmlChar *agt_errmsg_lang;
1444
1447
1452
1455
1458
1461
1464
1467
1472
1475
1478
1484
1490
1493
1496
1503
1506
1509
1512
1515
1518
1521
1524
1527
1530
1533
1536
1539
1542
1545
1548
1550 uint16 agt_push_min_period; // centiseconds
1551
1553 uint16 agt_push_min_dampening; // centiseconds
1554
1556 uint32 agt_push_max_periodic; // count
1557
1560
1563
1566
1569
1575
1578
1581
1584
1589
1597 const xmlChar *agt_sm_config;
1598
1603
1604
1609
1612
1622
1628
1635 const xmlChar *agt_tls_cipherlist;
1636
1639
1644
1647
1650
1653
1656
1661
1662 /* YPW-2000
1663 * Enable use of a temp file while saving config files such
1664 * as startup-cfg.xml or backup-cfg.xml
1665 * The file is renamed to the provided filespec after
1666 * it is written; If no rename because crash then restart will
1667 * not find real xml file; No CLI to disable
1668 */
1669 boolean agt_save_config_tempname;
1670
1675
1681
1684
1692
1694 const xmlChar *agt_user_parm;
1695
1704
1707
1716
1723
1729
1736
1744
1751
1762
1763
1764 /****** state variables; TBD: move out of profile ******/
1765
1768
1771
1774
1777
1780
1783
1786
1789
1791 dlq_hdr_t agt_savedevQ;
1792
1795
1798
1801
1804
1807 boolean agt_confdir_skipped;
1808
1811
1814
1821
1824
1827
1830
1833
1836
1837
1839
1840
1844/******************* External System Callbacks ***********************/
1845
1860 (agt_profile_t *profile);
1861
1862
1876 (boolean pre_cli);
1877
1878
1893 (boolean pre_load);
1894
1895
1901typedef void (*agt_system_cleanup_fn_t) (void);
1902
1903
1915 (ncx_display_mode_t encoding,
1916 const xmlChar *filespec);
1917
1918
1935 (ncx_display_mode_t *encoding,
1936 xmlChar **filespec);
1937
1938
1942typedef struct agt_syslib_cb_t_ {
1944 dlq_hdr_t qhdr;
1945
1947 void *handle;
1948
1950 xmlChar *libspec;
1951
1954
1957
1960
1963
1966
1969
1973
1974
1976typedef struct agt_edit_parms_cb_t_ {
1977
1978
1979 /**** state data used for the edit transaction ****/
1980 yang_patch_cb_t *pcb;
1981
1983
1984
1994typedef void (*agt_replay_fn_t) (boolean is_start);
1995
1996
2000/********************************************************************
2001* *
2002* F U N C T I O N S *
2003* *
2004*********************************************************************/
2005
2006
2030extern status_t
2031 agt_init1 (int argc,
2032 char *argv[],
2033 boolean *showver,
2034 help_mode_t *showhelpmode);
2035
2036
2050extern status_t
2051 agt_init1_ex (int argc,
2052 char *argv[],
2053 boolean factory_restart,
2054 boolean *showver,
2055 help_mode_t *showhelpmode);
2056
2057
2065extern status_t
2066 agt_init1_sil_sa (void);
2067
2068
2083extern status_t
2084 agt_init1_ypserver (int argc,
2085 char *argv[],
2086 boolean factory_restart,
2087 boolean *showver,
2088 help_mode_t *showhelpmode);
2089
2090
2103extern status_t
2104 agt_init2 (void);
2105
2106
2120extern status_t
2121 agt_init2_ex (boolean factory_restart);
2122
2123
2129extern status_t
2130 agt_init2_sil_sa (void);
2131
2132
2139extern void
2140 agt_cleanup (void);
2141
2142
2149extern void
2150 agt_cleanup_sil_sa (void);
2151
2152
2160extern agt_profile_t *
2161 agt_get_profile (void);
2162
2163
2171extern void
2173 int intnum);
2174
2175
2181extern boolean
2183
2184
2190extern ncx_shutdowntyp_t
2192
2193
2200extern int
2202
2203
2210extern const xmlChar *
2212
2213
2223extern boolean
2224 agt_advertise_module_needed (const xmlChar *modname);
2225
2226
2235extern void agt_request_replay (void);
2236
2237
2247extern void agt_request_replay_ex (void *cookie);
2248
2249
2255extern void * agt_get_replay_cookie (void);
2256
2257
2268extern void
2269 agt_request_replay_subsys (const xmlChar *subsys_id);
2270
2271
2277extern boolean agt_replay_requested (void);
2278
2279
2285extern void agt_start_replay (void);
2286
2287
2293extern void agt_finish_replay (void);
2294
2295
2304extern status_t
2306 agt_nvsave_fn_t store_fn);
2307
2308
2319extern status_t
2321 const xmlChar *filespec);
2322
2323
2332extern status_t
2333 agt_add_allowed_user (const xmlChar *username);
2334
2335
2342extern void
2343 agt_remove_allowed_user (const xmlChar *username);
2344
2345
2352extern status_t
2353 agt_check_allowed_user (const xmlChar *username);
2354
2355
2356
2365extern status_t
2366 agt_add_superuser (const xmlChar *username);
2367
2368
2375extern void
2376 agt_remove_superuser (const xmlChar *username);
2377
2378
2385extern status_t
2386 agt_check_superuser (const xmlChar *username);
2387
2388
2394extern void
2396
2397
2403extern const xmlChar *
2404 agt_get_server_id (void);
2405
2406
2413extern const xmlChar *
2414 agt_get_server_root (void);
2415
2416
2422extern const xmlChar *
2423 agt_get_server_key (void);
2424
2425
2431extern boolean
2432 agt_is_sil_sa (void);
2433
2434
2440extern dlq_hdr_t *
2441 agt_get_savedevQ (void);
2442
2443
2450extern boolean
2451 agt_replay_subsys_is_active (const xmlChar *subsys_id);
2452
2453
2460extern boolean
2462
2463
2470extern const xmlChar *
2472
2473
2480extern agt_ha_role_t
2481 agt_ha_role_enum (const xmlChar *ha_role);
2482
2483
2490extern boolean
2491 agt_use_notifications (void);
2492
2493
2501extern status_t
2503
2504
2513extern boolean
2514 agt_init2_done (void);
2515
2516
2523extern boolean
2524 agt_init2_load_done (void);
2525
2526
2538extern boolean
2540
2541
2547extern void
2549
2550
2560extern boolean
2562
2563
2570extern status_t
2572
2573
2580extern ncx_modcache_t *
2581 agt_find_modcache (const xmlChar *modname);
2582
2583
2589extern status_t
2590 agt_run_extloop (void);
2591
2592
2600extern status_t
2601 agt_enter_maintenance_mode (boolean read_ok,
2602 boolean operation_ok);
2603
2604
2610extern status_t
2612
2613
2619extern boolean
2621
2622
2630extern boolean
2632
2633
2641extern boolean
2643
2644
2650extern boolean
2652
2653
2659extern void
2660 agt_set_eventlog_size (uint32 eventlog_size);
2661
2662
2668extern void
2669 agt_set_max_burst (uint32 max_burst);
2670
2671
2678extern void
2679 agt_set_max_getbulk (uint32 max_getbulk);
2680
2681
2689extern agt_not_msg_t *
2690 agt_make_term_msg (const xmlChar *msg,
2691 status_t *res);
2692
2693
2699extern status_t
2701
2702
2708extern boolean
2709 agt_use_nmda (void);
2710
2711
2717extern boolean
2718 agt_use_new_yanglib (void);
2719
2720
2727extern boolean
2729
2730
2736extern boolean
2737 agt_use_yang_cbor (void);
2738
2739
2745extern const char *
2747
2748
2754extern const xmlChar *
2755 agt_get_user_parm (void);
2756
2757
2764extern status_t
2765 agt_add_maxuser_parm (const xmlChar *cliparm);
2766
2767
2768
2779 agt_get_maxuser_parm (const xmlChar *username,
2780 uint16 *retval);
2781
2782
2791extern boolean agt_protocol_enabled (const xmlChar *proto);
2792
2793
2804extern status_t agt_enable_protocol (const xmlChar *proto);
2805
2806
2817extern status_t agt_disable_protocol (const xmlChar *proto);
2818
2819
2827extern boolean
2829
2830
2834#ifdef __cplusplus
2835} /* end extern 'C' */
2836#endif
2837
2838#endif /* _H_agt */
NETCONF Notifications DM module support.
agt_exit_mode_t
exit reasons for YControl IO loop
Definition: agt.h:760
status_t(* agt_system_init2_fn_t)(boolean pre_load)
system init2 callback
Definition: agt.h:1893
agt_commit_type_t
NETCONF commit types.
Definition: agt.h:752
status_t(* agt_nvload_fn_t)(ncx_display_mode_t *encoding, xmlChar **filespec)
nvload callback
Definition: agt.h:1935
void(* agt_system_cleanup_fn_t)(void)
system cleanup callback
Definition: agt.h:1901
agt_hook_type_t
Hook types enumeration to specify Hook type.
Definition: agt.h:817
void(* agt_replay_fn_t)(boolean is_start)
replay callback (agt_replay_fn_t)
Definition: agt.h:1994
agt_transaction_model_t
not used yet in YANG-API or NETCONF!
Definition: agt.h:744
agt_ccparm_t
confirmed-commit parms
Definition: agt.h:780
status_t(* agt_system_init1_fn_t)(boolean pre_cli)
system init1 callback
Definition: agt.h:1876
agt_ch_proto_t
server callhome protocol
Definition: agt.h:799
status_t(* agt_nvsave_fn_t)(ncx_display_mode_t encoding, const xmlChar *filespec)
brief nvsave callback
Definition: agt.h:1915
agt_acmode_t
matches access-control enumeration in netconfd.yang
Definition: agt.h:710
agt_crl_mode_t
server TLS CRL mode
Definition: agt.h:808
agt_acm_model_t
select the YANG module for the access control model
Definition: agt.h:735
agt_tx_type_t
YControl transaction type.
Definition: agt.h:770
agt_ha_role_t
server HA mode mode
Definition: agt.h:790
#define AGT_MAX_PORTS
maximum number of "--port" leaf-list values that will be saved
Definition: agt.h:188
agt_cbtyp_t
enumeration of the different server EDIT callback types These are used as array indices so there is n...
Definition: agt.h:726
void(* agt_system_init_profile_fn_t)(agt_profile_t *profile)
system init server profile callback
Definition: agt.h:1860
@ AGT_EXIT_MODE_NONE
this value is used
Definition: agt.h:761
@ AGT_EXIT_MODE_ERROR
exit loop with error
Definition: agt.h:763
@ AGT_EXIT_MODE_TIMEOUT
exit loop with timeout
Definition: agt.h:764
@ AGT_EXIT_MODE_OK
exit loop with OK
Definition: agt.h:762
@ AGT_EXIT_MODE_DROPPED
exit loop with session dropped
Definition: agt.h:765
@ AGT_COMMIT_TYPE_NORMAL
normal client operation
Definition: agt.h:754
@ AGT_COMMIT_TYPE_REPLAY
internal replay commit
Definition: agt.h:755
@ AGT_COMMIT_TYPE_NONE
not set
Definition: agt.h:753
@ AGT_HOOK_TYPE_SETHOOK
Set-Hook.
Definition: agt.h:819
@ AGT_HOOK_TYPE_NONE
not set
Definition: agt.h:818
@ AGT_HOOK_TYPE_TRANSACTION
Transaction Hook.
Definition: agt.h:820
@ AGT_HOOK_TYPE_POST_SETHOOK
Post Set-Hook.
Definition: agt.h:821
@ AGT_TM_PRIVATE
private transactions
Definition: agt.h:747
@ AGT_TM_SHARED
shared transactions (only value supported)
Definition: agt.h:746
@ AGT_TM_NONE
this value is used
Definition: agt.h:745
@ AGT_CCPARM_CONFIRMED
confirmed
Definition: agt.h:782
@ AGT_CCPARM_NONE
not set
Definition: agt.h:781
@ AGT_CCPARM_PERSIST
persist
Definition: agt.h:784
@ AGT_CCPARM_CONFIRM_TIMEOUT
confirm-timeout
Definition: agt.h:783
@ AGT_CCPARM_PERSIST_ID
persist-id
Definition: agt.h:785
@ AGT_CH_PROTO_NONE
not set
Definition: agt.h:800
@ AGT_CH_PROTO_RESTCONF_TLS
restconf-over-ssh callhome
Definition: agt.h:803
@ AGT_CH_PROTO_NETCONF_SSH
netconf-over-ssh callhome
Definition: agt.h:801
@ AGT_CH_PROTO_NETCONF_TLS
netconf-over-tls callhome
Definition: agt.h:802
@ AGT_ACMOD_PERMISSIVE
permissive mode, read + exec allowed
Definition: agt.h:713
@ AGT_ACMOD_OFF
NACM completely off.
Definition: agt.h:715
@ AGT_ACMOD_DISABLED
almost all access control turned off
Definition: agt.h:714
@ AGT_ACMOD_NONE
not set
Definition: agt.h:711
@ AGT_ACMOD_ENFORCING
full enforcement
Definition: agt.h:712
@ AGT_CRL_MODE_CA
CRL check client and CA certs.
Definition: agt.h:812
@ AGT_CRL_MODE_CLIENT
CRL check client cert.
Definition: agt.h:811
@ AGT_CRL_MODE_NONE
not set
Definition: agt.h:809
@ AGT_CRL_MODE_OFF
CRL check off.
Definition: agt.h:810
@ AGT_ACM_MODEL_IETF_NACM
IETF NACM (default)
Definition: agt.h:737
@ AGT_ACM_MODEL_YUMA_NACM
YUMA NACM (obsolete, not supported)
Definition: agt.h:738
@ AGT_ACM_MODEL_NONE
not set
Definition: agt.h:736
@ AGT_ACM_MODEL_EXTERNAL
external ACM via yp_system library
Definition: agt.h:739
@ AGT_TX_TYPE_NONE
not set
Definition: agt.h:771
@ AGT_TX_TYPE_GET
GET2 transaction.
Definition: agt.h:772
@ AGT_TX_TYPE_HOOK
hook callback for edit
Definition: agt.h:775
@ AGT_TX_TYPE_RPC
DB-API RPC transaction.
Definition: agt.h:774
@ AGT_TX_TYPE_EDIT
EDIT1 or EDIT2 transaction.
Definition: agt.h:773
@ AGT_HA_ROLE_STANDBY
HA standby role.
Definition: agt.h:793
@ AGT_HA_ROLE_NONE
not set
Definition: agt.h:791
@ AGT_HA_ROLE_ACTIVE
HA active role.
Definition: agt.h:794
@ AGT_HA_ROLE_NOT_SET
HA role not set.
Definition: agt.h:792
@ AGT_CB_APPLY
P2: write operation apply.
Definition: agt.h:728
@ AGT_CB_VALIDATE
P1: write operation validate.
Definition: agt.h:727
@ AGT_CB_ROLLBACK
P3-neg: write operation rollback.
Definition: agt.h:730
@ AGT_CB_COMMIT
P3-pos: write operation commit.
Definition: agt.h:729
agt_not_msg_t * agt_make_term_msg(const xmlChar *msg, status_t *res)
Create a <term-msg> notification.
Definition: agt.c:6291
void agt_remove_superuser(const xmlChar *username)
Remove a superuser name from the running system Does not change any config file allowed-user paramete...
Definition: agt.c:5500
status_t agt_check_save_external_config(ncx_display_mode_t encoding, const xmlChar *filespec)
Check if an external NV handler needs to be used to save the config.
Definition: agt.c:5290
status_t agt_init1_ypserver(int argc, char *argv[], boolean factory_restart, boolean *showver, help_mode_t *showhelpmode)
Initialize the Server Library: stage 1: CLI and profile Added factory_restart parameter yp-controller...
Definition: agt.c:3902
boolean agt_protocol_enabled(const xmlChar *proto)
Check if protocol sessions are enabled.
Definition: agt.c:6595
void agt_cleanup(void)
Cleanup the Server Library.
Definition: agt.c:4828
const xmlChar * agt_get_user_parm(void)
Get the user-parm string (if any)
Definition: agt.c:6458
const xmlChar * agt_get_server_root(void)
Get the server-root string.
Definition: agt.c:5604
status_t agt_add_maxuser_parm(const xmlChar *cliparm)
Add a maxuser parameter value.
Definition: agt.c:6472
void agt_request_replay_subsys(const xmlChar *subsys_id)
Request replay of the running config to the SIL-SA modules on the specified subsystem.
Definition: agt.c:5105
void agt_cleanup_sil_sa(void)
Cleanup the Server Library for SIL-SA usage.
Definition: agt.c:4844
void * agt_get_replay_cookie(void)
Get the current replay cookie.
Definition: agt.c:5165
void agt_set_factory_restart(void)
Set the flag so the server will restart with the factory config.
Definition: agt.c:5968
status_t agt_enter_maintenance_mode(boolean read_ok, boolean operation_ok)
Set the server to mainenance mode to block client activity.
Definition: agt.c:6222
const char * agt_get_aflocal_sockname(void)
Get the AFLOCAL socket name to use for <ncx-connect>
Definition: agt.c:6443
status_t agt_init_term_msg_module(void)
Init the term-msg module and object backptr.
Definition: agt.c:6338
status_t agt_init2(void)
Initialize the Server Library (phase 2 init)
Definition: agt.c:3934
status_t agt_add_allowed_user(const xmlChar *username)
Add a backptr to the string in the val_value_t containing the username that is allowed.
Definition: agt.c:5330
boolean agt_use_nmda(void)
Check if NMDA is enabled.
Definition: agt.c:6372
int agt_shutdown_term_signal(void)
Get the shutdown termination signal if any.
Definition: agt.c:4990
boolean agt_replay_main_is_active(void)
Check if the replay in progress is for the main server or could be for a subsystem.
Definition: agt.c:5694
status_t agt_disable_protocol(const xmlChar *proto)
Disable the named protocol.
Definition: agt.c:6705
status_t agt_get_maxuser_parm(const xmlChar *username, uint16 *retval)
Get the maxuser max-sessions value for a specified user.
Definition: agt.c:6569
boolean agt_maintenance_mode_operation_ok(void)
Return true if in maintenance mode operations OK;.
Definition: agt.c:6148
const xmlChar * agt_ha_role_str(agt_ha_role_t ha_role)
Get the string for the specified HA role enumeration.
Definition: agt.c:5712
status_t agt_check_superuser(const xmlChar *username)
Check a username in the superuser Q.
Definition: agt.c:5541
boolean agt_is_sil_sa(void)
Check if server running in SIL-SA mode.
Definition: agt.c:5637
boolean agt_yang_push_is_enabled(void)
Check if agt_push is enabled.
Definition: agt.c:6765
status_t agt_add_modcache(ncx_modcache_t *mc)
Add a module to the modcache queue and hash table.
Definition: agt.c:6010
status_t agt_add_superuser(const xmlChar *username)
Add a backptr to the string in the val_value_t containing the username that is a superuser.
Definition: agt.c:5458
status_t agt_register_local_nv_handler(agt_nvload_fn_t load_fn, agt_nvsave_fn_t store_fn)
Register a set of nvstore and nvload callback functions to handle the non-volatile storage of the con...
Definition: agt.c:5250
status_t agt_enable_protocol(const xmlChar *proto)
Enable the named protocol.
Definition: agt.c:6643
const xmlChar * agt_cbtype_name(agt_cbtyp_t cbtyp)
Get the string for the server callback phase.
Definition: agt.c:5009
agt_profile_t * agt_get_profile(void)
Get the server profile struct.
Definition: agt.c:4862
boolean agt_waiting_datastore_ready(void)
Check if client sessions are blocked until the datastore is ready.
Definition: agt.c:6405
void agt_request_replay(void)
Request replay of the running config to SIL modules because SIL hardware has reset somehow.
Definition: agt.c:5063
const xmlChar * agt_get_server_id(void)
Get the server-id string.
Definition: agt.c:5587
boolean agt_maintenance_mode_session_ok(void)
Return true if in maintenance mode new sessions OK;.
Definition: agt.c:6161
status_t agt_init2_ex(boolean factory_restart)
Initialize the Server Library (phase 2 init - extended)
Definition: agt.c:3957
boolean agt_init2_load_done(void)
Check if the init2 phase is complete and all modules loaded.
Definition: agt.c:5915
void agt_request_replay_ex(void *cookie)
Request replay of the running config to SIL modules because SIL hardware has reset somehow.
Definition: agt.c:5081
boolean agt_use_yang_cbor(void)
Check if YANG CBOR is enabled.
Definition: agt.c:6426
void agt_request_shutdown(ncx_shutdowntyp_t mode, int intnum)
Request some sort of server shutdown.
Definition: agt.c:4880
status_t agt_init2_sil_sa(void)
Initialize the Server Library for SIL-SA.
Definition: agt.c:4784
void agt_start_replay(void)
Start replay of the running config to SIL modules.
Definition: agt.c:5178
status_t agt_check_allowed_user(const xmlChar *username)
Check a username in the allowed-user Q.
Definition: agt.c:5402
status_t agt_exit_maintenance_mode(void)
Exit the server from mainenance mode to unblock client activity.
Definition: agt.c:6260
status_t agt_init1_sil_sa(void)
Initialize the Server Library: stage 1: CLI and profile.
Definition: agt.c:3859
boolean agt_use_notifications(void)
Check if notifications currently enabled.
Definition: agt.c:5773
status_t agt_run_extloop(void)
Run the agt_ncxserver in external loop mode.
Definition: agt.c:6071
boolean agt_use_new_yanglib(void)
Check if NMDA or use-new-yanglib is enabled.
Definition: agt.c:6388
boolean agt_in_factory_restart(void)
Check if a factory restort is in progress.
Definition: agt.c:5990
const xmlChar * agt_get_server_key(void)
Get the ha-server-key string.
Definition: agt.c:5621
boolean agt_maintenance_mode_read_ok(void)
Return true if in maintenance mode reads OK;.
Definition: agt.c:6133
boolean agt_in_maintenance_mode(void)
Return true if in mainenance mode now.
Definition: agt.c:6118
ncx_modcache_t * agt_find_modcache(const xmlChar *modname)
Find a module to the modcache queue and hash table.
Definition: agt.c:6043
status_t agt_init1_ex(int argc, char *argv[], boolean factory_restart, boolean *showver, help_mode_t *showhelpmode)
Initialize the Server Library: stage 1: CLI and profile Added factory_restart parameter.
Definition: agt.c:3832
boolean agt_shutdown_requested(void)
Check if some sort of server shutdown is in progress.
Definition: agt.c:4950
boolean agt_replay_requested(void)
Check if config replay is pending.
Definition: agt.c:5148
status_t agt_check_load_config(agt_ha_role_t ha_role)
Check if the boot-time load-config should be done because it was deferred while waiting for the YP-HA...
Definition: agt.c:5803
void agt_set_max_burst(uint32 max_burst)
Set the max-burst parameter.
Definition: agt.c:6176
ncx_shutdowntyp_t agt_shutdown_mode_requested(void)
Check what shutdown mode was requested.
Definition: agt.c:4973
dlq_hdr_t * agt_get_savedevQ(void)
Get the agt_savedevQ pointer.
Definition: agt.c:5651
boolean agt_advertise_module_needed(const xmlChar *modname)
Check if the module should be advertised or not.
Definition: agt.c:5039
void agt_remove_allowed_user(const xmlChar *username)
Remove an allowed-user name from the running system Does not change any config file allowed-user para...
Definition: agt.c:5363
boolean agt_replay_subsys_is_active(const xmlChar *subsys_id)
Find a subsys replay request struct in the activeQ.
Definition: agt.c:5668
void agt_register_replay_callback(agt_replay_fn_t cbfn)
Register a callback function for a replay config event.
Definition: agt.c:5570
status_t agt_init1(int argc, char *argv[], boolean *showver, help_mode_t *showhelpmode)
Initialize the Server Library: stage 1: CLI and profile.
Definition: agt.c:3795
void agt_set_max_getbulk(uint32 max_getbulk)
Set the max-getbulk parameter.
Definition: agt.c:6193
void agt_set_eventlog_size(uint32 eventlog_size)
Set the eventlog-size parameter.
Definition: agt.c:6103
boolean agt_init2_done(void)
Check if the init2 phase is complete.
Definition: agt.c:5897
void agt_finish_replay(void)
Finish replay of the running config to SIL modules.
Definition: agt.c:5211
boolean agt_advertise_yang11_module_needed(ncx_module_t *mod)
Check whether the NETCONF hello message should conform to the standard and leave out YANG 1....
Definition: agt.c:5941
agt_ha_role_t agt_ha_role_enum(const xmlChar *ha_role)
Get the enum for the specified HA role string.
Definition: agt.c:5742
log_debug_t
The debug level enumerations used in util/log.c.
Definition: log.h:348
status_t
global error return code
Definition: status_enum.h:210
help_mode_t
modes to match the keywords brief, normal, full
Definition: help.h:84
ncx_agttarg_t
enum to identify the agent native target
Definition: ncxtypes.h:517
ncx_yang_sid_mode_t
YANG SID Allocation mode from yang-sid-mode typedef.
Definition: ncxtypes.h:1777
ncx_agtstart_t
enum to identify the agent native startup mode
Definition: ncxtypes.h:528
ncx_msg_encoding_t
enumeration for message encoding formats
Definition: ncxtypes.h:647
ncx_snmp_agt_role_t
enum to identify the SNMP agent native mode
Definition: ncxtypes.h:1607
ncx_name_match_t
Node name match modes.
Definition: ncxtypes.h:695
ncx_display_mode_t
enumeration of val_dump_value display modes Some RESTCONF code uses this field incorrectly for messag...
Definition: ncxtypes.h:617
ncx_withdefaults_t
enum for with-defaults enum values
Definition: ncxtypes.h:1278
ncx_shutdowntyp_t
enumeration of the different program shutdown modes
Definition: ncxtypes.h:536
uint8 obj_testflags_t
object test flags
Definition: obj.h:1222
YANG help text support for CLI Print help text for various templates.
NCX System Logging Manager.
YANG module data structures Many internal representations of YANG module constructs.
Global error messages for status code enumerations.
struct to contain all agt_send_edit parameters
Definition: agt.h:1976
for the list of username / max-session values to support the –max-per-user-sessions CLI parameter
Definition: agt.h:837
xmlChar * username
malloced user name string
Definition: agt.h:839
dlq_hdr_t qhdr
queue header
Definition: agt.h:838
uint16 max_sessions
max session count 0 .
Definition: agt.h:840
one notification message that will be sent to all subscriptions in the stream and kept in the replay ...
Definition: agt_not.h:143
Multiple instances are not supported.
Definition: agt.h:879
const xmlChar * agt_backup_dir
backup dir location
Definition: agt.h:997
boolean agt_with_yp_coap_dtls
enable YP-CoAP DTLS sessions (not supported)
Definition: agt.h:1258
boolean agt_allow_tcp_socket
allow a TCP socket instead of an AF_LOCAL socket for connections
Definition: agt.h:1153
const xmlChar * agt_startup
startup filespec
Definition: agt.h:979
boolean agt_sil_validate_candidate
If true, the server will invoke the VALIDATE phase for SIL and SIL-SA callbacks when each edit is mad...
Definition: agt.h:1207
int32 agt_message_indent
–message-indent parameter
Definition: agt.h:1031
boolean agt_use_ccommit
enable confirmed-comiit
Definition: agt.h:1040
boolean agt_use_tcp_socket
use a TCP socket instead of an AF_LOCAL socket for connections
Definition: agt.h:1156
boolean agt_with_yumaworks_config_change
with-yumaworks-config-change
Definition: agt.h:1523
boolean agt_useurl_ftp
–with-url-ftp
Definition: agt.h:1413
boolean agt_with_yp_shell
enable yp-shell sessions
Definition: agt.h:1252
ncx_name_match_t agt_match_names
match names behavior; needs to be EXACT for YANG
Definition: agt.h:961
boolean agt_tls_deprecated_ok
YPW-1984: TLS Deprecated OK.
Definition: agt.h:1655
boolean agt_sil_test_get_when
enable config=false when-stmt checking for GET1 and GET2 callback functions; if false then the callba...
Definition: agt.h:1502
boolean agt_with_error_number
enable the <error-number) element added to error info some NC clients do not implement the error-info...
Definition: agt.h:1691
boolean agt_use_yuma_if
load yuma-if module
Definition: agt.h:1112
boolean agt_with_yp_coap
enable YP-CoAP sessions (not supported)
Definition: agt.h:1255
boolean agt_autodelete_pdu_error
If 'true' the server will treat edit-config auto-delete because of false when-stmts as an error inste...
Definition: agt.h:1217
uint16 agt_socket_port
listen on this TCP port if TCP socket is enabled
Definition: agt.h:1803
boolean agt_return_status
return exit code or zero
Definition: agt.h:1580
boolean agt_use_yuma_arp
load yuma-arp module
Definition: agt.h:1109
uint32 agt_linesize
line size for logging
Definition: agt.h:1025
boolean agt_useurl
–with-url parameter
Definition: agt.h:1037
ncx_yang_sid_mode_t agt_yang_sid_mode
yang-sid-mode parameter
Definition: agt.h:1649
boolean agt_sil_wait_sa
No CLI parameter!! Set to TRUE in agt_profile.c the load-config will wait if agt_ncx_load_any_waiting...
Definition: agt.h:1489
boolean agt_wait_datastore_ready
wait-datastore-ready parameter
Definition: agt.h:1577
boolean agt_with_new_notifs
flag to indicate that the new notifications defined in RFC 8639 should be used, even if bundle yang-p...
Definition: agt.h:1743
uint32 agt_max_nodes_per_update
IETF max-nodes-per-update NO CLI PARAMTER TO SET THIS VALUE.
Definition: agt.h:1574
boolean agt_sil_skip_load
skip the SIL callbacks for load-config Useful if the authoritative database is really the external sy...
Definition: agt.h:1138
const xmlChar * agt_netconf_tls_certificate
–netconf-tls-cerificate parameter
Definition: agt.h:1425
boolean agt_fileloc_fhs
this flag enables FHS file locations for server data files
Definition: agt.h:1383
uint16 agt_max_sessions
max sessions (total)
Definition: agt.h:1076
const xmlChar * agt_extern_libspec
superuser name (allowed to be NULL) moved to agt.c agt_superuserQ Q of ncx_backptr_t to malloced stri...
Definition: agt.h:994
boolean agt_with_yang11_hello
this field indicates whether the NETCONF hello message should conform to the standard and leave out Y...
Definition: agt.h:1334
boolean agt_load_rootcheck_errors
server load-config root-check had errors flag
Definition: agt.h:1776
uint8 agt_withdef_enabled
bitmask of the with-defaults enumerations that should be enabled in the server
Definition: agt.h:1188
uint16 agt_snmp_subagent_priority
identify the SNMP subagent priority, what priority will be used for OID callbacks registration
Definition: agt.h:1409
boolean agt_save_owners
flag to save owner strings in the database
Definition: agt.h:1166
boolean agt_with_yumaworks_callhome
with-yumaworks-callhome
Definition: agt.h:1520
const xmlChar * agt_yangapi_server_url
YANG-API server URL (obsolete)
Definition: agt.h:1100
boolean agt_restconf_strict_headers
If 'true' the server will only accept requests with normative Accept header entries specified in the ...
Definition: agt.h:1212
const xmlChar * agt_conffile
config file: default: /etc/yumapro/netconfd-pro.conf
Definition: agt.h:970
const xmlChar * agt_user_parm
back-pointer to the user-parm string if any
Definition: agt.h:1694
boolean agt_load_validate_errors
server load-config had errors flag
Definition: agt.h:1773
boolean agt_with_yang_patch_running
with-yang-patch-running parameter
Definition: agt.h:1547
boolean agt_with_config_id
this field indicates if the :config-id capability is enabled or not.
Definition: agt.h:1317
agt_crl_mode_t agt_crl_mode
tls-crl-mode parameter
Definition: agt.h:1529
boolean agt_use_local_transport
use local transport flag
Definition: agt.h:1055
boolean agt_ypserver_mode
this flag indicates the server is rnning as yp-controller and not netconfd-pro
Definition: agt.h:1471
boolean agt_sil_invoke_for_defaults
–sil-invoke-for-defaults parameter
Definition: agt.h:1463
boolean agt_create_empty_npcontainers_ro
special flag for create NP containers if read-only child nodes
Definition: agt.h:1298
boolean agt_use_rollback_on_error
Use rollback-on-error.
Definition: agt.h:1127
boolean agt_xmlorder
use strict XML order flag
Definition: agt.h:928
const xmlChar * agt_errmsg_lang
–errmsg-lang parameter
Definition: agt.h:1443
boolean agt_create_empty_npcontainers
LAST DATA SENT TO SUBSYSTEMS create empty NP containers d: true.
Definition: agt.h:1295
log_debug_t agt_audit_log_level
audit log level
Definition: agt.h:1267
boolean agt_system_sorted
enable system-sorted (obsolete: sorted by val_child algorithms)
Definition: agt.h:1061
ncx_withdefaults_t agt_defaultStyleEnum
default with-defaults enum
Definition: agt.h:1070
uint32 agt_watcher_interval
Specifies the number of seconds the YPWatcher process will sleep before checking if the netconfd-pro ...
Definition: agt.h:1194
boolean agt_library_mode
this field indicates the server is operating in library mode It will look for YANG modules but only l...
Definition: agt.h:1311
xmlChar * agt_subsys_info_file
location of subsys info file YPW-2080: Multi-Instance Mode This filespec will contain the SRID so it ...
Definition: agt.h:1163
obj_testflags_t agt_rootflags
root commit descendant test flags
Definition: agt.h:1767
uint16 agt_max_cli_sessions
max CLI sessions
Definition: agt.h:1079
boolean agt_delete_empty_npcontainers
delete empty config=true NP containers: d: false
Definition: agt.h:940
boolean agt_push_simop_enabled
push-simop-enabled parameter
Definition: agt.h:1565
boolean agt_validate_all
validate all flag
Definition: agt.h:907
uint8 agt_max_dblslash_matches
Max number of dblslash wildcard matches to allow this is an arbitrary limit meant to prevent the XPat...
Definition: agt.h:1728
boolean agt_with_nmda
with-nmda
Definition: agt.h:1535
boolean agt_load_def_startup_factory
server load-config factory flag
Definition: agt.h:1788
boolean agt_use_yuma_proc
load yuma-proc module
Definition: agt.h:1106
uint16 agt_callhome_retry_max
this field specifies the number of retry attempts the server should attempt to the callhome server be...
Definition: agt.h:1352
boolean agt_sil_root_check_first
–sil-root-check-first to do root check in edit-config before the SIL validate callbacks are invoked t...
Definition: agt.h:1483
boolean agt_no_yang_push
flag indicates that yang-push bundle is loaded only to use the notifications.
Definition: agt.h:1820
boolean agt_simple_json_names
use simple JSON names instead of YANG JSON names
Definition: agt.h:1290
uint16 agt_max_lock_hold_time
YPW-2027 Enforce a max lock hold time if non-zero value.
Definition: agt.h:1674
boolean agt_with_netconf_tls
enable NETCONF over TLS sessions
Definition: agt.h:1261
const xmlChar * agt_netconf_tls_address
–netconf-tls-address parameter
Definition: agt.h:1422
const xmlChar * agt_server_root
assigned server root ID
Definition: agt.h:1010
const xmlChar * agt_tls_cipherlist
–tls-cipherlist CLI parameter Use with extreme caution! Advanced libopenssl usage not supported passe...
Definition: agt.h:1635
boolean agt_use_ycontrol
enable YControl protocol
Definition: agt.h:1130
boolean agt_has_startup
has startup flag for –with-startup
Definition: agt.h:910
boolean agt_ha_sil_standby
call SIL code in standby mode
Definition: agt.h:1276
const xmlChar * agt_crypt_hash_prefix
specifies the string that will be pre-pended to the password before calling crypt_r to generate the h...
Definition: agt.h:1232
boolean agt_with_ocpattern
this flag enables/disables the special OpenConfig usage of the YANG pattern-statement.
Definition: agt.h:1380
boolean agt_use_rollback_failed_backup
save running config for a commit, in case the rollback fails
Definition: agt.h:1150
boolean agt_use_yuma_system
load yuma-system module
Definition: agt.h:1121
boolean agt_enable_grpc
flag to enable gRPC sessions
Definition: agt.h:1835
boolean agt_sil_invoke_false_when_deletes
–sil-invoke-false-when-deletes parameter
Definition: agt.h:1460
boolean agt_audit_log_candidate
If true, then transactions to the candidate datastore will be recorded in the audit log.
Definition: agt.h:1201
uint16 agt_push_min_dampening
push-min-dampening parameter
Definition: agt.h:1553
boolean agt_trim_whitespace
–trim-whitespace CLI parameter
Definition: agt.h:1419
uint32 agt_maxburst
–maxburst parameter
Definition: agt.h:1016
uint32 agt_push_max_periodic
push-max-periodic parameter
Definition: agt.h:1556
boolean agt_return_error_with_data
enable returning rpc-error with data YPW-2187: add –return-error-with-data parameter Allow GET2 callb...
Definition: agt.h:1722
boolean agt_with_callhome
this field indicates that the IETF Callhome feature is enabled if true and WITH_CALLHOME is built int...
Definition: agt.h:1341
boolean agt_yumaworks_ids
use the yumaworks-ids module
Definition: agt.h:1511
boolean agt_stream_output
stream message output: d:true; no CLI support yet
Definition: agt.h:937
boolean agt_save_load_events
No CLI parameter for save load events! If true then NETCONF notifications generated for the YANG libr...
Definition: agt.h:1715
const xmlChar * agt_ha_initial_active
active server to use if standby
Definition: agt.h:1285
const xmlChar * agt_cert_default_user
–cert-default-user parameter
Definition: agt.h:1440
boolean agt_ha_enabled
enable YP-HA
Definition: agt.h:1273
agt_ha_role_t agt_ha_role
saved HA role
Definition: agt.h:1810
boolean agt_enable_restconf
flag to enable RESTCONF sessions
Definition: agt.h:1826
boolean agt_yuma_time_filter
use the yuma-time-filter module
Definition: agt.h:1505
const xmlChar * agt_sshd_config
set the sshd_config file to use for sshd exectuable for callhome default is $HOME/....
Definition: agt.h:1372
boolean agt_with_sm
this flag indicates that the Schema Mount support should be enabled
Definition: agt.h:1588
boolean agt_use_netconf
enable NETCONF protocol
Definition: agt.h:1052
boolean agt_callhome_reconnect
CLI parameter –callhome-reconnect.
Definition: agt.h:1495
uint16 agt_ha_port
port number is default 8088
Definition: agt.h:1279
boolean agt_with_yumaworks_lock
enable the <lock-all> and <unlock-all> operations
Definition: agt.h:1683
boolean agt_enable_netconf
flag to enable NETCONF sessions
Definition: agt.h:1823
boolean agt_use_notifications
enable notifications
Definition: agt.h:1058
boolean agt_yuma_system_notifs
d: false
Definition: agt.h:943
boolean agt_with_netconf
If 'true' then the corresponding protocol will be enabled.
Definition: agt.h:1243
agt_acm_model_t agt_acm_model
NACM or external ACM model.
Definition: agt.h:1067
ncx_agttarg_t agt_targ
BEGIN DATA SENT TO SUBSYSTEMS; target type (candidate or running)
Definition: agt.h:883
boolean agt_xpath_dblslash_ok
YPW-1981: XPath Dblslash OK.
Definition: agt.h:1652
boolean agt_use_db_lock
db-lock used only if WITH_YCONTROL=1 and CLI set
Definition: agt.h:1514
boolean agt_insecure_ok
–insecure-ok parameter
Definition: agt.h:1437
const xmlChar * agt_subsys_path
set the netconf subsystem for sshd exectuable path for callhome default is /usr/sbin/netconf-subsyste...
Definition: agt.h:1366
boolean agt_support_save
d: true (needs WITH_SUPPORT_SAVE=1)
Definition: agt.h:949
boolean agt_defer_load
saved defer load config flag
Definition: agt.h:1813
boolean agt_running_error
–running-error parameter: stop, continue enums only
Definition: agt.h:922
boolean agt_audit_log_localtime
audit log localtime
Definition: agt.h:1270
agt_transaction_model_t agt_transaction_model
TBD private transaction model.
Definition: agt.h:964
uint16 agt_coap_dtls_port
Coap over DTLS port (not implemented)
Definition: agt.h:1094
boolean agt_cvt_subtree_filter
convert-subtree-filterparameter
Definition: agt.h:1541
const xmlChar * agt_netconf_tls_key
–netconf-tls-key parameter
Definition: agt.h:1428
boolean agt_with_yang_api
enable YANG-API sessions (obsolete)
Definition: agt.h:1249
const xmlChar * agt_sm_config
set the Schema Mount configuration file.
Definition: agt.h:1597
boolean agt_startup_fallback
this flag indicates the –startup-error parm is set to fallback
Definition: agt.h:1392
boolean agt_term_msg
d: true for <term-msg> notification
Definition: agt.h:952
const xmlChar * agt_sshd_path
set the sshd exectuable path for callhome default is /usr/sbin/sshd only set by vendor in agt_init1 p...
Definition: agt.h:1360
boolean agt_sil_cc_callback_all
YPW-2042 Apply Commit Completeness Callbacks to All Edit Transactions instead of just the <commit> op...
Definition: agt.h:1680
boolean agt_yumaworks_getbulk
use the yumaworks-getbulk module
Definition: agt.h:1508
boolean agt_yumaworks_system
d: true
Definition: agt.h:945
boolean agt_json_leaf_list_1line
flag to print JSON leaf-list value on 1 line
Definition: agt.h:1169
boolean agt_with_snmp
this flag indicates that the snmp agent should be enabled
Definition: agt.h:1401
boolean agt_logappend
–log-append parameter
Definition: agt.h:925
boolean agt_load_done
server load-config done flag
Definition: agt.h:1770
boolean agt_load_top_rootcheck_errors
server load-config had top root-check errors flag
Definition: agt.h:1779
xmlChar * agt_startup_txid_file
cached location of startup transaction ID file
Definition: agt.h:1797
boolean agt_with_yumaworks_event_stream
with-yumaworks-event-stream
Definition: agt.h:1526
dlq_hdr_t agt_savedevQ
Q of malloced ncx_save_deviations_t.
Definition: agt.h:1791
boolean agt_sil_autodelete
enable SIL/SIL-SA callback for auto-deletions
Definition: agt.h:1703
boolean agt_enable_gnmi
flag to enable gNMI sessions
Definition: agt.h:1832
ncx_snmp_agt_role_t agt_snmp_agent_role
identify the SNMP agent native mode master|subagent
Definition: agt.h:1404
log_debug_t agt_syslog_log_level
requested SYSLOG log-level
Definition: agt.h:892
boolean agt_factorystartup
track –factory-startup flag
Definition: agt.h:916
boolean agt_log_acm_writes
log NACM write requests
Definition: agt.h:904
boolean agt_use_yangapi
enable YANG-API protocol (obsolete: ignored)
Definition: agt.h:1043
boolean agt_enable_cli
flag to enable CLI sessions
Definition: agt.h:1829
const xmlChar * agt_startup_factory_file
factory startup filespec
Definition: agt.h:982
const xmlChar * agt_netconf_tls_trust_store
–netconf-tls-trust-store parameter
Definition: agt.h:1434
boolean agt_leaflist_deleteall_ok
allow delete-all and remove-all operations on a leaf-list
Definition: agt.h:934
uint16 agt_coap_port
the CoAP port number used only if WITH_COAP and agt_use_coap set
Definition: agt.h:1091
const xmlChar * agt_ha_server_key
server-key to keep HA pools separate
Definition: agt.h:1282
boolean agt_use_yumaworks_sm_yanglib
load yumaworks-sm-yanglib module ignored unless agt_with_sm and agt_sm_config both set
Definition: agt.h:1608
boolean agt_with_canonical
–with-canonical parameter
Definition: agt.h:1454
dlq_hdr_t agt_commit_testQ
Q of malloced agt_commit_test_t.
Definition: agt.h:1794
const xmlChar * agt_confdir
config dir: default: /etc/yumapro/netconfd-pro.d
Definition: agt.h:973
boolean agt_with_restconf
enable RESTCONF sessions
Definition: agt.h:1246
boolean agt_silcall_delete_first
YPW-1975: SILCALL delete first.
Definition: agt.h:1638
uint16 agt_subsys_timeout
subsystem timeout in seconds
Definition: agt.h:1085
boolean agt_with_modtags
–with-modtags parameter
Definition: agt.h:1457
boolean agt_highres_event_time
–highres-event-time parameter Affects the <eventTime> leaf in all notifications
Definition: agt.h:1643
boolean agt_ietf_system_notifs
d: true
Definition: agt.h:944
uint32 agt_audit_log_events
–audit-log-events to control audit log content
Definition: agt.h:1477
boolean agt_with_new_yanglib
Flag to indicate that the YANG Library from RFC 8525 will be present, even if with-nmda=false This do...
Definition: agt.h:1735
boolean agt_sil_skip_keys
do not invoke the SIL callback for a key leaf
Definition: agt.h:1147
boolean agt_use_yuma_mysession
load yuma-mysession module
Definition: agt.h:1115
boolean agt_load_apply_errors
server load-config had apply phase errors flag
Definition: agt.h:1782
boolean agt_sil_prio_reverse_for_deletes
–sil-prio-reverse-for-deletes parameter
Definition: agt.h:1474
boolean agt_load_factory_fallback
server load-config allowed to use factory-fallback flag
Definition: agt.h:1785
int32 agt_max_strlen
max-strlen parameter
Definition: agt.h:1517
boolean agt_alt_names
Yuma REST-API urlselect extra parameters.
Definition: agt.h:955
uint8 agt_min_passwd_len
minimum password length when setting crypt-hash variables
Definition: agt.h:1235
boolean agt_disable_imported_ok
YPW-2209: flag to enable disabling of imported objects that are not loaded via module or bundle param...
Definition: agt.h:1761
boolean agt_with_grpc
this flag indicates that the gRPC support should be enabled
Definition: agt.h:1583
boolean agt_use_yumaworks_event_filter
load yumaworks-event-filter module
Definition: agt.h:1118
boolean agt_useurl_tftp
the libcurl variables
Definition: agt.h:1412
boolean agt_use_cli
enable yp-shell
Definition: agt.h:1049
boolean agt_startup_prune_ok
–startup-prune-ok parameter
Definition: agt.h:1446
boolean agt_save_config_system
flag to skip generation of the startup XML file when a save_config is done by the server.
Definition: agt.h:1177
log_debug_t agt_pthread_log_level
requested PTHREADS log level
Definition: agt.h:895
boolean agt_import_version_bestmatch
import-version-bestmatch parameter
Definition: agt.h:1544
uint32 agt_idle_timeout
–idle-timeout parameter
Definition: agt.h:1022
uint32 agt_eventlog_size
eventlog-size set to 0 to disable replay
Definition: agt.h:1013
boolean agt_log_event_drops
log event drops
Definition: agt.h:1141
boolean agt_usevalidate
–with-validate parameter
Definition: agt.h:1034
boolean agt_with_gnmi
this flag indicates that the gNMI support should be enabled
Definition: agt.h:1466
boolean agt_remove_schema_aug_leafs
this flag indicates the deprecated schema list leafs added from yumaworks-system should be removed.
Definition: agt.h:1621
boolean agt_with_maint_mode
allow maintenance mode to be used
Definition: agt.h:1492
agt_acmode_t agt_accesscontrol_enum
access control enum
Definition: agt.h:1073
boolean agt_use_yumaworks_cert_usermap
load yumaworks-cert-usermap module
Definition: agt.h:1611
boolean agt_log_acm_reads
log NACM read requests
Definition: agt.h:901
boolean agt_push_simop_patch_update
push-simop-patch-update parameter
Definition: agt.h:1568
const xmlChar * agt_defaultStyle
default-style for with-defaults
Definition: agt.h:985
boolean agt_usestartup
track –no-startup flag
Definition: agt.h:913
boolean agt_with_warnings
this field indicates if agt_record_warning will be allowed to set the error-severity field to warning
Definition: agt.h:1305
boolean agt_startup_skip_validation
startup-skip-validation
Definition: agt.h:1538
boolean agt_startup_error
–startup-error parameter: stop, continue enums only
Definition: agt.h:919
boolean agt_no_audit_log
this flag indicates the –no-audit-log CLI parameter
Definition: agt.h:1386
boolean agt_running_fallback
this flag indicates the –running-error parm is set to fallback
Definition: agt.h:1395
uint16 agt_callhome_retry_interval
this field specifies the number of seconds to wait after a connect attempt to the callhome server has...
Definition: agt.h:1346
uint16 agt_max_user_sessions
max USER sessions
Definition: agt.h:1082
uint16 agt_netconf_tls_port
–netconf-tls-port parameter
Definition: agt.h:1431
boolean agt_with_ietf_caps
flag to indicate the ietf-system-capabilities module should be loaded if WITH_YANG_PUSH is used and a...
Definition: agt.h:1750
const xmlChar * agt_server_id
assigned server ID NcxName (1 .
Definition: agt.h:1002
xmlChar * agt_socket_address
strdup of socket-address CLI parameter
Definition: agt.h:1800
int32 agt_indent
–indent parameter
Definition: agt.h:1028
boolean agt_sil_delete_children_first
–sil-delete-children-first CLI parameter
Definition: agt.h:1416
log_debug_t agt_audit_log_console_level
log console level
Definition: agt.h:1264
boolean agt_startup_create_ok
no CLI parameter!! set to TRUE! change in yp-system library or agt_profile.c
Definition: agt.h:1451
const xmlChar * agt_restconf_server_url
RESTCONF server URL.
Definition: agt.h:1103
ncx_agtstart_t agt_start
startup type enum (distinct or mirror)
Definition: agt.h:886
uint32 agt_push_simop_period
push-simop-period parameter
Definition: agt.h:1562
const xmlChar * agt_logfile
main logfile
Definition: agt.h:976
uint32 agt_sil_getbulk_max
Specifies the maximum number of getbulk entries to request from a GET2 callback.
Definition: agt.h:1226
uint32 agt_push_max_operational
push-max-operational parameter
Definition: agt.h:1559
boolean agt_lax_namespaces
lax namespace usage: will try to match element name
Definition: agt.h:1064
uint32 agt_hello_timeout
–hello-timeout parameter
Definition: agt.h:1019
boolean agt_crl_missing_ok
tls-crl-missing-ok parameter
Definition: agt.h:1532
uint16 agt_push_min_period
push-min-period parameter
Definition: agt.h:1550
boolean agt_wildcards
Allow wildcards in filters.
Definition: agt.h:958
log_debug_t agt_log_level
requested log-level
Definition: agt.h:889
xmlChar * agt_conf_dirspec
malloced string indicating the confdir pathspec in use
Definition: agt.h:1806
boolean agt_list_deleteall_ok
allow delete-all and remove-all operations on a list
Definition: agt.h:931
const xmlChar * agt_coap_address
Coap over DTLS address (not implemented)
Definition: agt.h:1097
boolean agt_tls_debug
–tls-debug CLI parameter this flag indicates that extra TLS debugging should be enabled in the server
Definition: agt.h:1627
boolean agt_with_yang_cbor
with-yang-cbor parameter
Definition: agt.h:1646
boolean agt_tls_dh_enabled
YPW-1994: enable TLS DH parameters needed for TLS 1.3 there is no CLI parameter for this flag; defaul...
Definition: agt.h:1660
ncx_msg_encoding_t agt_restconf_default_encoding
this enum indicates the –restconf-default-encoding CLI parameter
Definition: agt.h:1389
const xmlChar * agt_accesscontrol
access control model
Definition: agt.h:967
boolean agt_sil_missing_error
treat missing SIL libraries as an error, not warning
Definition: agt.h:1144
boolean agt_yumaworks_templates
d: true
Definition: agt.h:946
boolean agt_no_nvstore
this field indicates that the server should not load or save using the normal APIs during transaction...
Definition: agt.h:1329
boolean agt_use_restconf
enable RESTCONF protocol
Definition: agt.h:1046
ncx_msg_encoding_t agt_sm_config_encoding
this flag indicates what parser engine to use to parse the SM Config file.
Definition: agt.h:1602
boolean agt_return_empty_npcontainers
–return-empty-npcontainers CLI parameter
Definition: agt.h:1706
boolean agt_session_sync_mutex
session sync mutex flag
Definition: agt.h:898
boolean agt_notif_sequence_id
d: false
Definition: agt.h:942
for the list of subsystems requesting or in progress for a config load or replay
Definition: agt.h:828
dlq_hdr_t qhdr
queue header
Definition: agt.h:829
xmlChar * subsys_id
malloced subsystem name string
Definition: agt.h:830
struct to keep track of the dynamic external yp-system hooks library
Definition: agt.h:1942
agt_system_init1_fn_t init1_fn
init1 callback
Definition: agt.h:1956
status_t init1_status
init1 callback result
Definition: agt.h:1965
boolean cleanup_done
cleanup done flag
Definition: agt.h:1971
dlq_hdr_t qhdr
queue header
Definition: agt.h:1944
xmlChar * libspec
yp-system library spec that was loaded (bundle or module)
Definition: agt.h:1950
agt_system_init_profile_fn_t init_profile_fn
init profile callback
Definition: agt.h:1953
void * handle
handle from dlopen
Definition: agt.h:1947
status_t init2_status
init2 callback result
Definition: agt.h:1968
agt_system_cleanup_fn_t cleanup_fn
cleanup callback
Definition: agt.h:1962
agt_system_init2_fn_t init2_fn
init2 callback
Definition: agt.h:1959
server module info cache record for def_reg_add_mod
Definition: ncxtypes.h:1615
representation of one module or submodule during and after parsing
Definition: ncxtypes.h:1138
One YANG Patch Request.
Definition: yang_patch.h:155