yumapro  24.10-4
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
673#define AGT_DEF_CLIENT_USERNAME (const xmlChar *)"admin"
674
676#define AGT_DEF_SAVE_CONFIG_TEMPNAME true
677
679#define AGT_SAVE_CONFIG_TEMPNAME_EXT (const xmlChar *)".temp"
680
685#define AGT_DEF_RETURN_EMPTY_NPCONTAINERS TRUE
686
692#define AGT_DEF_MAX_DBLSLASH_MATCHES 25
693
694
707#define AGT_DEF_MAX_NODES_PER_UPDATE 10000
708
709
710/********************************************************************
711* *
712* T Y P E S *
713* *
714*********************************************************************/
715
717typedef enum agt_acmode_t_ {
724
725
733typedef enum agt_cbtyp_t_ {
739
740
742typedef enum agt_acm_model_t_ {
748
749
751typedef enum agt_transaction_model_t_ {
756
757
759typedef enum agt_commit_type_t_ {
764
765
767typedef enum agt_exit_mode_t_ {
774
775
777typedef enum agt_tx_type_t_ {
784
785
787typedef enum agt_ccparm_t_ {
794
795
797typedef enum agt_ha_role_t_ {
803
804
806typedef enum agt_ch_proto_t_ {
812
813
815typedef enum agt_crl_mode_t_ {
821
822
824typedef enum agt_hook_type_t_ {
830
831
835typedef struct agt_replay_subsys_t_ {
836 dlq_hdr_t qhdr;
837 xmlChar *subsys_id;
839
840
844typedef struct agt_maxuser_t_ {
845 dlq_hdr_t qhdr;
846 xmlChar *username;
849
850
851
852
886typedef struct agt_profile_t_ {
891
894
897
900
903
906
909
912
915
918
921
924
926 boolean agt_startup_error; /* T: stop, F: check fallback */
927
929 boolean agt_running_error; /* T: stop, F: check fallback */
930
933
936
939
942
945
948
957
960
963
966
969
972
974 const xmlChar *agt_accesscontrol;
975
977 const xmlChar *agt_conffile;
978
980 const xmlChar *agt_confdir;
981
983 const xmlChar *agt_logfile;
984
986 const xmlChar *agt_startup;
987
990
992 const xmlChar *agt_defaultStyle;
993
998 //const xmlChar *agt_superuser;
999
1001 const xmlChar *agt_extern_libspec;
1002
1004 const xmlChar *agt_backup_dir;
1005
1009 const xmlChar *agt_server_id;
1010
1017 const xmlChar *agt_server_root;
1018
1021
1024
1027
1030
1033
1036
1039
1042
1044 boolean agt_useurl;
1045
1048
1051
1054
1057
1060
1063
1066
1069
1072
1075
1078
1081
1084
1087
1090
1093
1095 uint16 agt_ports[AGT_MAX_PORTS];
1096
1099
1102
1104 const xmlChar *agt_coap_address;
1105
1108
1111
1114
1117
1120
1123
1126
1129
1135
1138
1146
1149
1152
1155
1158
1161
1164
1171
1174
1177
1185
1196
1202
1209
1215
1220
1225
1234
1240
1243
1251
1254
1257
1260
1263
1266
1269
1274
1277
1280
1283
1286
1289
1292
1294 const xmlChar *agt_ha_server_key;
1295
1298
1299 // leaf-list ha-server not stored here; not sent to subsys
1300
1303
1308
1311
1312 /* TBD: add this data to subsystems in the near future */
1313
1318
1324
1330
1342
1346 boolean agt_with_yang11_hello; /* d: false */
1347
1354
1359
1365
1366 /* the callhome-server parameter is handled by agt_callhome */
1367
1372 const xmlChar *agt_sshd_path;
1373
1378 const xmlChar *agt_subsys_path;
1379
1384 const xmlChar *agt_sshd_config;
1385
1386
1393
1396
1399
1402
1404 boolean agt_startup_fallback; /* T: restart, F: continue */
1405
1407 boolean agt_running_fallback; /* T: restart, F: continue */
1408
1409
1410 /* the SNMP agent parameters */
1411
1414
1417
1422
1429
1432
1435
1438
1440 const xmlChar *agt_netconf_tls_key;
1441
1444
1447
1450
1453
1455 const xmlChar *agt_errmsg_lang;
1456
1459
1464
1467
1470
1473
1476
1479
1484
1487
1490
1496
1502
1505
1508
1515
1518
1521
1524
1527
1530
1533
1536
1539
1542
1545
1548
1551
1554
1557
1560
1562 uint16 agt_push_min_period; // centiseconds
1563
1565 uint16 agt_push_min_dampening; // centiseconds
1566
1568 uint32 agt_push_max_periodic; // count
1569
1572
1575
1578
1581
1587
1590
1593
1596
1601
1609 const xmlChar *agt_sm_config;
1610
1615
1616
1621
1624
1634
1640
1647 const xmlChar *agt_tls_cipherlist;
1648
1651
1656
1659
1662
1665
1668
1673
1674 /* YPW-2000
1675 * Enable use of a temp file while saving config files such
1676 * as startup-cfg.xml or backup-cfg.xml
1677 * The file is renamed to the provided filespec after
1678 * it is written; If no rename because crash then restart will
1679 * not find real xml file; No CLI to disable
1680 */
1681 boolean agt_save_config_tempname;
1682
1687
1693
1696
1704
1706 const xmlChar *agt_user_parm;
1707
1716
1719
1728
1735
1741
1748
1756
1763
1774
1777 boolean agt_sil_skip_global_edit_apply;
1778
1779
1780 /****** state variables; TBD: move out of profile ******/
1781
1784
1787
1790
1793
1796
1799
1802
1805
1807 dlq_hdr_t agt_savedevQ;
1808
1811
1814
1817
1820
1823 boolean agt_confdir_skipped;
1824
1827
1830
1837
1840
1843
1846
1849
1852
1853
1855
1856
1860/******************* External System Callbacks ***********************/
1861
1876 (agt_profile_t *profile);
1877
1878
1892 (boolean pre_cli);
1893
1894
1909 (boolean pre_load);
1910
1911
1917typedef void (*agt_system_cleanup_fn_t) (void);
1918
1919
1931 (ncx_display_mode_t encoding,
1932 const xmlChar *filespec);
1933
1934
1951 (ncx_display_mode_t *encoding,
1952 xmlChar **filespec);
1953
1954
1958typedef struct agt_syslib_cb_t_ {
1960 dlq_hdr_t qhdr;
1961
1963 void *handle;
1964
1966 xmlChar *libspec;
1967
1970
1973
1976
1979
1982
1985
1989
1990
1992typedef struct agt_edit_parms_cb_t_ {
1993
1994
1995 /**** state data used for the edit transaction ****/
1996 yang_patch_cb_t *pcb;
1997
1999
2000
2010typedef void (*agt_replay_fn_t) (boolean is_start);
2011
2012
2016/********************************************************************
2017* *
2018* F U N C T I O N S *
2019* *
2020*********************************************************************/
2021
2022
2046extern status_t
2047 agt_init1 (int argc,
2048 char *argv[],
2049 boolean *showver,
2050 help_mode_t *showhelpmode);
2051
2052
2066extern status_t
2067 agt_init1_ex (int argc,
2068 char *argv[],
2069 boolean factory_restart,
2070 boolean *showver,
2071 help_mode_t *showhelpmode);
2072
2073
2081extern status_t
2082 agt_init1_sil_sa (void);
2083
2084
2099extern status_t
2100 agt_init1_ypserver (int argc,
2101 char *argv[],
2102 boolean factory_restart,
2103 boolean *showver,
2104 help_mode_t *showhelpmode);
2105
2106
2119extern status_t
2120 agt_init2 (void);
2121
2122
2136extern status_t
2137 agt_init2_ex (boolean factory_restart);
2138
2139
2145extern status_t
2146 agt_init2_sil_sa (void);
2147
2148
2155extern void
2156 agt_cleanup (void);
2157
2158
2165extern void
2166 agt_cleanup_sil_sa (void);
2167
2168
2176extern agt_profile_t *
2177 agt_get_profile (void);
2178
2179
2187extern void
2189 int intnum);
2190
2191
2197extern boolean
2199
2200
2206extern ncx_shutdowntyp_t
2208
2209
2216extern int
2218
2219
2226extern const xmlChar *
2228
2229
2239extern boolean
2240 agt_advertise_module_needed (const xmlChar *modname);
2241
2242
2251extern void agt_request_replay (void);
2252
2253
2263extern void agt_request_replay_ex (void *cookie);
2264
2265
2271extern void * agt_get_replay_cookie (void);
2272
2273
2284extern void
2285 agt_request_replay_subsys (const xmlChar *subsys_id);
2286
2287
2293extern boolean agt_replay_requested (void);
2294
2295
2301extern void agt_start_replay (void);
2302
2303
2309extern void agt_finish_replay (void);
2310
2311
2320extern status_t
2322 agt_nvsave_fn_t store_fn);
2323
2324
2335extern status_t
2337 const xmlChar *filespec);
2338
2339
2348extern status_t
2349 agt_add_allowed_user (const xmlChar *username);
2350
2351
2358extern void
2359 agt_remove_allowed_user (const xmlChar *username);
2360
2361
2368extern status_t
2369 agt_check_allowed_user (const xmlChar *username);
2370
2371
2372
2381extern status_t
2382 agt_add_superuser (const xmlChar *username);
2383
2384
2391extern void
2392 agt_remove_superuser (const xmlChar *username);
2393
2394
2401extern status_t
2402 agt_check_superuser (const xmlChar *username);
2403
2404
2410extern void
2412
2413
2419extern const xmlChar *
2420 agt_get_server_id (void);
2421
2422
2429extern const xmlChar *
2430 agt_get_server_root (void);
2431
2432
2438extern const xmlChar *
2439 agt_get_server_key (void);
2440
2441
2447extern boolean
2448 agt_is_sil_sa (void);
2449
2450
2456extern dlq_hdr_t *
2457 agt_get_savedevQ (void);
2458
2459
2466extern boolean
2467 agt_replay_subsys_is_active (const xmlChar *subsys_id);
2468
2469
2476extern boolean
2478
2479
2486extern const xmlChar *
2488
2489
2496extern agt_ha_role_t
2497 agt_ha_role_enum (const xmlChar *ha_role);
2498
2499
2506extern boolean
2507 agt_use_notifications (void);
2508
2509
2517extern status_t
2519
2520
2529extern boolean
2530 agt_init2_done (void);
2531
2532
2539extern boolean
2540 agt_init2_load_done (void);
2541
2542
2554extern boolean
2556
2557
2563extern void
2565
2566
2576extern boolean
2578
2579
2586extern status_t
2588
2589
2596extern ncx_modcache_t *
2597 agt_find_modcache (const xmlChar *modname);
2598
2599
2605extern status_t
2606 agt_run_extloop (void);
2607
2608
2616extern status_t
2617 agt_enter_maintenance_mode (boolean read_ok,
2618 boolean operation_ok);
2619
2620
2626extern status_t
2628
2629
2635extern boolean
2637
2638
2646extern boolean
2648
2649
2657extern boolean
2659
2660
2666extern boolean
2668
2669
2675extern void
2676 agt_set_eventlog_size (uint32 eventlog_size);
2677
2678
2684extern void
2685 agt_set_max_burst (uint32 max_burst);
2686
2687
2694extern void
2695 agt_set_max_getbulk (uint32 max_getbulk);
2696
2697
2705extern agt_not_msg_t *
2706 agt_make_term_msg (const xmlChar *msg,
2707 status_t *res);
2708
2709
2715extern status_t
2717
2718
2724extern boolean
2725 agt_use_nmda (void);
2726
2727
2733extern boolean
2734 agt_use_new_yanglib (void);
2735
2736
2743extern boolean
2745
2746
2752extern boolean
2753 agt_use_yang_cbor (void);
2754
2755
2761extern const char *
2763
2764
2770extern const xmlChar *
2771 agt_get_user_parm (void);
2772
2773
2780extern status_t
2781 agt_add_maxuser_parm (const xmlChar *cliparm);
2782
2783
2784
2795 agt_get_maxuser_parm (const xmlChar *username,
2796 uint16 *retval);
2797
2798
2807extern boolean agt_protocol_enabled (const xmlChar *proto);
2808
2809
2820extern status_t agt_enable_protocol (const xmlChar *proto);
2821
2822
2833extern status_t agt_disable_protocol (const xmlChar *proto);
2834
2835
2843extern boolean
2845
2846
2850#ifdef __cplusplus
2851} /* end extern 'C' */
2852#endif
2853
2854#endif /* _H_agt */
NETCONF Notifications DM module support.
agt_exit_mode_t
exit reasons for YControl IO loop
Definition: agt.h:767
status_t(* agt_system_init2_fn_t)(boolean pre_load)
system init2 callback
Definition: agt.h:1909
agt_commit_type_t
NETCONF commit types.
Definition: agt.h:759
status_t(* agt_nvload_fn_t)(ncx_display_mode_t *encoding, xmlChar **filespec)
nvload callback
Definition: agt.h:1951
void(* agt_system_cleanup_fn_t)(void)
system cleanup callback
Definition: agt.h:1917
agt_hook_type_t
Hook types enumeration to specify Hook type.
Definition: agt.h:824
void(* agt_replay_fn_t)(boolean is_start)
replay callback (agt_replay_fn_t)
Definition: agt.h:2010
agt_transaction_model_t
not used yet in YANG-API or NETCONF!
Definition: agt.h:751
agt_ccparm_t
confirmed-commit parms
Definition: agt.h:787
status_t(* agt_system_init1_fn_t)(boolean pre_cli)
system init1 callback
Definition: agt.h:1892
agt_ch_proto_t
server callhome protocol
Definition: agt.h:806
status_t(* agt_nvsave_fn_t)(ncx_display_mode_t encoding, const xmlChar *filespec)
brief nvsave callback
Definition: agt.h:1931
agt_acmode_t
matches access-control enumeration in netconfd.yang
Definition: agt.h:717
agt_crl_mode_t
server TLS CRL mode
Definition: agt.h:815
agt_acm_model_t
select the YANG module for the access control model
Definition: agt.h:742
agt_tx_type_t
YControl transaction type.
Definition: agt.h:777
agt_ha_role_t
server HA mode mode
Definition: agt.h:797
#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:733
void(* agt_system_init_profile_fn_t)(agt_profile_t *profile)
system init server profile callback
Definition: agt.h:1876
@ AGT_EXIT_MODE_NONE
this value is used
Definition: agt.h:768
@ AGT_EXIT_MODE_ERROR
exit loop with error
Definition: agt.h:770
@ AGT_EXIT_MODE_TIMEOUT
exit loop with timeout
Definition: agt.h:771
@ AGT_EXIT_MODE_OK
exit loop with OK
Definition: agt.h:769
@ AGT_EXIT_MODE_DROPPED
exit loop with session dropped
Definition: agt.h:772
@ AGT_COMMIT_TYPE_NORMAL
normal client operation
Definition: agt.h:761
@ AGT_COMMIT_TYPE_REPLAY
internal replay commit
Definition: agt.h:762
@ AGT_COMMIT_TYPE_NONE
not set
Definition: agt.h:760
@ AGT_HOOK_TYPE_SETHOOK
Set-Hook.
Definition: agt.h:826
@ AGT_HOOK_TYPE_NONE
not set
Definition: agt.h:825
@ AGT_HOOK_TYPE_TRANSACTION
Transaction Hook.
Definition: agt.h:827
@ AGT_HOOK_TYPE_POST_SETHOOK
Post Set-Hook.
Definition: agt.h:828
@ AGT_TM_PRIVATE
private transactions
Definition: agt.h:754
@ AGT_TM_SHARED
shared transactions (only value supported)
Definition: agt.h:753
@ AGT_TM_NONE
this value is used
Definition: agt.h:752
@ AGT_CCPARM_CONFIRMED
confirmed
Definition: agt.h:789
@ AGT_CCPARM_NONE
not set
Definition: agt.h:788
@ AGT_CCPARM_PERSIST
persist
Definition: agt.h:791
@ AGT_CCPARM_CONFIRM_TIMEOUT
confirm-timeout
Definition: agt.h:790
@ AGT_CCPARM_PERSIST_ID
persist-id
Definition: agt.h:792
@ AGT_CH_PROTO_NONE
not set
Definition: agt.h:807
@ AGT_CH_PROTO_RESTCONF_TLS
restconf-over-ssh callhome
Definition: agt.h:810
@ AGT_CH_PROTO_NETCONF_SSH
netconf-over-ssh callhome
Definition: agt.h:808
@ AGT_CH_PROTO_NETCONF_TLS
netconf-over-tls callhome
Definition: agt.h:809
@ AGT_ACMOD_PERMISSIVE
permissive mode, read + exec allowed
Definition: agt.h:720
@ AGT_ACMOD_OFF
NACM completely off.
Definition: agt.h:722
@ AGT_ACMOD_DISABLED
almost all access control turned off
Definition: agt.h:721
@ AGT_ACMOD_NONE
not set
Definition: agt.h:718
@ AGT_ACMOD_ENFORCING
full enforcement
Definition: agt.h:719
@ AGT_CRL_MODE_CA
CRL check client and CA certs.
Definition: agt.h:819
@ AGT_CRL_MODE_CLIENT
CRL check client cert.
Definition: agt.h:818
@ AGT_CRL_MODE_NONE
not set
Definition: agt.h:816
@ AGT_CRL_MODE_OFF
CRL check off.
Definition: agt.h:817
@ AGT_ACM_MODEL_IETF_NACM
IETF NACM (default)
Definition: agt.h:744
@ AGT_ACM_MODEL_YUMA_NACM
YUMA NACM (obsolete, not supported)
Definition: agt.h:745
@ AGT_ACM_MODEL_NONE
not set
Definition: agt.h:743
@ AGT_ACM_MODEL_EXTERNAL
external ACM via yp_system library
Definition: agt.h:746
@ AGT_TX_TYPE_NONE
not set
Definition: agt.h:778
@ AGT_TX_TYPE_GET
GET2 transaction.
Definition: agt.h:779
@ AGT_TX_TYPE_HOOK
hook callback for edit
Definition: agt.h:782
@ AGT_TX_TYPE_RPC
DB-API RPC transaction.
Definition: agt.h:781
@ AGT_TX_TYPE_EDIT
EDIT1 or EDIT2 transaction.
Definition: agt.h:780
@ AGT_HA_ROLE_STANDBY
HA standby role.
Definition: agt.h:800
@ AGT_HA_ROLE_NONE
not set
Definition: agt.h:798
@ AGT_HA_ROLE_ACTIVE
HA active role.
Definition: agt.h:801
@ AGT_HA_ROLE_NOT_SET
HA role not set.
Definition: agt.h:799
@ AGT_CB_APPLY
P2: write operation apply.
Definition: agt.h:735
@ AGT_CB_VALIDATE
P1: write operation validate.
Definition: agt.h:734
@ AGT_CB_ROLLBACK
P3-neg: write operation rollback.
Definition: agt.h:737
@ AGT_CB_COMMIT
P3-pos: write operation commit.
Definition: agt.h:736
agt_not_msg_t * agt_make_term_msg(const xmlChar *msg, status_t *res)
Create a <term-msg> notification.
Definition: agt.c:6295
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:6599
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:6462
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:6476
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:6226
const char * agt_get_aflocal_sockname(void)
Get the AFLOCAL socket name to use for <ncx-connect>
Definition: agt.c:6447
status_t agt_init_term_msg_module(void)
Init the term-msg module and object backptr.
Definition: agt.c:6342
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:6376
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:6709
status_t agt_get_maxuser_parm(const xmlChar *username, uint16 *retval)
Get the maxuser max-sessions value for a specified user.
Definition: agt.c:6573
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:6769
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:6647
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:6409
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:6430
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:6264
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:6392
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:1992
for the list of username / max-session values to support the –max-per-user-sessions CLI parameter
Definition: agt.h:844
xmlChar * username
malloced user name string
Definition: agt.h:846
dlq_hdr_t qhdr
queue header
Definition: agt.h:845
uint16 max_sessions
max session count 0 .
Definition: agt.h:847
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:886
const xmlChar * agt_backup_dir
backup dir location
Definition: agt.h:1004
boolean agt_with_yp_coap_dtls
enable YP-CoAP DTLS sessions (not supported)
Definition: agt.h:1265
boolean agt_allow_tcp_socket
allow a TCP socket instead of an AF_LOCAL socket for connections
Definition: agt.h:1160
const xmlChar * agt_startup
startup filespec
Definition: agt.h:986
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:1214
int32 agt_message_indent
–message-indent parameter
Definition: agt.h:1038
boolean agt_use_ccommit
enable confirmed-comiit
Definition: agt.h:1047
boolean agt_use_tcp_socket
use a TCP socket instead of an AF_LOCAL socket for connections
Definition: agt.h:1163
boolean agt_with_yumaworks_config_change
with-yumaworks-config-change
Definition: agt.h:1535
boolean agt_useurl_ftp
–with-url-ftp
Definition: agt.h:1425
boolean agt_with_yp_shell
enable yp-shell sessions
Definition: agt.h:1259
ncx_name_match_t agt_match_names
match names behavior; needs to be EXACT for YANG
Definition: agt.h:968
boolean agt_tls_deprecated_ok
YPW-1984: TLS Deprecated OK.
Definition: agt.h:1667
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:1514
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:1703
boolean agt_use_yuma_if
load yuma-if module
Definition: agt.h:1119
boolean agt_with_yp_coap
enable YP-CoAP sessions (not supported)
Definition: agt.h:1262
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:1224
uint16 agt_socket_port
listen on this TCP port if TCP socket is enabled
Definition: agt.h:1819
boolean agt_return_status
return exit code or zero
Definition: agt.h:1592
boolean agt_use_yuma_arp
load yuma-arp module
Definition: agt.h:1116
uint32 agt_linesize
line size for logging
Definition: agt.h:1032
boolean agt_useurl
–with-url parameter
Definition: agt.h:1044
ncx_yang_sid_mode_t agt_yang_sid_mode
yang-sid-mode parameter
Definition: agt.h:1661
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:1501
boolean agt_wait_datastore_ready
wait-datastore-ready parameter
Definition: agt.h:1589
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:1755
uint32 agt_max_nodes_per_update
IETF max-nodes-per-update NO CLI PARAMTER TO SET THIS VALUE.
Definition: agt.h:1586
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:1145
const xmlChar * agt_netconf_tls_certificate
–netconf-tls-cerificate parameter
Definition: agt.h:1437
boolean agt_fileloc_fhs
this flag enables FHS file locations for server data files
Definition: agt.h:1395
uint16 agt_max_sessions
max sessions (total)
Definition: agt.h:1083
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:1001
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:1346
boolean agt_load_rootcheck_errors
server load-config root-check had errors flag
Definition: agt.h:1792
uint8 agt_withdef_enabled
bitmask of the with-defaults enumerations that should be enabled in the server
Definition: agt.h:1195
uint16 agt_snmp_subagent_priority
identify the SNMP subagent priority, what priority will be used for OID callbacks registration
Definition: agt.h:1421
boolean agt_save_owners
flag to save owner strings in the database
Definition: agt.h:1173
boolean agt_with_yumaworks_callhome
with-yumaworks-callhome
Definition: agt.h:1532
const xmlChar * agt_yangapi_server_url
YANG-API server URL (obsolete)
Definition: agt.h:1107
boolean agt_restconf_strict_headers
If 'true' the server will only accept requests with normative Accept header entries specified in the ...
Definition: agt.h:1219
const xmlChar * agt_conffile
config file: default: /etc/yumapro/netconfd-pro.conf
Definition: agt.h:977
const xmlChar * agt_user_parm
back-pointer to the user-parm string if any
Definition: agt.h:1706
boolean agt_load_validate_errors
server load-config had errors flag
Definition: agt.h:1789
boolean agt_with_yang_patch_running
with-yang-patch-running parameter
Definition: agt.h:1559
boolean agt_with_config_id
this field indicates if the :config-id capability is enabled or not.
Definition: agt.h:1329
agt_crl_mode_t agt_crl_mode
tls-crl-mode parameter
Definition: agt.h:1541
boolean agt_use_local_transport
use local transport flag
Definition: agt.h:1062
boolean agt_ypserver_mode
this flag indicates the server is rnning as yp-controller and not netconfd-pro
Definition: agt.h:1483
boolean agt_sil_invoke_for_defaults
–sil-invoke-for-defaults parameter
Definition: agt.h:1475
boolean agt_create_empty_npcontainers_ro
special flag for create NP containers if read-only child nodes
Definition: agt.h:1310
boolean agt_use_rollback_on_error
Use rollback-on-error.
Definition: agt.h:1134
boolean agt_xmlorder
use strict XML order flag
Definition: agt.h:935
const xmlChar * agt_errmsg_lang
–errmsg-lang parameter
Definition: agt.h:1455
boolean agt_create_empty_npcontainers
LAST DATA SENT TO SUBSYSTEMS create empty NP containers d: true.
Definition: agt.h:1307
log_debug_t agt_audit_log_level
audit log level
Definition: agt.h:1279
boolean agt_system_sorted
enable system-sorted (obsolete: sorted by val_child algorithms)
Definition: agt.h:1068
ncx_withdefaults_t agt_defaultStyleEnum
default with-defaults enum
Definition: agt.h:1077
uint32 agt_watcher_interval
Specifies the number of seconds the YPWatcher process will sleep before checking if the netconfd-pro ...
Definition: agt.h:1201
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:1323
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:1170
obj_testflags_t agt_rootflags
root commit descendant test flags
Definition: agt.h:1783
uint16 agt_max_cli_sessions
max CLI sessions
Definition: agt.h:1086
boolean agt_delete_empty_npcontainers
delete empty config=true NP containers: d: false
Definition: agt.h:947
boolean agt_push_simop_enabled
push-simop-enabled parameter
Definition: agt.h:1577
boolean agt_validate_all
validate all flag
Definition: agt.h:914
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:1740
boolean agt_with_nmda
with-nmda
Definition: agt.h:1547
boolean agt_load_def_startup_factory
server load-config factory flag
Definition: agt.h:1804
boolean agt_use_yuma_proc
load yuma-proc module
Definition: agt.h:1113
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:1364
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:1495
boolean agt_no_yang_push
flag indicates that yang-push bundle is loaded only to use the notifications.
Definition: agt.h:1836
boolean agt_simple_json_names
use simple JSON names instead of YANG JSON names
Definition: agt.h:1302
uint16 agt_max_lock_hold_time
YPW-2027 Enforce a max lock hold time if non-zero value.
Definition: agt.h:1686
boolean agt_with_netconf_tls
enable NETCONF over TLS sessions
Definition: agt.h:1268
const xmlChar * agt_netconf_tls_address
–netconf-tls-address parameter
Definition: agt.h:1434
const xmlChar * agt_server_root
assigned server root ID
Definition: agt.h:1017
const xmlChar * agt_tls_cipherlist
–tls-cipherlist CLI parameter Use with extreme caution! Advanced libopenssl usage not supported passe...
Definition: agt.h:1647
boolean agt_use_ycontrol
enable YControl protocol
Definition: agt.h:1137
boolean agt_has_startup
has startup flag for –with-startup
Definition: agt.h:917
boolean agt_ha_sil_standby
call SIL code in standby mode
Definition: agt.h:1288
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:1239
boolean agt_with_ocpattern
this flag enables/disables the special OpenConfig usage of the YANG pattern-statement.
Definition: agt.h:1392
boolean agt_use_rollback_failed_backup
save running config for a commit, in case the rollback fails
Definition: agt.h:1157
boolean agt_use_yuma_system
load yuma-system module
Definition: agt.h:1128
boolean agt_enable_grpc
flag to enable gRPC sessions
Definition: agt.h:1851
boolean agt_sil_invoke_false_when_deletes
–sil-invoke-false-when-deletes parameter
Definition: agt.h:1472
boolean agt_audit_log_candidate
If true, then transactions to the candidate datastore will be recorded in the audit log.
Definition: agt.h:1208
uint16 agt_push_min_dampening
push-min-dampening parameter
Definition: agt.h:1565
boolean agt_trim_whitespace
–trim-whitespace CLI parameter
Definition: agt.h:1431
uint32 agt_maxburst
–maxburst parameter
Definition: agt.h:1023
uint32 agt_push_max_periodic
push-max-periodic parameter
Definition: agt.h:1568
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:1734
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:1353
boolean agt_yumaworks_ids
use the yumaworks-ids module
Definition: agt.h:1523
boolean agt_stream_output
stream message output: d:true; no CLI support yet
Definition: agt.h:944
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:1727
const xmlChar * agt_ha_initial_active
active server to use if standby
Definition: agt.h:1297
const xmlChar * agt_cert_default_user
–cert-default-user parameter
Definition: agt.h:1452
boolean agt_ha_enabled
enable YP-HA
Definition: agt.h:1285
agt_ha_role_t agt_ha_role
saved HA role
Definition: agt.h:1826
boolean agt_enable_restconf
flag to enable RESTCONF sessions
Definition: agt.h:1842
boolean agt_yuma_time_filter
use the yuma-time-filter module
Definition: agt.h:1517
const xmlChar * agt_sshd_config
set the sshd_config file to use for sshd exectuable for callhome default is $HOME/....
Definition: agt.h:1384
boolean agt_with_sm
this flag indicates that the Schema Mount support should be enabled
Definition: agt.h:1600
boolean agt_use_netconf
enable NETCONF protocol
Definition: agt.h:1059
boolean agt_callhome_reconnect
CLI parameter –callhome-reconnect.
Definition: agt.h:1507
uint16 agt_ha_port
port number is default 8088
Definition: agt.h:1291
boolean agt_with_yumaworks_lock
enable the <lock-all> and <unlock-all> operations
Definition: agt.h:1695
boolean agt_enable_netconf
flag to enable NETCONF sessions
Definition: agt.h:1839
boolean agt_use_notifications
enable notifications
Definition: agt.h:1065
boolean agt_yuma_system_notifs
d: false
Definition: agt.h:950
boolean agt_with_netconf
If 'true' then the corresponding protocol will be enabled.
Definition: agt.h:1250
agt_acm_model_t agt_acm_model
NACM or external ACM model.
Definition: agt.h:1074
ncx_agttarg_t agt_targ
BEGIN DATA SENT TO SUBSYSTEMS; target type (candidate or running)
Definition: agt.h:890
boolean agt_xpath_dblslash_ok
YPW-1981: XPath Dblslash OK.
Definition: agt.h:1664
boolean agt_use_db_lock
db-lock used only if WITH_YCONTROL=1 and CLI set
Definition: agt.h:1526
boolean agt_insecure_ok
–insecure-ok parameter
Definition: agt.h:1449
const xmlChar * agt_subsys_path
set the netconf subsystem for sshd exectuable path for callhome default is /usr/sbin/netconf-subsyste...
Definition: agt.h:1378
boolean agt_support_save
d: true (needs WITH_SUPPORT_SAVE=1)
Definition: agt.h:956
boolean agt_defer_load
saved defer load config flag
Definition: agt.h:1829
boolean agt_running_error
–running-error parameter: stop, continue enums only
Definition: agt.h:929
boolean agt_audit_log_localtime
audit log localtime
Definition: agt.h:1282
agt_transaction_model_t agt_transaction_model
TBD private transaction model.
Definition: agt.h:971
uint16 agt_coap_dtls_port
Coap over DTLS port (not implemented)
Definition: agt.h:1101
boolean agt_cvt_subtree_filter
convert-subtree-filterparameter
Definition: agt.h:1553
const xmlChar * agt_netconf_tls_key
–netconf-tls-key parameter
Definition: agt.h:1440
boolean agt_with_yang_api
enable YANG-API sessions (obsolete)
Definition: agt.h:1256
const xmlChar * agt_sm_config
set the Schema Mount configuration file.
Definition: agt.h:1609
boolean agt_startup_fallback
this flag indicates the –startup-error parm is set to fallback
Definition: agt.h:1404
boolean agt_term_msg
d: true for <term-msg> notification
Definition: agt.h:959
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:1372
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:1692
boolean agt_yumaworks_getbulk
use the yumaworks-getbulk module
Definition: agt.h:1520
boolean agt_yumaworks_system
d: true
Definition: agt.h:952
boolean agt_json_leaf_list_1line
flag to print JSON leaf-list value on 1 line
Definition: agt.h:1176
boolean agt_with_snmp
this flag indicates that the snmp agent should be enabled
Definition: agt.h:1413
boolean agt_logappend
–log-append parameter
Definition: agt.h:932
boolean agt_load_done
server load-config done flag
Definition: agt.h:1786
boolean agt_sil_skip_global_edit_validate
YPW-2276: sil-skip-global-edit-* parameters.
Definition: agt.h:1776
boolean agt_load_top_rootcheck_errors
server load-config had top root-check errors flag
Definition: agt.h:1795
xmlChar * agt_startup_txid_file
cached location of startup transaction ID file
Definition: agt.h:1813
boolean agt_with_yumaworks_event_stream
with-yumaworks-event-stream
Definition: agt.h:1538
dlq_hdr_t agt_savedevQ
Q of malloced ncx_save_deviations_t.
Definition: agt.h:1807
boolean agt_sil_autodelete
enable SIL/SIL-SA callback for auto-deletions
Definition: agt.h:1715
boolean agt_enable_gnmi
flag to enable gNMI sessions
Definition: agt.h:1848
ncx_snmp_agt_role_t agt_snmp_agent_role
identify the SNMP agent native mode master|subagent
Definition: agt.h:1416
log_debug_t agt_syslog_log_level
requested SYSLOG log-level
Definition: agt.h:899
boolean agt_factorystartup
track –factory-startup flag
Definition: agt.h:923
boolean agt_log_acm_writes
log NACM write requests
Definition: agt.h:911
boolean agt_use_yangapi
enable YANG-API protocol (obsolete: ignored)
Definition: agt.h:1050
boolean agt_enable_cli
flag to enable CLI sessions
Definition: agt.h:1845
const xmlChar * agt_startup_factory_file
factory startup filespec
Definition: agt.h:989
const xmlChar * agt_netconf_tls_trust_store
–netconf-tls-trust-store parameter
Definition: agt.h:1446
boolean agt_tls_common_auth
internal flag to enable Common Authentication Mode NO CLI PARAMETER FOR THIS SETTING IN 23....
Definition: agt.h:1273
boolean agt_leaflist_deleteall_ok
allow delete-all and remove-all operations on a leaf-list
Definition: agt.h:941
uint16 agt_coap_port
the CoAP port number used only if WITH_COAP and agt_use_coap set
Definition: agt.h:1098
const xmlChar * agt_ha_server_key
server-key to keep HA pools separate
Definition: agt.h:1294
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:1620
boolean agt_with_canonical
–with-canonical parameter
Definition: agt.h:1466
dlq_hdr_t agt_commit_testQ
Q of malloced agt_commit_test_t.
Definition: agt.h:1810
const xmlChar * agt_confdir
config dir: default: /etc/yumapro/netconfd-pro.d
Definition: agt.h:980
boolean agt_with_restconf
enable RESTCONF sessions
Definition: agt.h:1253
boolean agt_silcall_delete_first
YPW-1975: SILCALL delete first.
Definition: agt.h:1650
uint16 agt_subsys_timeout
subsystem timeout in seconds
Definition: agt.h:1092
boolean agt_with_modtags
–with-modtags parameter
Definition: agt.h:1469
boolean agt_highres_event_time
–highres-event-time parameter Affects the <eventTime> leaf in all notifications
Definition: agt.h:1655
boolean agt_ietf_system_notifs
d: true
Definition: agt.h:951
uint32 agt_audit_log_events
–audit-log-events to control audit log content
Definition: agt.h:1489
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:1747
boolean agt_sil_skip_keys
do not invoke the SIL callback for a key leaf
Definition: agt.h:1154
boolean agt_use_yuma_mysession
load yuma-mysession module
Definition: agt.h:1122
boolean agt_load_apply_errors
server load-config had apply phase errors flag
Definition: agt.h:1798
boolean agt_sil_prio_reverse_for_deletes
–sil-prio-reverse-for-deletes parameter
Definition: agt.h:1486
boolean agt_load_factory_fallback
server load-config allowed to use factory-fallback flag
Definition: agt.h:1801
int32 agt_max_strlen
max-strlen parameter
Definition: agt.h:1529
boolean agt_alt_names
Yuma REST-API urlselect extra parameters.
Definition: agt.h:962
uint8 agt_min_passwd_len
minimum password length when setting crypt-hash variables
Definition: agt.h:1242
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:1773
boolean agt_with_grpc
this flag indicates that the gRPC support should be enabled
Definition: agt.h:1595
boolean agt_use_yumaworks_event_filter
load yumaworks-event-filter module
Definition: agt.h:1125
boolean agt_useurl_tftp
the libcurl variables
Definition: agt.h:1424
boolean agt_use_cli
enable yp-shell
Definition: agt.h:1056
boolean agt_startup_prune_ok
–startup-prune-ok parameter
Definition: agt.h:1458
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:1184
log_debug_t agt_pthread_log_level
requested PTHREADS log level
Definition: agt.h:902
boolean agt_import_version_bestmatch
import-version-bestmatch parameter
Definition: agt.h:1556
uint32 agt_idle_timeout
–idle-timeout parameter
Definition: agt.h:1029
uint32 agt_eventlog_size
eventlog-size set to 0 to disable replay
Definition: agt.h:1020
boolean agt_log_event_drops
log event drops
Definition: agt.h:1148
boolean agt_usevalidate
–with-validate parameter
Definition: agt.h:1041
boolean agt_with_gnmi
this flag indicates that the gNMI support should be enabled
Definition: agt.h:1478
boolean agt_remove_schema_aug_leafs
this flag indicates the deprecated schema list leafs added from yumaworks-system should be removed.
Definition: agt.h:1633
boolean agt_with_maint_mode
allow maintenance mode to be used
Definition: agt.h:1504
agt_acmode_t agt_accesscontrol_enum
access control enum
Definition: agt.h:1080
boolean agt_use_yumaworks_cert_usermap
load yumaworks-cert-usermap module
Definition: agt.h:1623
boolean agt_log_acm_reads
log NACM read requests
Definition: agt.h:908
boolean agt_push_simop_patch_update
push-simop-patch-update parameter
Definition: agt.h:1580
const xmlChar * agt_defaultStyle
default-style for with-defaults
Definition: agt.h:992
boolean agt_usestartup
track –no-startup flag
Definition: agt.h:920
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:1317
boolean agt_startup_skip_validation
startup-skip-validation
Definition: agt.h:1550
boolean agt_startup_error
–startup-error parameter: stop, continue enums only
Definition: agt.h:926
boolean agt_no_audit_log
this flag indicates the –no-audit-log CLI parameter
Definition: agt.h:1398
boolean agt_running_fallback
this flag indicates the –running-error parm is set to fallback
Definition: agt.h:1407
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:1358
uint16 agt_max_user_sessions
max USER sessions
Definition: agt.h:1089
uint16 agt_netconf_tls_port
–netconf-tls-port parameter
Definition: agt.h:1443
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:1762
const xmlChar * agt_server_id
assigned server ID NcxName (1 .
Definition: agt.h:1009
xmlChar * agt_socket_address
strdup of socket-address CLI parameter
Definition: agt.h:1816
int32 agt_indent
–indent parameter
Definition: agt.h:1035
boolean agt_sil_delete_children_first
–sil-delete-children-first CLI parameter
Definition: agt.h:1428
log_debug_t agt_audit_log_console_level
log console level
Definition: agt.h:1276
boolean agt_startup_create_ok
no CLI parameter!! set to TRUE! change in yp-system library or agt_profile.c
Definition: agt.h:1463
const xmlChar * agt_restconf_server_url
RESTCONF server URL.
Definition: agt.h:1110
ncx_agtstart_t agt_start
startup type enum (distinct or mirror)
Definition: agt.h:893
uint32 agt_push_simop_period
push-simop-period parameter
Definition: agt.h:1574
const xmlChar * agt_logfile
main logfile
Definition: agt.h:983
uint32 agt_sil_getbulk_max
Specifies the maximum number of getbulk entries to request from a GET2 callback.
Definition: agt.h:1233
uint32 agt_push_max_operational
push-max-operational parameter
Definition: agt.h:1571
boolean agt_lax_namespaces
lax namespace usage: will try to match element name
Definition: agt.h:1071
uint32 agt_hello_timeout
–hello-timeout parameter
Definition: agt.h:1026
boolean agt_crl_missing_ok
tls-crl-missing-ok parameter
Definition: agt.h:1544
uint16 agt_push_min_period
push-min-period parameter
Definition: agt.h:1562
boolean agt_wildcards
Allow wildcards in filters.
Definition: agt.h:965
log_debug_t agt_log_level
requested log-level
Definition: agt.h:896
xmlChar * agt_conf_dirspec
malloced string indicating the confdir pathspec in use
Definition: agt.h:1822
boolean agt_list_deleteall_ok
allow delete-all and remove-all operations on a list
Definition: agt.h:938
const xmlChar * agt_coap_address
Coap over DTLS address (not implemented)
Definition: agt.h:1104
boolean agt_tls_debug
–tls-debug CLI parameter this flag indicates that extra TLS debugging should be enabled in the server
Definition: agt.h:1639
boolean agt_with_yang_cbor
with-yang-cbor parameter
Definition: agt.h:1658
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:1672
ncx_msg_encoding_t agt_restconf_default_encoding
this enum indicates the –restconf-default-encoding CLI parameter
Definition: agt.h:1401
const xmlChar * agt_accesscontrol
access control model
Definition: agt.h:974
boolean agt_sil_missing_error
treat missing SIL libraries as an error, not warning
Definition: agt.h:1151
boolean agt_yumaworks_templates
d: true
Definition: agt.h:953
boolean agt_no_nvstore
this field indicates that the server should not load or save using the normal APIs during transaction...
Definition: agt.h:1341
boolean agt_use_restconf
enable RESTCONF protocol
Definition: agt.h:1053
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:1614
boolean agt_return_empty_npcontainers
–return-empty-npcontainers CLI parameter
Definition: agt.h:1718
boolean agt_session_sync_mutex
session sync mutex flag
Definition: agt.h:905
boolean agt_notif_sequence_id
d: false
Definition: agt.h:949
for the list of subsystems requesting or in progress for a config load or replay
Definition: agt.h:835
dlq_hdr_t qhdr
queue header
Definition: agt.h:836
xmlChar * subsys_id
malloced subsystem name string
Definition: agt.h:837
struct to keep track of the dynamic external yp-system hooks library
Definition: agt.h:1958
agt_system_init1_fn_t init1_fn
init1 callback
Definition: agt.h:1972
status_t init1_status
init1 callback result
Definition: agt.h:1981
boolean cleanup_done
cleanup done flag
Definition: agt.h:1987
dlq_hdr_t qhdr
queue header
Definition: agt.h:1960
xmlChar * libspec
yp-system library spec that was loaded (bundle or module)
Definition: agt.h:1966
agt_system_init_profile_fn_t init_profile_fn
init profile callback
Definition: agt.h:1969
void * handle
handle from dlopen
Definition: agt.h:1963
status_t init2_status
init2 callback result
Definition: agt.h:1984
agt_system_cleanup_fn_t cleanup_fn
cleanup callback
Definition: agt.h:1978
agt_system_init2_fn_t init2_fn
init2 callback
Definition: agt.h:1975
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