yumapro  23.10T-7
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 - 2021, 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_GETBULK_MAX 10
301
303#define AGT_DEF_WITH_CONFIG_ID TRUE
304
306#define AGT_DEF_WITH_OCPATTERN FALSE
307
309#define AGT_DEF_NO_NVSTORE FALSE
310
312#define AGT_DEF_WITH_CALLHOME FALSE
313
315#define AGT_DEF_WITH_SCHEMA_MOUNT TRUE
316
318#define AGT_DEF_CALLHOME_RETRY_INT 60
319
321#define AGT_DEF_CALLHOME_RETRY_MAX 10
322
324#define AGT_DEF_CALLHOME_PORT NCX_DEF_SSH_CALLHOME
325
327#define AGT_DEF_CALLHOME_TLS_PORT NCX_DEF_TLS_CALLHOME
328
330#define AGT_DEF_CALLHOME_RESTCONF_TLS_PORT NCX_DEF_RESTCONF_TLS_CALLHOME
331
333#define AGT_YUMAWORKS_CALLHOME_MODULE (const xmlChar *)"yumaworks-callhome"
334
336#define AGT_YUMAWORKS_CALLHOME_REVISION (const xmlChar *)"2020-10-17"
337#define AGT_DEF_FILELOC_FHS FALSE
338
340#define AGT_DEF_NO_AUDIT_LOG FALSE
341
346#define AGT_DEF_CRYPT_HASH_PREFIX (const xmlChar *)"$6$"
347
349#define AGT_DEF_MIN_PASSWD_LEN 8
350
352#define AGT_DEF_HA_ENABLED FALSE
353
355#define AGT_DEF_HA_SIL_STANDBY FALSE
356
358#define AGT_DEF_HA_PORT 8088
359
361#define AGT_DEF_HA_STANDBY_MODE AGT_HA_MODE_HOT_STANDBY
362
364#define AGT_DEF_YPCOAP_PORT 5683
365
367#define AGT_DEF_YPCOAP_DTLS_PORT 5684
368
370#define AGT_DEF_YPCOAP_ADDRESS (const xmlChar *)"0.0.0.0"
371
373#define AGT_DEF_RESTCONF_DEFAULT_ENCODING NCX_MSG_ENCODING_JSON
374
376#define AGT_DEF_TLS_PORT 6513
377
379#define AGT_DEF_DB_LOCK_RETRY 500 // mSec
380
382#define AGT_DEF_DB_LOCK_TIMEOUT 20 // Sec
383
385#define AGT_DEF_WITH_YUMAWORKS_CONFIG_CHANGE FALSE
386
388#define AGT_DEF_WITH_YUMAWORKS_CALLHOME TRUE
389
391#define AGT_DEF_WITH_YUMAWORKS_EVENT_STREAM TRUE
392
394#define AGT_DEF_WITH_NMDA FALSE
395
397#define AGT_DEF_STARTUP_SKIP_VALIDATION FALSE
398
400#define AGT_DEF_RETURN_STATUS FALSE
401
405#define AGT_DEF_WAIT_DATASTORE_READY FALSE
406
408#define AGT_DEF_YANG_SID_MODE NCX_YANG_SID_MODE_SID_FILE
409
411#define AGT_DEF_WITH_YANG_CBOR FALSE
412
416#define AGT_DEF_SILCALL_DELETE_FIRST TRUE
417
422#define AGT_DEF_XPATH_DBLSLASH_OK FALSE
423
425#define AGT_DEF_SIL_CC_CALLBACK_ALL FALSE
426
427
429#define AGT_SELECT_TIMEOUT_SEC 0
430
433#define AGT_SELECT_TIMEOUT_USEC 10000
434
436#define AGT_USER_VAR (const xmlChar *)"user"
437
439#define AGT_URL_SCHEME_LIST (const xmlChar *)"file"
440
442#define AGT_URL_SCHEME_LIST_TFTP (const xmlChar *)"file,tftp"
443
445#define AGT_FILE_SCHEME (const xmlChar *)"file:///"
446
448#define AGT_TOASTER_MOD (const xmlChar *)"toaster"
449
451#define AGT_TEST_MOD (const xmlChar *)"test"
452
454#define AGT_SIL_SA (const xmlChar *)"sil-sa"
455
457#define AGT_DB_API (const xmlChar *)"db-api"
458
460#define AGT_YP_HA (const xmlChar *)"yp-ha"
461
463#define AGT_YP_GNMI (const xmlChar *)"yp-gnmi"
464
466#define AGT_YP_GRPC (const xmlChar *)"yp-grpc"
467
469#define AGT_YCONTROL_MOD (const xmlChar *)"yumaworks-ycontrol"
470
472#define AGT_DB_API_MOD (const xmlChar *)"yumaworks-db-api"
473
475#define AGT_SIL_SA_MOD (const xmlChar *)"yumaworks-sil-sa"
476
478#define AGT_PROFILE_MOD (const xmlChar *)"yumaworks-agt-profile"
479
481#define AGT_ACTION_MOD (const xmlChar *)"yang-attributes"
482
484#define AGT_YP_HA_MOD (const xmlChar *)"yumaworks-yp-ha"
485
487#define AGT_TEMPLATES_MOD (const xmlChar *)"yumaworks-templates"
488
490#define AGT_LOCK_MOD (const xmlChar *)"yumaworks-lock"
491
493#define AGT_YP_GNMI_MOD (const xmlChar *)"yumaworks-yp-gnmi"
494
496#define AGT_YP_GRPC_MOD (const xmlChar *)"yumaworks-yp-grpc"
497
499#define AGT_YP_SCHEMA_MOUNT_MOD (const xmlChar *)"yumaworks-schema-mount"
500
502#define AGT_YP_SM_YANGLIB_MOD (const xmlChar *)"yumaworks-sm-yanglib"
503
505#define AGT_DEF_SERVER_ID (const xmlChar *)"server1"
506
508#define AGT_WITHDEF_MOD (const xmlChar *)"ietf-netconf-with-defaults"
509
510
514#define AGT_TEST_FL_MIN_ELEMS bit0
515
517#define AGT_TEST_FL_MAX_ELEMS bit1
518
520#define AGT_TEST_FL_MANDATORY bit2
521
523#define AGT_TEST_FL_MUST bit3
524
526#define AGT_TEST_FL_UNIQUE bit4
527
529#define AGT_TEST_FL_XPATH_TYPE bit5
530
532#define AGT_TEST_FL_CHOICE bit6
533
535#define AGT_TEST_FL_WHEN bit7
536
538#define AGT_TEST_ALL_COMMIT_MASK (bit0|bit1|bit2|bit3|bit4|bit5|bit6)
539
541#define AGT_TEST_INSTANCE_MASK (bit0|bit1|bit2|bit4|bit6)
542
544#define AGT_CLI_NOSTARTUP (const xmlChar *)"no-startup"
545
547#define AGT_CLI_STARTUP (const xmlChar *)"startup"
548
550#define AGT_CLI_FACTORY_STARTUP (const xmlChar *)"factory-startup"
551
553#define AGT_CLI_STARTUP_FACTORY_FILE (const xmlChar *)"startup-factory-file"
554
556#define AGT_EVAL_REQUEST_LIMIT 500
557
561#define AGT_MAX_OWNER_ID 255
562
564#define AGT_WATCHER (const xmlChar *)"ypwatcher"
565
567#define AGT_DEF_WAT_INTERVAL 10
568
570#define AGT_DEF_SSHD_COMMAND (const xmlChar *)"/usr/sbin/sshd"
571
573#define AGT_DEF_SUBSYS_COMMAND \
574 (const xmlChar *)"/usr/sbin/netconf-subsystem-pro"
575
577#define AGT_DEF_SNMP_SUBAGENT_PRIO 127
578
579/* flags for the agt_auditlog_events mask from
580 * --audit-log-events CLI parameter.
581 * edit-candidate events are generated when an edit
582* to <candidate> is completed.
583 */
584#define AGT_FL_AUDIT_EDIT_CANDIDATE bit0
585
589#define AGT_FL_AUDIT_EDIT_RUNNING bit1
590
594#define AGT_FL_AUDIT_UPDATE_STARTUP bit2
595
597#define AGT_FL_AUDIT_CLIENT_SESSION bit3
598
600#define AGT_FL_AUDIT_CONTROL_SESSION bit4
601
603#define AGT_FL_AUDIT_NACM_WRITE_ERROR bit5
604
606#define AGT_FL_AUDIT_NACM_EXEC_ERROR bit6
607
609#define AGT_FL_AUDIT_RPC_SUMMARY bit7
610
612#define AGT_FL_AUDIT_EDIT_DATA bit8
613
615#define AGT_FL_AUDIT_RPC_ERROR bit9
616
618#define AGT_DEF_AUDIT_EVENTS AGT_FL_AUDIT_EDIT_RUNNING
619
621#define AGT_DEF_CRL_MISSING_OK false
622
624#define AGT_DEF_CRL_MODE AGT_CRL_MODE_OFF
625
627#define AGT_DEF_CVT_SUBTREE_FILTER false
628
632#define AGT_DEF_PUSH_MIN_PERIOD 100
633
635#define AGT_DEF_PUSH_MIN_DAMPENING 100
636
638#define AGT_DEF_PUSH_MAX_PERIODIC 16
639
641#define AGT_DEF_PUSH_MAX_OPERATIONAL 4
642
644#define AGT_DEF_PUSH_SIMOP_ENABLED true
645
647#define AGT_DEF_PUSH_SIMOP_PERIOD 500
648
650#define AGT_DEF_PUSH_SIMOP_PATCH_UPDATE true
651
653#define AGT_NON_NMDA_YANGLIB_REV (const xmlChar *)"2016-06-21"
654
656#define AGT_NMDA_YANGLIB_REV (const xmlChar *)"2019-01-04"
657
659#define AGT_SIL_SA_MODULE (const xmlChar *)"yumaworks-sil-sa"
660
664#define AGT_DEF_TLS_DEPRECATED_OK false
665
667#define AGT_DEF_TLS_DH_ENABLED true
668
670#define AGT_DEF_SAVE_CONFIG_TEMPNAME true
671
673#define AGT_SAVE_CONFIG_TEMPNAME_EXT (const xmlChar *)".temp"
674
679#define AGT_DEF_RETURN_EMPTY_NPCONTAINERS TRUE
680
686#define AGT_DEF_MAX_DBLSLASH_MATCHES 25
687
688/********************************************************************
689* *
690* T Y P E S *
691* *
692*********************************************************************/
693
695typedef enum agt_acmode_t_ {
702
703
711typedef enum agt_cbtyp_t_ {
717
718
720typedef enum agt_acm_model_t_ {
726
727
729typedef enum agt_transaction_model_t_ {
734
735
737typedef enum agt_commit_type_t_ {
742
743
745typedef enum agt_exit_mode_t_ {
752
753
755typedef enum agt_tx_type_t_ {
762
763
765typedef enum agt_ccparm_t_ {
772
773
775typedef enum agt_ha_role_t_ {
781
782
784typedef enum agt_ch_proto_t_ {
790
791
793typedef enum agt_crl_mode_t_ {
799
800
802typedef enum agt_hook_type_t_ {
808
809
813typedef struct agt_replay_subsys_t_ {
814 dlq_hdr_t qhdr;
815 xmlChar *subsys_id;
817
818
822typedef struct agt_maxuser_t_ {
823 dlq_hdr_t qhdr;
824 xmlChar *username;
827
828
829
830
864typedef struct agt_profile_t_ {
869
872
875
878
881
884
887
890
893
896
899
902
904 boolean agt_startup_error; /* T: stop, F: check fallback */
905
907 boolean agt_running_error; /* T: stop, F: check fallback */
908
911
914
917
920
923
926
935
938
941
944
947
950
952 const xmlChar *agt_accesscontrol;
953
955 const xmlChar *agt_conffile;
956
958 const xmlChar *agt_confdir;
959
961 const xmlChar *agt_logfile;
962
964 const xmlChar *agt_startup;
965
968
970 const xmlChar *agt_defaultStyle;
971
976 //const xmlChar *agt_superuser;
977
979 const xmlChar *agt_extern_libspec;
980
982 const xmlChar *agt_backup_dir;
983
987 const xmlChar *agt_server_id;
988
995 const xmlChar *agt_server_root;
996
999
1002
1005
1008
1011
1014
1017
1020
1022 boolean agt_useurl;
1023
1026
1029
1032
1035
1038
1041
1044
1047
1050
1053
1056
1059
1062
1065
1068
1071
1073 uint16 agt_ports[AGT_MAX_PORTS];
1074
1077
1080
1082 const xmlChar *agt_coap_address;
1083
1086
1089
1092
1095
1098
1101
1104
1107
1113
1116
1124
1127
1130
1133
1136
1139
1142
1149
1152
1155
1163
1174
1180
1187
1193
1198
1203
1212
1218
1221
1229
1232
1235
1238
1241
1244
1247
1250
1253
1256
1259
1262
1264 const xmlChar *agt_ha_server_key;
1265
1268
1269 // leaf-list ha-server not stored here; not sent to subsys
1270
1273
1278
1281
1282 /* TBD: add this data to subsystems in the near future */
1283
1288
1294
1300
1312
1316 boolean agt_with_yang11_hello; /* d: false */
1317
1324
1329
1335
1336 /* the callhome-server parameter is handled by agt_callhome */
1337
1342 const xmlChar *agt_sshd_path;
1343
1348 const xmlChar *agt_subsys_path;
1349
1354 const xmlChar *agt_sshd_config;
1355
1356
1363
1366
1369
1372
1374 boolean agt_startup_fallback; /* T: restart, F: continue */
1375
1377 boolean agt_running_fallback; /* T: restart, F: continue */
1378
1379
1380 /* the SNMP agent parameters */
1381
1384
1387
1392
1399
1402
1405
1408
1410 const xmlChar *agt_netconf_tls_key;
1411
1414
1417
1420
1423
1425 const xmlChar *agt_errmsg_lang;
1426
1429
1434
1437
1440
1443
1446
1451
1454
1457
1463
1469
1472
1475
1482
1485
1488
1491
1494
1497
1500
1503
1506
1509
1512
1515
1518
1521
1524
1527
1529 uint16 agt_push_min_period; // centiseconds
1530
1532 uint16 agt_push_min_dampening; // centiseconds
1533
1535 uint32 agt_push_max_periodic; // count
1536
1539
1542
1545
1548
1551
1554
1557
1562
1570 const xmlChar *agt_sm_config;
1571
1576
1577
1582
1585
1595
1601
1608 const xmlChar *agt_tls_cipherlist;
1609
1612
1617
1620
1623
1626
1629
1634
1635 /* YPW-2000
1636 * Enable use of a temp file while saving config files such
1637 * as startup-cfg.xml or backup-cfg.xml
1638 * The file is renamed to the provided filespec after
1639 * it is written; If no rename because crash then restart will
1640 * not find real xml file; No CLI to disable
1641 */
1642 boolean agt_save_config_tempname;
1643
1648
1654
1657
1665
1667 const xmlChar *agt_user_parm;
1668
1677
1680
1689
1696
1702
1703 /****** state variables; TBD: move out of profile ******/
1704
1707
1710
1713
1716
1719
1722
1725
1728
1730 dlq_hdr_t agt_savedevQ;
1731
1734
1737
1740
1743
1746 boolean agt_confdir_skipped;
1747
1750
1753
1754
1756
1757
1761/******************* External System Callbacks ***********************/
1762
1777 (agt_profile_t *profile);
1778
1779
1793 (boolean pre_cli);
1794
1795
1810 (boolean pre_load);
1811
1812
1818typedef void (*agt_system_cleanup_fn_t) (void);
1819
1820
1832 (ncx_display_mode_t encoding,
1833 const xmlChar *filespec);
1834
1835
1852 (ncx_display_mode_t *encoding,
1853 xmlChar **filespec);
1854
1855
1859typedef struct agt_syslib_cb_t_ {
1861 dlq_hdr_t qhdr;
1862
1864 void *handle;
1865
1867 xmlChar *libspec;
1868
1871
1874
1877
1880
1883
1886
1890
1891
1893typedef struct agt_edit_parms_cb_t_ {
1894
1895
1896 /**** state data used for the edit transaction ****/
1897 yang_patch_cb_t *pcb;
1898
1900
1901
1911typedef void (*agt_replay_fn_t) (boolean is_start);
1912
1913
1917/********************************************************************
1918* *
1919* F U N C T I O N S *
1920* *
1921*********************************************************************/
1922
1923
1947extern status_t
1948 agt_init1 (int argc,
1949 char *argv[],
1950 boolean *showver,
1951 help_mode_t *showhelpmode);
1952
1953
1967extern status_t
1968 agt_init1_ex (int argc,
1969 char *argv[],
1970 boolean factory_restart,
1971 boolean *showver,
1972 help_mode_t *showhelpmode);
1973
1974
1982extern status_t
1983 agt_init1_sil_sa (void);
1984
1985
2000extern status_t
2001 agt_init1_ypserver (int argc,
2002 char *argv[],
2003 boolean factory_restart,
2004 boolean *showver,
2005 help_mode_t *showhelpmode);
2006
2007
2020extern status_t
2021 agt_init2 (void);
2022
2023
2037extern status_t
2038 agt_init2_ex (boolean factory_restart);
2039
2040
2046extern status_t
2047 agt_init2_sil_sa (void);
2048
2049
2056extern void
2057 agt_cleanup (void);
2058
2059
2066extern void
2067 agt_cleanup_sil_sa (void);
2068
2069
2077extern agt_profile_t *
2078 agt_get_profile (void);
2079
2080
2088extern void
2090 int intnum);
2091
2092
2098extern boolean
2100
2101
2107extern ncx_shutdowntyp_t
2109
2110
2117extern int
2119
2120
2127extern const xmlChar *
2129
2130
2140extern boolean
2141 agt_advertise_module_needed (const xmlChar *modname);
2142
2143
2152extern void agt_request_replay (void);
2153
2154
2164extern void agt_request_replay_ex (void *cookie);
2165
2166
2172extern void * agt_get_replay_cookie (void);
2173
2174
2185extern void
2186 agt_request_replay_subsys (const xmlChar *subsys_id);
2187
2188
2194extern boolean agt_replay_requested (void);
2195
2196
2202extern void agt_start_replay (void);
2203
2204
2210extern void agt_finish_replay (void);
2211
2212
2221extern status_t
2223 agt_nvsave_fn_t store_fn);
2224
2225
2236extern status_t
2238 const xmlChar *filespec);
2239
2240
2249extern status_t
2250 agt_add_allowed_user (const xmlChar *username);
2251
2252
2259extern void
2260 agt_remove_allowed_user (const xmlChar *username);
2261
2262
2269extern status_t
2270 agt_check_allowed_user (const xmlChar *username);
2271
2272
2273
2282extern status_t
2283 agt_add_superuser (const xmlChar *username);
2284
2285
2292extern void
2293 agt_remove_superuser (const xmlChar *username);
2294
2295
2302extern status_t
2303 agt_check_superuser (const xmlChar *username);
2304
2305
2311extern void
2313
2314
2320extern const xmlChar *
2321 agt_get_server_id (void);
2322
2323
2330extern const xmlChar *
2331 agt_get_server_root (void);
2332
2333
2339extern const xmlChar *
2340 agt_get_server_key (void);
2341
2342
2348extern boolean
2349 agt_is_sil_sa (void);
2350
2351
2357extern dlq_hdr_t *
2358 agt_get_savedevQ (void);
2359
2360
2367extern boolean
2368 agt_replay_subsys_is_active (const xmlChar *subsys_id);
2369
2370
2377extern boolean
2379
2380
2387extern const xmlChar *
2389
2390
2397extern agt_ha_role_t
2398 agt_ha_role_enum (const xmlChar *ha_role);
2399
2400
2407extern boolean
2408 agt_use_notifications (void);
2409
2410
2418extern status_t
2420
2421
2430extern boolean
2431 agt_init2_done (void);
2432
2433
2440extern boolean
2441 agt_init2_load_done (void);
2442
2443
2455extern boolean
2457
2458
2464extern void
2466
2467
2477extern boolean
2479
2480
2487extern status_t
2489
2490
2497extern ncx_modcache_t *
2498 agt_find_modcache (const xmlChar *modname);
2499
2500
2506extern status_t
2507 agt_run_extloop (void);
2508
2509
2517extern status_t
2518 agt_enter_maintenance_mode (boolean read_ok,
2519 boolean operation_ok);
2520
2521
2527extern status_t
2529
2530
2536extern boolean
2538
2539
2547extern boolean
2549
2550
2558extern boolean
2560
2561
2567extern boolean
2569
2570
2576extern void
2577 agt_set_eventlog_size (uint32 eventlog_size);
2578
2579
2585extern void
2586 agt_set_max_burst (uint32 max_burst);
2587
2588
2594extern void
2595 agt_set_max_getbulk (uint32 max_getbulk);
2596
2597
2605extern agt_not_msg_t *
2606 agt_make_term_msg (const xmlChar *msg,
2607 status_t *res);
2608
2609
2615extern status_t
2617
2618
2624extern boolean
2625 agt_use_nmda (void);
2626
2627
2634extern boolean
2636
2637
2643extern boolean
2644 agt_use_yang_cbor (void);
2645
2646
2652extern const char *
2654
2655
2661extern const xmlChar *
2662 agt_get_user_parm (void);
2663
2664
2671extern status_t
2672 agt_add_maxuser_parm (const xmlChar *cliparm);
2673
2674
2675
2686 agt_get_maxuser_parm (const xmlChar *username,
2687 uint16 *retval);
2688
2689
2693#ifdef __cplusplus
2694} /* end extern 'C' */
2695#endif
2696
2697#endif /* _H_agt */
NETCONF Notifications DM module support.
agt_exit_mode_t
exit reasons for YControl IO loop
Definition: agt.h:745
status_t(* agt_system_init2_fn_t)(boolean pre_load)
system init2 callback
Definition: agt.h:1810
agt_commit_type_t
NETCONF commit types.
Definition: agt.h:737
status_t(* agt_nvload_fn_t)(ncx_display_mode_t *encoding, xmlChar **filespec)
nvload callback
Definition: agt.h:1852
void(* agt_system_cleanup_fn_t)(void)
system cleanup callback
Definition: agt.h:1818
agt_hook_type_t
Hook types enumeration to specify Hook type.
Definition: agt.h:802
void(* agt_replay_fn_t)(boolean is_start)
replay callback (agt_replay_fn_t)
Definition: agt.h:1911
agt_transaction_model_t
not used yet in YANG-API or NETCONF!
Definition: agt.h:729
agt_ccparm_t
confirmed-commit parms
Definition: agt.h:765
status_t(* agt_system_init1_fn_t)(boolean pre_cli)
system init1 callback
Definition: agt.h:1793
agt_ch_proto_t
server callhome protocol
Definition: agt.h:784
status_t(* agt_nvsave_fn_t)(ncx_display_mode_t encoding, const xmlChar *filespec)
brief nvsave callback
Definition: agt.h:1832
agt_acmode_t
matches access-control enumeration in netconfd.yang
Definition: agt.h:695
agt_crl_mode_t
server TLS CRL mode
Definition: agt.h:793
agt_acm_model_t
select the YANG module for the access control model
Definition: agt.h:720
agt_tx_type_t
YControl transaction type.
Definition: agt.h:755
agt_ha_role_t
server HA mode mode
Definition: agt.h:775
#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:711
void(* agt_system_init_profile_fn_t)(agt_profile_t *profile)
system init server profile callback
Definition: agt.h:1777
@ AGT_EXIT_MODE_NONE
this value is used
Definition: agt.h:746
@ AGT_EXIT_MODE_ERROR
exit loop with error
Definition: agt.h:748
@ AGT_EXIT_MODE_TIMEOUT
exit loop with timeout
Definition: agt.h:749
@ AGT_EXIT_MODE_OK
exit loop with OK
Definition: agt.h:747
@ AGT_EXIT_MODE_DROPPED
exit loop with session dropped
Definition: agt.h:750
@ AGT_COMMIT_TYPE_NORMAL
normal client operation
Definition: agt.h:739
@ AGT_COMMIT_TYPE_REPLAY
internal replay commit
Definition: agt.h:740
@ AGT_COMMIT_TYPE_NONE
not set
Definition: agt.h:738
@ AGT_HOOK_TYPE_SETHOOK
Set-Hook.
Definition: agt.h:804
@ AGT_HOOK_TYPE_NONE
not set
Definition: agt.h:803
@ AGT_HOOK_TYPE_TRANSACTION
Transaction Hook.
Definition: agt.h:805
@ AGT_HOOK_TYPE_POST_SETHOOK
Post Set-Hook.
Definition: agt.h:806
@ AGT_TM_PRIVATE
private transactions
Definition: agt.h:732
@ AGT_TM_SHARED
shared transactions (only value supported)
Definition: agt.h:731
@ AGT_TM_NONE
this value is used
Definition: agt.h:730
@ AGT_CCPARM_CONFIRMED
confirmed
Definition: agt.h:767
@ AGT_CCPARM_NONE
not set
Definition: agt.h:766
@ AGT_CCPARM_PERSIST
persist
Definition: agt.h:769
@ AGT_CCPARM_CONFIRM_TIMEOUT
confirm-timeout
Definition: agt.h:768
@ AGT_CCPARM_PERSIST_ID
persist-id
Definition: agt.h:770
@ AGT_CH_PROTO_NONE
not set
Definition: agt.h:785
@ AGT_CH_PROTO_RESTCONF_TLS
restconf-over-ssh callhome
Definition: agt.h:788
@ AGT_CH_PROTO_NETCONF_SSH
netconf-over-ssh callhome
Definition: agt.h:786
@ AGT_CH_PROTO_NETCONF_TLS
netconf-over-tls callhome
Definition: agt.h:787
@ AGT_ACMOD_PERMISSIVE
permissive mode, read + exec allowed
Definition: agt.h:698
@ AGT_ACMOD_OFF
NACM completely off.
Definition: agt.h:700
@ AGT_ACMOD_DISABLED
almost all access control turned off
Definition: agt.h:699
@ AGT_ACMOD_NONE
not set
Definition: agt.h:696
@ AGT_ACMOD_ENFORCING
full enforcement
Definition: agt.h:697
@ AGT_CRL_MODE_CA
CRL check client and CA certs.
Definition: agt.h:797
@ AGT_CRL_MODE_CLIENT
CRL check client cert.
Definition: agt.h:796
@ AGT_CRL_MODE_NONE
not set
Definition: agt.h:794
@ AGT_CRL_MODE_OFF
CRL check off.
Definition: agt.h:795
@ AGT_ACM_MODEL_IETF_NACM
IETF NACM (default)
Definition: agt.h:722
@ AGT_ACM_MODEL_YUMA_NACM
YUMA NACM (obsolete, not supported)
Definition: agt.h:723
@ AGT_ACM_MODEL_NONE
not set
Definition: agt.h:721
@ AGT_ACM_MODEL_EXTERNAL
external ACM via yp_system library
Definition: agt.h:724
@ AGT_TX_TYPE_NONE
not set
Definition: agt.h:756
@ AGT_TX_TYPE_GET
GET2 transaction.
Definition: agt.h:757
@ AGT_TX_TYPE_HOOK
hook callback for edit
Definition: agt.h:760
@ AGT_TX_TYPE_RPC
DB-API RPC transaction.
Definition: agt.h:759
@ AGT_TX_TYPE_EDIT
EDIT1 or EDIT2 transaction.
Definition: agt.h:758
@ AGT_HA_ROLE_STANDBY
HA standby role.
Definition: agt.h:778
@ AGT_HA_ROLE_NONE
not set
Definition: agt.h:776
@ AGT_HA_ROLE_ACTIVE
HA active role.
Definition: agt.h:779
@ AGT_HA_ROLE_NOT_SET
HA role not set.
Definition: agt.h:777
@ AGT_CB_APPLY
P2: write operation apply.
Definition: agt.h:713
@ AGT_CB_VALIDATE
P1: write operation validate.
Definition: agt.h:712
@ AGT_CB_ROLLBACK
P3-neg: write operation rollback.
Definition: agt.h:715
@ AGT_CB_COMMIT
P3-pos: write operation commit.
Definition: agt.h:714
agt_not_msg_t * agt_make_term_msg(const xmlChar *msg, status_t *res)
Create a <term-msg> notification.
Definition: agt.c:6175
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:5395
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:5185
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:3831
void agt_cleanup(void)
Cleanup the Server Library.
Definition: agt.c:4723
const xmlChar * agt_get_user_parm(void)
Get the user-parm string (if any)
Definition: agt.c:6326
const xmlChar * agt_get_server_root(void)
Get the server-root string.
Definition: agt.c:5499
status_t agt_add_maxuser_parm(const xmlChar *cliparm)
Add a maxuser parameter value.
Definition: agt.c:6340
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:5000
void agt_cleanup_sil_sa(void)
Cleanup the Server Library for SIL-SA usage.
Definition: agt.c:4739
void * agt_get_replay_cookie(void)
Get the current replay cookie.
Definition: agt.c:5060
void agt_set_factory_restart(void)
Set the flag so the server will restart with the factory config.
Definition: agt.c:5863
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:6106
const char * agt_get_aflocal_sockname(void)
Get the AFLOCAL socket name to use for <ncx-connect>
Definition: agt.c:6311
status_t agt_init_term_msg_module(void)
Init the term-msg module and object backptr.
Definition: agt.c:6222
status_t agt_init2(void)
Initialize the Server Library (phase 2 init)
Definition: agt.c:3863
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:5225
boolean agt_use_nmda(void)
Check if NMDA is enabled.
Definition: agt.c:6256
int agt_shutdown_term_signal(void)
Get the shutdown termination signal if any.
Definition: agt.c:4885
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:5589
status_t agt_get_maxuser_parm(const xmlChar *username, uint16 *retval)
Get the maxuser max-sessions value for a specified user.
Definition: agt.c:6437
boolean agt_maintenance_mode_operation_ok(void)
Return true if in maintenance mode operations OK;.
Definition: agt.c:6043
const xmlChar * agt_ha_role_str(agt_ha_role_t ha_role)
Get the string for the specified HA role enumeration.
Definition: agt.c:5607
status_t agt_check_superuser(const xmlChar *username)
Check a username in the superuser Q.
Definition: agt.c:5436
boolean agt_is_sil_sa(void)
Check if server running in SIL-SA mode.
Definition: agt.c:5532
status_t agt_add_modcache(ncx_modcache_t *mc)
Add a module to the modcache queue and hash table.
Definition: agt.c:5905
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:5353
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:5145
const xmlChar * agt_cbtype_name(agt_cbtyp_t cbtyp)
Get the string for the server callback phase.
Definition: agt.c:4904
agt_profile_t * agt_get_profile(void)
Get the server profile struct.
Definition: agt.c:4757
boolean agt_waiting_datastore_ready(void)
Check if client sessions are blocked until the datastore is ready.
Definition: agt.c:6273
void agt_request_replay(void)
Request replay of the running config to SIL modules because SIL hardware has reset somehow.
Definition: agt.c:4958
const xmlChar * agt_get_server_id(void)
Get the server-id string.
Definition: agt.c:5482
boolean agt_maintenance_mode_session_ok(void)
Return true if in maintenance mode new sessions OK;.
Definition: agt.c:6056
status_t agt_init2_ex(boolean factory_restart)
Initialize the Server Library (phase 2 init - extended)
Definition: agt.c:3886
boolean agt_init2_load_done(void)
Check if the init2 phase is complete and all modules loaded.
Definition: agt.c:5810
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:4976
boolean agt_use_yang_cbor(void)
Check if YANG CBOR is enabled.
Definition: agt.c:6294
void agt_request_shutdown(ncx_shutdowntyp_t mode, int intnum)
Request some sort of server shutdown.
Definition: agt.c:4775
status_t agt_init2_sil_sa(void)
Initialize the Server Library for SIL-SA.
Definition: agt.c:4685
void agt_start_replay(void)
Start replay of the running config to SIL modules.
Definition: agt.c:5073
status_t agt_check_allowed_user(const xmlChar *username)
Check a username in the allowed-user Q.
Definition: agt.c:5297
status_t agt_exit_maintenance_mode(void)
Exit the server from mainenance mode to unblock client activity.
Definition: agt.c:6144
status_t agt_init1_sil_sa(void)
Initialize the Server Library: stage 1: CLI and profile.
Definition: agt.c:3788
boolean agt_use_notifications(void)
Check if notifications currently enabled.
Definition: agt.c:5668
status_t agt_run_extloop(void)
Run the agt_ncxserver in external loop mode.
Definition: agt.c:5966
boolean agt_in_factory_restart(void)
Check if a factory restort is in progress.
Definition: agt.c:5885
const xmlChar * agt_get_server_key(void)
Get the ha-server-key string.
Definition: agt.c:5516
boolean agt_maintenance_mode_read_ok(void)
Return true if in maintenance mode reads OK;.
Definition: agt.c:6028
boolean agt_in_maintenance_mode(void)
Return true if in mainenance mode now.
Definition: agt.c:6013
ncx_modcache_t * agt_find_modcache(const xmlChar *modname)
Find a module to the modcache queue and hash table.
Definition: agt.c:5938
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:3761
boolean agt_shutdown_requested(void)
Check if some sort of server shutdown is in progress.
Definition: agt.c:4845
boolean agt_replay_requested(void)
Check if config replay is pending.
Definition: agt.c:5043
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:5698
void agt_set_max_burst(uint32 max_burst)
Set the max-burst parameter.
Definition: agt.c:6071
ncx_shutdowntyp_t agt_shutdown_mode_requested(void)
Check what shutdown mode was requested.
Definition: agt.c:4868
dlq_hdr_t * agt_get_savedevQ(void)
Get the agt_savedevQ pointer.
Definition: agt.c:5546
boolean agt_advertise_module_needed(const xmlChar *modname)
Check if the module should be advertised or not.
Definition: agt.c:4934
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:5258
boolean agt_replay_subsys_is_active(const xmlChar *subsys_id)
Find a subsys replay request struct in the activeQ.
Definition: agt.c:5563
void agt_register_replay_callback(agt_replay_fn_t cbfn)
Register a callback function for a replay config event.
Definition: agt.c:5465
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:3724
void agt_set_max_getbulk(uint32 max_getbulk)
Set the max-getbulk parameter.
Definition: agt.c:6086
void agt_set_eventlog_size(uint32 eventlog_size)
Set the eventlog-size parameter.
Definition: agt.c:5998
boolean agt_init2_done(void)
Check if the init2 phase is complete.
Definition: agt.c:5792
void agt_finish_replay(void)
Finish replay of the running config to SIL modules.
Definition: agt.c:5106
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:5836
agt_ha_role_t agt_ha_role_enum(const xmlChar *ha_role)
Get the enum for the specified HA role string.
Definition: agt.c:5637
log_debug_t
The debug level enumerations used in util/log.c.
Definition: log.h:343
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:1772
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:1602
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:1274
ncx_shutdowntyp_t
enumeration of the different program shutdown modes
Definition: ncxtypes.h:536
uint8 obj_testflags_t
object test flags
Definition: obj.h:1202
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:1893
for the list of username / max-session values to support the –max-per-user-sessions CLI parameter
Definition: agt.h:822
xmlChar * username
malloced user name string
Definition: agt.h:824
dlq_hdr_t qhdr
queue header
Definition: agt.h:823
uint16 max_sessions
max session count 0 .
Definition: agt.h:825
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:864
const xmlChar * agt_backup_dir
backup dir location
Definition: agt.h:982
boolean agt_with_yp_coap_dtls
enable YP-CoAP DTLS sessions (not supported)
Definition: agt.h:1243
boolean agt_allow_tcp_socket
allow a TCP socket instead of an AF_LOCAL socket for connections
Definition: agt.h:1138
const xmlChar * agt_startup
startup filespec
Definition: agt.h:964
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:1192
int32 agt_message_indent
–message-indent parameter
Definition: agt.h:1016
boolean agt_use_ccommit
enable confirmed-comiit
Definition: agt.h:1025
boolean agt_use_tcp_socket
use a TCP socket instead of an AF_LOCAL socket for connections
Definition: agt.h:1141
boolean agt_with_yumaworks_config_change
with-yumaworks-config-change
Definition: agt.h:1502
boolean agt_useurl_ftp
–with-url-ftp
Definition: agt.h:1395
boolean agt_with_yp_shell
enable yp-shell sessions
Definition: agt.h:1237
ncx_name_match_t agt_match_names
match names behavior; needs to be EXACT for YANG
Definition: agt.h:946
boolean agt_tls_deprecated_ok
YPW-1984: TLS Deprecated OK.
Definition: agt.h:1628
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:1481
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:1664
boolean agt_use_yuma_if
load yuma-if module
Definition: agt.h:1097
boolean agt_with_yp_coap
enable YP-CoAP sessions (not supported)
Definition: agt.h:1240
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:1202
uint16 agt_socket_port
listen on this TCP port if TCP socket is enabled
Definition: agt.h:1742
boolean agt_return_status
return exit code or zero
Definition: agt.h:1553
boolean agt_use_yuma_arp
load yuma-arp module
Definition: agt.h:1094
uint32 agt_linesize
line size for logging
Definition: agt.h:1010
boolean agt_useurl
–with-url parameter
Definition: agt.h:1022
ncx_yang_sid_mode_t agt_yang_sid_mode
yang-sid-mode parameter
Definition: agt.h:1622
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:1468
boolean agt_wait_datastore_ready
wait-datastore-ready parameter
Definition: agt.h:1550
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:1123
const xmlChar * agt_netconf_tls_certificate
–netconf-tls-cerificate parameter
Definition: agt.h:1407
boolean agt_fileloc_fhs
this flag enables FHS file locations for server data files
Definition: agt.h:1365
uint16 agt_max_sessions
max sessions (total)
Definition: agt.h:1061
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:979
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:1316
boolean agt_load_rootcheck_errors
server load-config root-check had errors flag
Definition: agt.h:1715
uint8 agt_withdef_enabled
bitmask of the with-defaults enumerations that should be enabled in the server
Definition: agt.h:1173
uint16 agt_snmp_subagent_priority
identify the SNMP subagent priority, what priority will be used for OID callbacks registration
Definition: agt.h:1391
boolean agt_save_owners
flag to save owner strings in the database
Definition: agt.h:1151
boolean agt_with_yumaworks_callhome
with-yumaworks-callhome
Definition: agt.h:1499
const xmlChar * agt_yangapi_server_url
YANG-API server URL (obsolete)
Definition: agt.h:1085
boolean agt_restconf_strict_headers
If 'true' the server will only accept requests with normative Accept header entries specified in the ...
Definition: agt.h:1197
const xmlChar * agt_conffile
config file: default: /etc/yumapro/netconfd-pro.conf
Definition: agt.h:955
const xmlChar * agt_user_parm
back-pointer to the user-parm string if any
Definition: agt.h:1667
boolean agt_load_validate_errors
server load-config had errors flag
Definition: agt.h:1712
boolean agt_with_yang_patch_running
with-yang-patch-running parameter
Definition: agt.h:1526
boolean agt_with_config_id
this field indicates if the :config-id capability is enabled or not.
Definition: agt.h:1299
agt_crl_mode_t agt_crl_mode
tls-crl-mode parameter
Definition: agt.h:1508
boolean agt_use_local_transport
use local transport flag
Definition: agt.h:1040
boolean agt_ypserver_mode
this flag indicates the server is rnning as yp-controller and not netconfd-pro
Definition: agt.h:1450
boolean agt_sil_invoke_for_defaults
–sil-invoke-for-defaults parameter
Definition: agt.h:1442
boolean agt_create_empty_npcontainers_ro
special flag for create NP containers if read-only child nodes
Definition: agt.h:1280
boolean agt_use_rollback_on_error
Use rollback-on-error.
Definition: agt.h:1112
boolean agt_xmlorder
use strict XML order flag
Definition: agt.h:913
const xmlChar * agt_errmsg_lang
–errmsg-lang parameter
Definition: agt.h:1425
boolean agt_create_empty_npcontainers
LAST DATA SENT TO SUBSYSTEMS create empty NP containers d: true.
Definition: agt.h:1277
log_debug_t agt_audit_log_level
audit log level
Definition: agt.h:1252
boolean agt_system_sorted
enable system-sorted (obsolete: sorted by val_child algorithms)
Definition: agt.h:1046
ncx_withdefaults_t agt_defaultStyleEnum
default with-defaults enum
Definition: agt.h:1055
uint32 agt_watcher_interval
Specifies the number of seconds the YPWatcher process will sleep before checking if the netconfd-pro ...
Definition: agt.h:1179
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:1293
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:1148
obj_testflags_t agt_rootflags
root commit descendant test flags
Definition: agt.h:1706
uint16 agt_max_cli_sessions
max CLI sessions
Definition: agt.h:1064
boolean agt_delete_empty_npcontainers
delete empty config=true NP containers: d: false
Definition: agt.h:925
boolean agt_push_simop_enabled
push-simop-enabled parameter
Definition: agt.h:1544
boolean agt_validate_all
validate all flag
Definition: agt.h:892
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:1701
boolean agt_with_nmda
with-nmda
Definition: agt.h:1514
boolean agt_load_def_startup_factory
server load-config factory flag
Definition: agt.h:1727
boolean agt_use_yuma_proc
load yuma-proc module
Definition: agt.h:1091
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:1334
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:1462
boolean agt_simple_json_names
use simple JSON names instead of YANG JSON names
Definition: agt.h:1272
uint16 agt_max_lock_hold_time
YPW-2027 Enforce a max lock hold time if non-zero value.
Definition: agt.h:1647
boolean agt_with_netconf_tls
enable NETCONF over TLS sessions
Definition: agt.h:1246
const xmlChar * agt_netconf_tls_address
–netconf-tls-address parameter
Definition: agt.h:1404
const xmlChar * agt_server_root
assigned server root ID
Definition: agt.h:995
const xmlChar * agt_tls_cipherlist
–tls-cipherlist CLI parameter Use with extreme caution! Advanced libopenssl usage not supported passe...
Definition: agt.h:1608
boolean agt_use_ycontrol
enable YControl protocol
Definition: agt.h:1115
boolean agt_has_startup
has startup flag for –with-startup
Definition: agt.h:895
boolean agt_ha_sil_standby
call SIL code in standby mode
Definition: agt.h:1258
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:1217
boolean agt_with_ocpattern
this flag enables/disables the special OpenConfig usage of the YANG pattern-statement.
Definition: agt.h:1362
boolean agt_use_rollback_failed_backup
save running config for a commit, in case the rollback fails
Definition: agt.h:1135
boolean agt_use_yuma_system
load yuma-system module
Definition: agt.h:1106
boolean agt_audit_log_candidate
If true, then transactions to the candidate datastore will be recorded in the audit log.
Definition: agt.h:1186
uint16 agt_push_min_dampening
push-min-dampening parameter
Definition: agt.h:1532
boolean agt_trim_whitespace
–trim-whitespace CLI parameter
Definition: agt.h:1401
uint32 agt_maxburst
–maxburst parameter
Definition: agt.h:1001
uint32 agt_push_max_periodic
push-max-periodic parameter
Definition: agt.h:1535
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:1695
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:1323
boolean agt_yumaworks_ids
use the yumaworks-ids module
Definition: agt.h:1490
boolean agt_stream_output
stream message output: d:true; no CLI support yet
Definition: agt.h:922
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:1688
const xmlChar * agt_ha_initial_active
active server to use if standby
Definition: agt.h:1267
const xmlChar * agt_cert_default_user
–cert-default-user parameter
Definition: agt.h:1422
boolean agt_ha_enabled
enable YP-HA
Definition: agt.h:1255
agt_ha_role_t agt_ha_role
saved HA role
Definition: agt.h:1749
boolean agt_yuma_time_filter
use the yuma-time-filter module
Definition: agt.h:1484
const xmlChar * agt_sshd_config
set the sshd_config file to use for sshd exectuable for callhome default is $HOME/....
Definition: agt.h:1354
boolean agt_with_sm
this flag indicates that the Schema Mount support should be enabled
Definition: agt.h:1561
boolean agt_use_netconf
enable NETCONF protocol
Definition: agt.h:1037
boolean agt_callhome_reconnect
CLI parameter –callhome-reconnect.
Definition: agt.h:1474
uint16 agt_ha_port
port number is default 8088
Definition: agt.h:1261
boolean agt_with_yumaworks_lock
enable the <lock-all> and <unlock-all> operations
Definition: agt.h:1656
boolean agt_use_notifications
enable notifications
Definition: agt.h:1043
boolean agt_yuma_system_notifs
d: false
Definition: agt.h:928
boolean agt_with_netconf
If 'true' then the corresponding protocol will be enabled.
Definition: agt.h:1228
agt_acm_model_t agt_acm_model
NACM or external ACM model.
Definition: agt.h:1052
ncx_agttarg_t agt_targ
BEGIN DATA SENT TO SUBSYSTEMS; target type (candidate or running)
Definition: agt.h:868
boolean agt_xpath_dblslash_ok
YPW-1981: XPath Dblslash OK.
Definition: agt.h:1625
boolean agt_use_db_lock
db-lock used only if WITH_YCONTROL=1 and CLI set
Definition: agt.h:1493
boolean agt_insecure_ok
–insecure-ok parameter
Definition: agt.h:1419
const xmlChar * agt_subsys_path
set the netconf subsystem for sshd exectuable path for callhome default is /usr/sbin/netconf-subsyste...
Definition: agt.h:1348
boolean agt_support_save
d: true (needs WITH_SUPPORT_SAVE=1)
Definition: agt.h:934
boolean agt_defer_load
saved defer load config flag
Definition: agt.h:1752
boolean agt_running_error
–running-error parameter: stop, continue enums only
Definition: agt.h:907
agt_transaction_model_t agt_transaction_model
TBD private transaction model.
Definition: agt.h:949
uint16 agt_coap_dtls_port
Coap over DTLS port (not implemented)
Definition: agt.h:1079
boolean agt_cvt_subtree_filter
convert-subtree-filterparameter
Definition: agt.h:1520
const xmlChar * agt_netconf_tls_key
–netconf-tls-key parameter
Definition: agt.h:1410
boolean agt_with_yang_api
enable YANG-API sessions (obsolete)
Definition: agt.h:1234
const xmlChar * agt_sm_config
set the Schema Mount configuration file.
Definition: agt.h:1570
boolean agt_startup_fallback
this flag indicates the –startup-error parm is set to fallback
Definition: agt.h:1374
boolean agt_term_msg
d: true for <term-msg> notification
Definition: agt.h:937
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:1342
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:1653
boolean agt_yumaworks_getbulk
use the yumaworks-getbulk module
Definition: agt.h:1487
boolean agt_yumaworks_system
d: true
Definition: agt.h:930
boolean agt_json_leaf_list_1line
flag to print JSON leaf-list value on 1 line
Definition: agt.h:1154
boolean agt_with_snmp
this flag indicates that the snmp agent should be enabled
Definition: agt.h:1383
boolean agt_logappend
–log-append parameter
Definition: agt.h:910
boolean agt_load_done
server load-config done flag
Definition: agt.h:1709
boolean agt_load_top_rootcheck_errors
server load-config had top root-check errors flag
Definition: agt.h:1718
xmlChar * agt_startup_txid_file
cached location of startup transaction ID file
Definition: agt.h:1736
boolean agt_with_yumaworks_event_stream
with-yumaworks-event-stream
Definition: agt.h:1505
dlq_hdr_t agt_savedevQ
Q of malloced ncx_save_deviations_t.
Definition: agt.h:1730
boolean agt_sil_autodelete
enable SIL/SIL-SA callback for auto-deletions
Definition: agt.h:1676
ncx_snmp_agt_role_t agt_snmp_agent_role
identify the SNMP agent native mode master|subagent
Definition: agt.h:1386
log_debug_t agt_syslog_log_level
requested SYSLOG log-level
Definition: agt.h:877
boolean agt_factorystartup
track –factory-startup flag
Definition: agt.h:901
boolean agt_log_acm_writes
log NACM write requests
Definition: agt.h:889
boolean agt_use_yangapi
enable YANG-API protocol (obsolete: ignored)
Definition: agt.h:1028
const xmlChar * agt_startup_factory_file
factory startup filespec
Definition: agt.h:967
const xmlChar * agt_netconf_tls_trust_store
–netconf-tls-trust-store parameter
Definition: agt.h:1416
boolean agt_leaflist_deleteall_ok
allow delete-all and remove-all operations on a leaf-list
Definition: agt.h:919
uint16 agt_coap_port
the CoAP port number used only if WITH_COAP and agt_use_coap set
Definition: agt.h:1076
const xmlChar * agt_ha_server_key
server-key to keep HA pools separate
Definition: agt.h:1264
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:1581
boolean agt_with_canonical
–with-canonical parameter
Definition: agt.h:1436
dlq_hdr_t agt_commit_testQ
Q of malloced agt_commit_test_t.
Definition: agt.h:1733
const xmlChar * agt_confdir
config dir: default: /etc/yumapro/netconfd-pro.d
Definition: agt.h:958
boolean agt_with_restconf
enable RESTCONF sessions
Definition: agt.h:1231
boolean agt_silcall_delete_first
YPW-1975: SILCALL delete first.
Definition: agt.h:1611
uint16 agt_subsys_timeout
subsystem timeout in seconds
Definition: agt.h:1070
boolean agt_with_modtags
–with-modtags parameter
Definition: agt.h:1439
boolean agt_highres_event_time
–highres-event-time parameter Affects the <eventTime> leaf in all notifications
Definition: agt.h:1616
boolean agt_ietf_system_notifs
d: true
Definition: agt.h:929
uint32 agt_audit_log_events
–audit-log-events to control audit log content
Definition: agt.h:1456
boolean agt_sil_skip_keys
do not invoke the SIL callback for a key leaf
Definition: agt.h:1132
boolean agt_use_yuma_mysession
load yuma-mysession module
Definition: agt.h:1100
boolean agt_load_apply_errors
server load-config had apply phase errors flag
Definition: agt.h:1721
boolean agt_sil_prio_reverse_for_deletes
–sil-prio-reverse-for-deletes parameter
Definition: agt.h:1453
boolean agt_load_factory_fallback
server load-config allowed to use factory-fallback flag
Definition: agt.h:1724
int32 agt_max_strlen
max-strlen parameter
Definition: agt.h:1496
boolean agt_alt_names
Yuma REST-API urlselect extra parameters.
Definition: agt.h:940
uint8 agt_min_passwd_len
minimum password length when setting crypt-hash variables
Definition: agt.h:1220
boolean agt_with_grpc
this flag indicates that the gRPC support should be enabled
Definition: agt.h:1556
boolean agt_use_yumaworks_event_filter
load yumaworks-event-filter module
Definition: agt.h:1103
boolean agt_useurl_tftp
the libcurl variables
Definition: agt.h:1394
boolean agt_use_cli
enable yp-shell
Definition: agt.h:1034
boolean agt_startup_prune_ok
–startup-prune-ok parameter
Definition: agt.h:1428
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:1162
log_debug_t agt_pthread_log_level
requested PTHREADS log level
Definition: agt.h:880
boolean agt_import_version_bestmatch
import-version-bestmatch parameter
Definition: agt.h:1523
uint32 agt_idle_timeout
–idle-timeout parameter
Definition: agt.h:1007
uint32 agt_eventlog_size
eventlog-size set to 0 to disable replay
Definition: agt.h:998
boolean agt_log_event_drops
log event drops
Definition: agt.h:1126
boolean agt_usevalidate
–with-validate parameter
Definition: agt.h:1019
boolean agt_with_gnmi
this flag indicates that the gNMI support should be enabled
Definition: agt.h:1445
boolean agt_remove_schema_aug_leafs
this flag indicates the deprecated schema list leafs added from yumaworks-system should be removed.
Definition: agt.h:1594
boolean agt_with_maint_mode
allow maintenance mode to be used
Definition: agt.h:1471
agt_acmode_t agt_accesscontrol_enum
access control enum
Definition: agt.h:1058
boolean agt_use_yumaworks_cert_usermap
load yumaworks-cert-usermap module
Definition: agt.h:1584
boolean agt_log_acm_reads
log NACM read requests
Definition: agt.h:886
boolean agt_push_simop_patch_update
push-simop-patch-update parameter
Definition: agt.h:1547
const xmlChar * agt_defaultStyle
default-style for with-defaults
Definition: agt.h:970
boolean agt_usestartup
track –no-startup flag
Definition: agt.h:898
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:1287
boolean agt_startup_skip_validation
startup-skip-validation
Definition: agt.h:1517
boolean agt_startup_error
–startup-error parameter: stop, continue enums only
Definition: agt.h:904
boolean agt_no_audit_log
this flag indicates the –no-audit-log CLI parameter
Definition: agt.h:1368
boolean agt_running_fallback
this flag indicates the –running-error parm is set to fallback
Definition: agt.h:1377
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:1328
uint16 agt_max_user_sessions
max USER sessions
Definition: agt.h:1067
uint16 agt_netconf_tls_port
–netconf-tls-port parameter
Definition: agt.h:1413
const xmlChar * agt_server_id
assigned server ID NcxName (1 .
Definition: agt.h:987
xmlChar * agt_socket_address
strdup of socket-address CLI parameter
Definition: agt.h:1739
int32 agt_indent
–indent parameter
Definition: agt.h:1013
boolean agt_sil_delete_children_first
–sil-delete-children-first CLI parameter
Definition: agt.h:1398
log_debug_t agt_audit_log_console_level
log console level
Definition: agt.h:1249
boolean agt_startup_create_ok
no CLI parameter!! set to TRUE! change in yp-system library or agt_profile.c
Definition: agt.h:1433
const xmlChar * agt_restconf_server_url
RESTCONF server URL.
Definition: agt.h:1088
ncx_agtstart_t agt_start
startup type enum (distinct or mirror)
Definition: agt.h:871
uint32 agt_push_simop_period
push-simop-period parameter
Definition: agt.h:1541
const xmlChar * agt_logfile
main logfile
Definition: agt.h:961
uint32 agt_sil_getbulk_max
Specifies the maximum number of getbulk entries to request from a GET2 callback.
Definition: agt.h:1211
uint32 agt_push_max_operational
push-max-operational parameter
Definition: agt.h:1538
boolean agt_lax_namespaces
lax namespace usage: will try to match element name
Definition: agt.h:1049
uint32 agt_hello_timeout
–hello-timeout parameter
Definition: agt.h:1004
boolean agt_crl_missing_ok
tls-crl-missing-ok parameter
Definition: agt.h:1511
uint16 agt_push_min_period
push-min-period parameter
Definition: agt.h:1529
boolean agt_wildcards
Allow wildcards in filters.
Definition: agt.h:943
log_debug_t agt_log_level
requested log-level
Definition: agt.h:874
xmlChar * agt_conf_dirspec
malloced string indicating the confdir pathspec in use
Definition: agt.h:1745
boolean agt_list_deleteall_ok
allow delete-all and remove-all operations on a list
Definition: agt.h:916
const xmlChar * agt_coap_address
Coap over DTLS address (not implemented)
Definition: agt.h:1082
boolean agt_tls_debug
–tls-debug CLI parameter this flag indicates that extra TLS debugging should be enabled in the server
Definition: agt.h:1600
boolean agt_with_yang_cbor
with-yang-cbor parameter
Definition: agt.h:1619
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:1633
ncx_msg_encoding_t agt_restconf_default_encoding
this enum indicates the –restconf-default-encoding CLI parameter
Definition: agt.h:1371
const xmlChar * agt_accesscontrol
access control model
Definition: agt.h:952
boolean agt_sil_missing_error
treat missing SIL libraries as an error, not warning
Definition: agt.h:1129
boolean agt_yumaworks_templates
d: true
Definition: agt.h:931
boolean agt_no_nvstore
this field indicates that the server should not load or save using the normal APIs during transaction...
Definition: agt.h:1311
boolean agt_use_restconf
enable RESTCONF protocol
Definition: agt.h:1031
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:1575
boolean agt_return_empty_npcontainers
–return-empty-npcontainers CLI parameter
Definition: agt.h:1679
boolean agt_session_sync_mutex
session sync mutex flag
Definition: agt.h:883
boolean agt_notif_sequence_id
d: false
Definition: agt.h:927
for the list of subsystems requesting or in progress for a config load or replay
Definition: agt.h:813
dlq_hdr_t qhdr
queue header
Definition: agt.h:814
xmlChar * subsys_id
malloced subsystem name string
Definition: agt.h:815
struct to keep track of the dynamic external yp-system hooks library
Definition: agt.h:1859
agt_system_init1_fn_t init1_fn
init1 callback
Definition: agt.h:1873
status_t init1_status
init1 callback result
Definition: agt.h:1882
boolean cleanup_done
cleanup done flag
Definition: agt.h:1888
dlq_hdr_t qhdr
queue header
Definition: agt.h:1861
xmlChar * libspec
yp-system library spec that was loaded (bundle or module)
Definition: agt.h:1867
agt_system_init_profile_fn_t init_profile_fn
init profile callback
Definition: agt.h:1870
void * handle
handle from dlopen
Definition: agt.h:1864
status_t init2_status
init2 callback result
Definition: agt.h:1885
agt_system_cleanup_fn_t cleanup_fn
cleanup callback
Definition: agt.h:1879
agt_system_init2_fn_t init2_fn
init2 callback
Definition: agt.h:1876
server module info cache record for def_reg_add_mod
Definition: ncxtypes.h:1610
representation of one module or submodule during and after parsing
Definition: ncxtypes.h:1134
One YANG Patch Request.
Definition: yang_patch.h:155