yumapro  24.10-3
YumaPro SDK
Loading...
Searching...
No Matches
agt_util.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_util
13#define _H_agt_util
14
15/* FILE: agt_util.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----------------------------------------------------------------------
3624-may-06 abb Begun
37
38*/
39
40#ifndef _H_agt
41#include "agt.h"
42#endif
43
44#ifndef _H_agt_cfg
45#include "agt_cfg.h"
46#endif
47
48#ifndef _H_cfg
49#include "cfg.h"
50#endif
51
52#ifndef _H_dlq
53#include "dlq.h"
54#endif
55
56#ifndef _H_getcb
57#include "getcb.h"
58#endif
59
60#ifndef _H_ncxconst
61#include "ncxconst.h"
62#endif
63
64#ifndef _H_ncxtypes
65#include "ncxtypes.h"
66#endif
67
68#ifndef _H_obj
69#include "obj.h"
70#endif
71
72#ifndef _H_rpc
73#include "rpc.h"
74#endif
75
76#ifndef _H_ses
77#include "ses.h"
78#endif
79
80#ifndef _H_status
81#include "status.h"
82#endif
83
84#ifndef _H_val
85#include "val.h"
86#endif
87
88#ifndef _H_xml_msg
89#include "xml_msg.h"
90#endif
91
92#ifndef _H_xml_util
93#include "xml_util.h"
94#endif
95
96#ifndef _H_xpath
97#include "xpath.h"
98#endif
99
100#ifndef _H_yang_patch
101#include "yang_patch.h"
102#endif
103
104#ifdef __cplusplus
105extern "C" {
106#endif
107
108/********************************************************************
109* *
110* F U N C T I O N S *
111* *
112*********************************************************************/
113
138extern status_t
139 agt_get_cfg_from_parm (const xmlChar *parmname,
140 rpc_msg_t *msg,
141 xml_node_t *methnode,
142 cfg_template_t **retcfg);
143
144
155extern status_t
156 agt_get_inline_cfg_from_parm (const xmlChar *parmname,
157 rpc_msg_t *msg,
158 xml_node_t *methnode,
159 val_value_t **retval);
160
161
183extern status_t
184 agt_get_url_from_parm (const xmlChar *parmname,
185 rpc_msg_t *msg,
186 xml_node_t *methnode,
187 const xmlChar **returl,
188 val_value_t **retval);
189
190
199extern xmlChar *
200 agt_get_filespec_from_url (const xmlChar *urlstr,
201 status_t *res);
202
203
213extern const val_value_t *
214 agt_get_parmval (const xmlChar *parmname,
215 rpc_msg_t *msg);
216
217
247extern void
249 xml_msg_hdr_t *msghdr,
250 ncx_layer_t layer,
251 status_t res,
252 const xml_node_t *xmlnode,
253 ncx_node_t parmtyp,
254 const void *error_info,
255 ncx_node_t nodetyp,
256 void *error_path);
257
258
270extern void
272 xml_msg_hdr_t *msghdr,
273 status_t res,
274 obj_template_t *errobj,
275 const xmlChar *badval);
276
277
309extern void
311 xml_msg_hdr_t *msghdr,
312 ncx_layer_t layer,
313 status_t res,
314 const xml_node_t *xmlnode,
315 ncx_node_t parmtyp,
316 const void *error_info,
317 ncx_node_t nodetyp,
318 void *error_path,
319 const ncx_errinfo_t *errinfo);
320
321
356extern void
358 xml_msg_hdr_t *msghdr,
359 ncx_layer_t layer,
360 status_t res,
361 const xml_node_t *xmlnode,
362 ncx_node_t parmtyp,
363 const void *error_parm,
364 ncx_node_t nodetyp,
365 void *error_path,
366 const ncx_errinfo_t *errinfo);
367
368
390extern void
392 xml_msg_hdr_t *msghdr,
393 ncx_layer_t layer,
394 status_t res,
395 const xml_attr_t *xmlattr,
396 const xml_node_t *xmlnode,
397 const xmlChar *badns,
398 ncx_node_t nodetyp,
399 void *errnode);
400
401
419extern void
421 xml_msg_hdr_t *msghdr,
422 status_t res,
423 val_value_t *errval);
424
425
443extern void
445 xml_msg_hdr_t *msghdr,
446 val_value_t *errval,
447 dlq_hdr_t *valuniqueQ);
448
449
460extern status_t
462 rpc_msg_t *msg);
463
464
476extern status_t
478 rpc_msg_t *msg,
479 val_value_t *filter);
480
481
493extern status_t
495 val_value_t *filter,
496 boolean is_subtree,
497 boolean is_operational);
498
499
513extern boolean
515 ncx_withdefaults_t withdef,
516 boolean realtest,
517 val_value_t *node);
518
519
535extern boolean
537 ncx_withdefaults_t withdef,
538 boolean realtest,
539 val_value_t *node);
540
541
557extern boolean
559 ncx_withdefaults_t withdef,
560 boolean realtest,
561 val_value_t *node);
562
563
581extern boolean
583 ncx_withdefaults_t withdef,
584 boolean realtest,
585 val_value_t *node);
586
587
603extern boolean
605 ncx_withdefaults_t withdef,
606 boolean realtest,
607 val_value_t *node);
608
609
625extern boolean
627 ncx_withdefaults_t withdef,
628 boolean realtest,
629 val_value_t *node);
630
631
647extern boolean agt_check_basic (xml_msg_hdr_t *mhdr,
648 ncx_withdefaults_t withdef,
649 boolean realtest,
650 val_value_t *node);
651
652
663extern status_t
665 rpc_msg_t *msg,
666 int32 indent);
667
668
678extern status_t
680 rpc_msg_t *msg,
681 int32 indent);
682
683
694extern status_t
696 rpc_msg_t *msg,
697 int32 indent);
698
699
707extern status_t
709 boolean cur_exists);
710
711
749extern status_t
751 op_editop_t *cop,
752 val_value_t *newnode,
753 val_value_t *curnode,
754 ncx_iqual_t iqual,
755 ncx_protocol_t proto,
756 boolean is_commit,
757 boolean *delete_default);
758
759
771extern status_t
772 agt_enable_feature (const xmlChar *modname,
773 const xmlChar *featurename);
774
775
787extern status_t
788 agt_disable_feature (const xmlChar *modname,
789 const xmlChar *featurename);
790
791
805extern val_value_t *
806 agt_make_leaf (obj_template_t *parentobj,
807 const xmlChar *leafname,
808 const xmlChar *leafstrval,
809 status_t *res);
810
811
825extern val_value_t *
827 const xmlChar *leafname,
828 uint32 leafval,
829 status_t *res);
830
844extern val_value_t *
846 const xmlChar *leafname,
847 int32 leafval,
848 status_t *res);
849
850
864extern val_value_t *
866 const xmlChar *leafname,
867 uint64 leafval,
868 status_t *res);
869
870
884extern val_value_t *
886 const xmlChar *leafname,
887 int64 leafval,
888 status_t *res);
889
890
905extern val_value_t *
907 const xmlChar *leafname,
908 const val_idref_t *leafval,
909 status_t *res);
910
911
924extern val_value_t *
925 agt_make_list (obj_template_t *parentobj,
926 const xmlChar *listname,
927 status_t *res);
928
929
938extern val_value_t *
940 const xmlChar *objname,
941 status_t *res);
942
943
944#define agt_make_virtual_node agt_make_virtual_leaf
945
946
964extern val_value_t *
966 const xmlChar *leafname,
967 getcb_fn_t callbackfn,
968 status_t *res);
969
970
983extern status_t
985 getcb_fn_t callbackfn);
986
987
1008extern status_t
1010 val_value_t **val);
1011
1012
1035extern status_t
1036 agt_add_container (const xmlChar *modname,
1037 const xmlChar *objname,
1038 val_value_t *parentval,
1039 val_value_t **val);
1040
1041
1042
1056extern val_value_t *
1057 agt_init_cache (const xmlChar *modname,
1058 const xmlChar *objname,
1059 status_t *res);
1060
1061
1076extern status_t
1077 agt_check_cache (val_value_t **cacheptr,
1078 val_value_t *newval,
1079 val_value_t *curval,
1080 op_editop_t editop);
1081
1082
1093extern xpath_pcb_t *
1095 const xmlChar *expr,
1096 status_t *res);
1097
1098
1111extern xmlChar *
1112 agt_make_srid_filespec (const xmlChar *basestr,
1113 const xmlChar *patstr,
1114 const xmlChar *valstr);
1115
1123extern xmlChar *
1125
1126
1138extern xmlChar *
1139 agt_get_target_filespec (const xmlChar *target_url,
1140 status_t *res);
1141
1142
1163extern status_t
1165 val_value_t *valroot,
1166 boolean set_candidate,
1167 boolean set_augment,
1168 boolean force);
1169
1170
1178extern status_t
1180
1181
1202extern status_t
1204 const xmlChar *modname,
1205 val_value_t **errval);
1206
1207
1216extern void
1218
1219
1227extern void
1228 agt_set_depth (rpc_msg_t *msg);
1229
1230
1238extern void
1240
1241
1256extern val_value_t *
1257 agt_get_key_value (val_value_t *startval,
1258 val_value_t **lastkey);
1259
1260
1280extern val_value_t *
1282 const xmlChar *objname,
1283 boolean *added,
1284 status_t *res);
1285
1294extern boolean
1296
1297
1308extern boolean
1310 const val_value_t *newnode,
1311 const val_value_t *curnode);
1312
1313
1333extern boolean
1335 const val_value_t *newnode,
1336 const val_value_t *curnode,
1337 boolean ignore_defaults,
1338 boolean childonly,
1339 boolean top_replace);
1340
1341
1347extern boolean
1348 agt_backups_enabled (void);
1349
1350
1359extern xpath_result_t *
1361 val_value_t *rootval,
1362 status_t *retres);
1363
1364
1372extern val_value_t *
1374
1375
1389extern void
1391 xml_msg_hdr_t *mhdr,
1392 xmlns_id_t parent_nsid,
1393 xmlns_id_t node_nsid,
1394 const xmlChar *node_name,
1395 int32 indent);
1396
1397
1412extern void
1414 xml_msg_hdr_t *mhdr,
1415 xmlns_id_t parent_nsid,
1416 xmlns_id_t node_nsid,
1417 const xmlChar *node_name,
1418 int32 indent,
1419 boolean try_modname);
1420
1421
1422
1441extern void
1443 xml_msg_hdr_t *mhdr,
1444 xmlns_id_t parent_nsid,
1445 xmlns_id_t node_nsid,
1446 const xmlChar *node_name,
1447 int32 indent,
1448 boolean try_modname,
1449 val_value_t *metaval);
1450
1451
1452
1473extern void
1475 xml_msg_hdr_t *mhdr,
1476 xmlns_id_t parent_nsid,
1477 xmlns_id_t nsid,
1478 const xmlChar *elname,
1479 const dlq_hdr_t *attrQ,
1480 boolean isattrq,
1481 int32 indent,
1482 boolean empty);
1483
1484
1496extern void
1498 xml_msg_hdr_t *mhdr,
1499 xmlns_id_t node_nsid,
1500 const xmlChar *node_name,
1501 int32 indent);
1502
1503
1511extern boolean
1513 const xmlChar *etag);
1514
1515
1525extern boolean
1527 ncx_etag_t etag);
1528
1529
1538extern boolean
1540 time_t *timerec);
1541
1542
1549extern boolean
1551
1552
1567extern val_value_t *
1568 agt_make_leaf2 (obj_template_t *parentobj,
1569 const xmlChar *modname,
1570 const xmlChar *leafname,
1571 const xmlChar *leafstrval,
1572 status_t *res);
1573
1574
1586extern val_value_t *
1588 const xmlChar *modname,
1589 const xmlChar *leafname,
1590 const val_value_t *leafval,
1591 status_t *res);
1592
1593
1608extern val_value_t *
1610 const xmlChar *modname,
1611 const xmlChar *leafname,
1612 uint32 leafval,
1613 status_t *res);
1614
1615
1630extern val_value_t *
1632 const xmlChar *modname,
1633 const xmlChar *leafname,
1634 int32 leafval,
1635 status_t *res);
1636
1637
1652extern val_value_t *
1654 const xmlChar *modname,
1655 const xmlChar *leafname,
1656 uint64 leafval,
1657 status_t *res);
1658
1659
1674extern val_value_t *
1676 const xmlChar *modname,
1677 const xmlChar *leafname,
1678 int64 leafval,
1679 status_t *res);
1680
1681
1700extern val_value_t *
1702 const xmlChar *modname,
1703 const xmlChar *leafname,
1704 const val_idref_t *leafval,
1705 status_t *res);
1706
1707
1719extern val_value_t *
1721 const xmlChar *modname,
1722 const xmlChar *leafname,
1723 const ncx_list_t *listval,
1724 status_t *res);
1725
1726
1738extern val_value_t *
1740 const xmlChar *modname,
1741 const xmlChar *leafname,
1742 boolean boolval,
1743 status_t *res);
1744
1745
1757extern val_value_t *
1759 const xmlChar *modname,
1760 const xmlChar *leafname,
1761 boolean boolval,
1762 status_t *res);
1763
1764
1778extern val_value_t *
1779 agt_make_object2 (obj_template_t *parentobj,
1780 const xmlChar *modname,
1781 const xmlChar *objname,
1782 status_t *res);
1783
1784
1805extern val_value_t *
1807 const xmlChar *modname,
1808 const xmlChar *leafname,
1809 getcb_fn_t callbackfn,
1810 status_t *res);
1811
1812
1824extern ncx_cfg_t
1826
1827
1835extern boolean
1836 agt_module_in_cli_valset (const xmlChar *modname);
1837
1838
1845extern void
1847
1848
1849
1857extern boolean
1859
1860
1871extern op_editop_t
1873 const val_value_t *newval,
1874 const val_value_t *curval);
1875
1876
1885extern op_editop_t
1887 const val_value_t *newval,
1888 const val_value_t *curval);
1889
1890
1900extern op_editop_t
1902 const val_value_t *newval,
1903 const val_value_t *curval);
1904
1905
1915extern int
1916 agt_connect_client (const xmlChar *hostname,
1917 uint16_t port);
1918
1919
1934extern status_t
1936 val_value_t *err_value,
1937 val_value_t **retval);
1938
1939
1946extern uint32
1948
1949
1958extern val_value_t *
1960
1961
1968extern obj_template_t *
1970
1971
1972
1979extern obj_template_t *
1981
1982
1989extern const xmlChar*
1991
1992
1993#ifdef PTHREADS
2002extern boolean
2004
2005
2014extern boolean
2015 agt_getbulk_ok_for_nolock (const xmlChar *pathstr);
2016
2017#endif // PTHREADS
2018
2019
2028extern boolean
2030
2031
2038extern const xmlChar *
2040
2041
2048extern agt_crl_mode_t
2049 agt_crl_mode_enum (const xmlChar *crl_mode);
2050
2051
2062extern val_nodetest_fn_t
2064 boolean getop);
2065
2066
2067
2083extern status_t
2084 agt_fill_dummy_method (const xmlChar *modname,
2085 const xmlChar *rpcname,
2086 xml_node_t *node,
2087 obj_template_t **rpcobj);
2088
2089
2104extern yang_patch_cb_t *
2105 agt_make_yang_patch_cb (const xmlChar *patch_id,
2106 const xmlChar *the_comment,
2107 const xmlChar *patch_root,
2109 uint32 included_changes);
2110
2111
2127extern yang_patch_cb_t *
2128 agt_make_yang_patch_cb_targobj (const xmlChar *patch_id,
2129 const xmlChar *the_comment,
2130 const xmlChar *patch_root,
2132 uint32 included_changes,
2133 obj_template_t *targobj);
2134
2135
2148extern yang_patch_cb_t *
2149 agt_make_yang_patch_cb_file (const xmlChar *patch_id,
2150 const xmlChar *the_comment,
2151 const xmlChar *patch_root,
2152 const xmlChar *filespec);
2153
2154
2169extern boolean
2171 uint32 included_changes,
2172 obj_template_t *targobj);
2173
2174
2175
2176
2177
2191extern status_t
2192 agt_add_leafy (val_value_t *parentval,
2193 const xmlChar *modname,
2194 const xmlChar *leafname,
2195 const xmlChar *leafstrval);
2196
2197
2211extern status_t
2212 agt_add_uint_leafy (val_value_t *parentval,
2213 const xmlChar *modname,
2214 const xmlChar *leafname,
2215 uint32 leafval);
2216
2217
2218
2232extern status_t
2233 agt_add_int_leafy (val_value_t *parentval,
2234 const xmlChar *modname,
2235 const xmlChar *leafname,
2236 int32 leafval);
2237
2238
2252extern status_t
2254 const xmlChar *modname,
2255 const xmlChar *leafname,
2256 uint64 leafval);
2257
2258
2272extern status_t
2273 agt_add_int64_leafy (val_value_t *parentval,
2274 const xmlChar *modname,
2275 const xmlChar *leafname,
2276 int64 leafval);
2277
2278
2279
2293extern status_t
2295 const xmlChar *modname,
2296 const xmlChar *leafname,
2297 boolean boolval);
2298
2299
2316extern status_t
2317 agt_add_idref_leafy (val_value_t *parentval,
2318 const xmlChar *modname,
2319 const xmlChar *leafname,
2320 const val_idref_t *leafval);
2321
2322
2339extern status_t
2340 agt_add_bits_leafy (val_value_t *parentval,
2341 const xmlChar *modname,
2342 const xmlChar *leafname,
2343 const ncx_list_t *leafval);
2344
2345
2346
2347
2348/***** APIS USED FOR NESTED NOTIFICATION GENERATION ****/
2349
2350
2359extern val_value_t *
2360 agt_make_string_key (const xmlChar *leafval);
2361
2362
2363
2372extern val_value_t *
2373 agt_make_uint_key (uint32 leafval);
2374
2375
2376
2385extern val_value_t *
2386 agt_make_int_key (int32 leafval);
2387
2388
2389
2398extern val_value_t *
2399 agt_make_uint64_key (uint64 leafval);
2400
2401
2402
2411extern val_value_t *
2412 agt_make_int64_key (int64 leafval);
2413
2414
2415
2424extern val_value_t *
2425 agt_make_boolean_key (boolean leafval);
2426
2427
2436extern val_value_t *
2437 agt_make_idref_key (const val_idref_t *leafval);
2438
2439
2448extern val_value_t *
2449 agt_make_bits_key (const ncx_list_t *leafval);
2450
2451
2452/*
2453* @brief make a generic key leaf node from a union
2454*
2455* @param leafval union version of value to set for key leaf
2456* @return malloced value node
2457*/
2458extern val_value_t *
2459 agt_make_union_key (const val_value_t *leafval);
2460
2461
2471extern status_t
2472 agt_get_sid_set_id (xmlChar *buff,
2473 uint32 bufflen);
2474
2475
2476
2477
2511extern status_t
2512 agt_xpath_force_true (struct xpath_pcb_t_ *pcb,
2513 val_value_t *context,
2514 val_value_t *docroot,
2515 boolean *result);
2516
2517
2518extern status_t
2519 agt_xpath_example (struct xpath_pcb_t_ *pcb,
2520 val_value_t *context,
2521 val_value_t *docroot,
2522 boolean *result);
2523
2524
2525
2526
2542extern agt_edit_parms_cb_t *
2543 agt_new_edit_parms (const xmlChar *patch_id_str,
2544 boolean system_edit,
2545 boolean skip_sil,
2546 const xmlChar *comment);
2547
2548
2564extern status_t
2566 const xmlChar *patch_id_str,
2567 boolean system_edit,
2568 boolean skip_sil,
2569 const xmlChar *comment);
2570
2571
2572
2580extern void
2582
2583
2591extern void
2593
2594
2616extern status_t
2618 const xmlChar *edit_id_str,
2619 const xmlChar *edit_target,
2620 const xmlChar *edit_operation,
2621 const xmlChar *edit_xml_value,
2622 const xmlChar *insert_point,
2623 const xmlChar *insert_where);
2624
2625
2643extern status_t
2645 agt_edit_parms_cb_t *parms);
2646
2647
2648
2652#ifdef __cplusplus
2653} /* end extern 'C' */
2654#endif
2655
2656#endif /* _H_agt_util */
Multi-Protocol Network Management Server.
Manage Server configuration edit transactions.
@ brief NCX configuration database manager
dlq provides general double-linked list and queue support:
GET1 and GET2 Callback Support.
agt_crl_mode_t
server TLS CRL mode
Definition: agt.h:808
boolean agt_check_config(xml_msg_hdr_t *mhdr, ncx_withdefaults_t withdef, boolean realtest, val_value_t *node)
Used by the <get-config> operation to return any type of configuration data.
Definition: agt_util.c:2945
val_value_t * agt_make_boolean_leaf(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, boolean boolval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list (NCX_BT_BOOL)
Definition: agt_util.c:6595
yang_patch_cb_t * agt_make_yang_patch_cb_file(const xmlChar *patch_id, const xmlChar *the_comment, const xmlChar *patch_root, const xmlChar *filespec)
Make a yang_patch_cb for a Simulated Operational On-Change subscription update from a data file.
Definition: agt_util.c:7979
obj_template_t * agt_get_rpc_output_obj(rpc_msg_t *msg)
Get the rpc output object template.
Definition: agt_util.c:7267
agt_edit_parms_cb_t * agt_new_edit_parms(const xmlChar *patch_id_str, boolean system_edit, boolean skip_sil, const xmlChar *comment)
Create and initialize a SIL edit_parms control clock.
Definition: agt_util.c:8983
boolean agt_modified_since(val_value_t *val, time_t *timerec)
Check if the timestamp for the object is later then the specified timestamp.
Definition: agt_util.c:6189
boolean agt_notifications_enabled(void)
Check if notifications are enabled.
Definition: agt_util.c:6212
val_value_t * agt_make_leaf2(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, const xmlChar *leafstrval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:6234
op_editop_t agt_cvt_editop(op_editop_t editop, const val_value_t *newval, const val_value_t *curval)
Determine the effective edit (if OP_EDITOP_COMMIT)
Definition: agt_util.c:6971
status_t agt_enable_feature(const xmlChar *modname, const xmlChar *featurename)
Enable a YANG feature in the server.
Definition: agt_util.c:4069
boolean agt_check_config_false(xml_msg_hdr_t *mhdr, ncx_withdefaults_t withdef, boolean realtest, val_value_t *node)
Used by the <get*> operation to return only config=false nodes and the ID ancestor nodes.
Definition: agt_util.c:3066
status_t agt_add_int64_leafy(val_value_t *parentval, const xmlChar *modname, const xmlChar *leafname, int64 leafval)
make a child node from a int64 and add to parent.
Definition: agt_util.c:8356
status_t agt_check_max_access(val_value_t *newval, boolean cur_exists)
Check if the max-access for a parameter is exceeded.
Definition: agt_util.c:3516
boolean agt_any_operations_set(val_value_t *val)
Check the new node and all descendants for any operation attibutes prsent.
Definition: agt_util.c:5504
status_t agt_add_uint64_leafy(val_value_t *parentval, const xmlChar *modname, const xmlChar *leafname, uint64 leafval)
make a child node from a uint64 and add to parent.
Definition: agt_util.c:8302
val_value_t * agt_init_cache(const xmlChar *modname, const xmlChar *objname, status_t *res)
init a cache pointer during the init2 callback
Definition: agt_util.c:4529
boolean agt_backups_enabled(void)
Check if the backup commands are enabled.
Definition: agt_util.c:5769
yang_patch_cb_t * agt_make_yang_patch_cb_targobj(const xmlChar *patch_id, const xmlChar *the_comment, const xmlChar *patch_root, agt_cfg_transaction_t *txcb, uint32 included_changes, obj_template_t *targobj)
Make a yang_patch_cb for a YANG Patch conventional datastore on-change update for a target object.
Definition: agt_util.c:7891
val_value_t * agt_make_idref_leaf2(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, const val_idref_t *leafval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:6479
val_value_t * agt_make_uint_key(uint32 leafval)
make a generic key leaf node from a uint
Definition: agt_util.c:8606
val_value_t * agt_make_int_leaf(obj_template_t *parentobj, const xmlChar *leafname, int32 leafval, status_t *res)
make an int32 val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:4187
void agt_output_start_node(ses_cb_t *scb, xml_msg_hdr_t *mhdr, xmlns_id_t parent_nsid, xmlns_id_t node_nsid, const xmlChar *node_name, int32 indent, boolean try_modname)
Output a start node and try to use modname in front if needed.
Definition: agt_util.c:5926
void agt_record_error_errinfo(ses_cb_t *scb, xml_msg_hdr_t *msghdr, ncx_layer_t layer, status_t res, const xml_node_t *xmlnode, ncx_node_t parmtyp, const void *error_info, ncx_node_t nodetyp, void *error_path, const ncx_errinfo_t *errinfo)
Generate an rpc_err_rec_t and save it in the msg Use provided error fields.
Definition: agt_util.c:2443
status_t agt_xpath_force_true(struct xpath_pcb_t_ *pcb, val_value_t *context, val_value_t *docroot, boolean *result)
XPath Boolean EVAL Replacement Callback.
Definition: agt_util.c:8911
val_value_t * agt_make_uint_leaf(obj_template_t *parentobj, const xmlChar *leafname, uint32 leafval, status_t *res)
make a uint32 val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:4168
yang_patch_cb_t * agt_make_yang_patch_cb(const xmlChar *patch_id, const xmlChar *the_comment, const xmlChar *patch_root, agt_cfg_transaction_t *txcb, uint32 included_changes)
Make a yang_patch_cb for a YANG Patch conventional datastore on-change update.
Definition: agt_util.c:7859
void agt_output_end_container(ses_cb_t *scb, xml_msg_hdr_t *mhdr, xmlns_id_t node_nsid, const xmlChar *node_name, int32 indent)
Output an end container node.
Definition: agt_util.c:6091
obj_template_t * agt_get_action_output_obj(val_value_t *actionval)
Get the action output object template.
Definition: agt_util.c:7294
val_value_t * agt_make_virtual_leaf(obj_template_t *parentobj, const xmlChar *leafname, getcb_fn_t callbackfn, status_t *res)
make a val_value_t struct for a specified virtual leaf or leaf-list
Definition: agt_util.c:4338
status_t agt_validate_filter(ses_cb_t *scb, rpc_msg_t *msg)
Validate the <filter> parameter if present.
Definition: agt_util.c:2802
boolean agt_check_save(xml_msg_hdr_t *mhdr, ncx_withdefaults_t withdef, boolean realtest, val_value_t *node)
Used by agt_ncx_cfg_save function to filter just what is supposed to be saved in the <startup> config...
Definition: agt_util.c:3191
status_t agt_get_sid_set_id(xmlChar *buff, uint32 bufflen)
Fill the buffer with the current sid-set-id value.
Definition: agt_util.c:8846
boolean agt_check_basic(xml_msg_hdr_t *mhdr, ncx_withdefaults_t withdef, boolean realtest, val_value_t *node)
Used by the <get-data> operation to return basic filtering NMDA, module-tags, tstamps filtered data.
Definition: agt_util.c:3263
boolean agt_getbulk_ok_for_nolock(const xmlChar *pathstr)
Check if the get-bulk target is OK for a nolock get without waiting for a pthreads filter.
Definition: agt_util.c:7456
status_t agt_add_bits_leafy(val_value_t *parentval, const xmlChar *modname, const xmlChar *leafname, const ncx_list_t *leafval)
make a child node from a ncx_list_t struct (bits) and add to parent.
Definition: agt_util.c:8528
void agt_record_error(ses_cb_t *scb, xml_msg_hdr_t *msghdr, ncx_layer_t layer, status_t res, const xml_node_t *xmlnode, ncx_node_t parmtyp, const void *error_info, ncx_node_t nodetyp, void *error_path)
Generate an rpc_err_rec_t and save it in the msg.
Definition: agt_util.c:2334
status_t agt_get_url_from_parm(const xmlChar *parmname, rpc_msg_t *msg, xml_node_t *methnode, const xmlChar **returl, val_value_t **retval)
Get the URL string for the config in the target param.
Definition: agt_util.c:2094
status_t agt_apply_patch_edit(ses_cb_t *scb, agt_edit_parms_cb_t *parms)
SIL version of the db_api_send_edt_full2 API.
Definition: agt_util.c:9205
void agt_set_depth(rpc_msg_t *msg)
Check if the <depth> parameter is set in the request message.
Definition: agt_util.c:5239
status_t agt_check_cache(val_value_t **cacheptr, val_value_t *newval, val_value_t *curval, op_editop_t editop)
check if a cache pointer needs to be changed or NULLed out
Definition: agt_util.c:4578
void agt_record_unique_error(ses_cb_t *scb, xml_msg_hdr_t *msghdr, val_value_t *errval, dlq_hdr_t *valuniqueQ)
Generate an rpc_err_rec_t and save it in the msg.
Definition: agt_util.c:2726
status_t agt_output_filter(ses_cb_t *scb, rpc_msg_t *msg, int32 indent)
output the proper data for the get or get-config operation generate the data that matched the subtree...
Definition: agt_util.c:3293
boolean agt_match_etag_binary(val_value_t *val, ncx_etag_t etag)
Check if the etag matches the specified value string.
Definition: agt_util.c:6163
status_t agt_add_idref_leafy(val_value_t *parentval, const xmlChar *modname, const xmlChar *leafname, const val_idref_t *leafval)
make a child node from a val_idref_t struct and add to parent.
Definition: agt_util.c:8468
xpath_pcb_t * agt_new_xpath_pcb(ses_cb_t *scb, const xmlChar *expr, status_t *res)
Get a new XPath parser control block and set up the server variable bindings.
Definition: agt_util.c:4645
val_value_t * agt_make_int64_key(int64 leafval)
make a generic key leaf node from an int64
Definition: agt_util.c:8680
status_t agt_disable_feature(const xmlChar *modname, const xmlChar *featurename)
Disable a YANG feature in the server.
Definition: agt_util.c:4111
val_value_t * agt_make_list(obj_template_t *parentobj, const xmlChar *listname, status_t *res)
make a val_value_t struct for a specified list
Definition: agt_util.c:4281
status_t agt_add_top_container(obj_template_t *obj, val_value_t **val)
make a val_value_t struct for a specified top-level container data node.
Definition: agt_util.c:4418
status_t agt_check_editop(op_editop_t pop, op_editop_t *cop, val_value_t *newnode, val_value_t *curnode, ncx_iqual_t iqual, ncx_protocol_t proto, boolean is_commit, boolean *delete_default)
Check if the edit operation is okay.
Definition: agt_util.c:3676
xpath_result_t * agt_get_result_from_xpath(xpath_pcb_t *pcb, val_value_t *rootval, status_t *retres)
Get the result from evaluating an XPath expression.
Definition: agt_util.c:5788
const val_value_t * agt_get_parmval(const xmlChar *parmname, rpc_msg_t *msg)
Get the identified val_value_t for a given parameter.
Definition: agt_util.c:2289
status_t agt_add_container(const xmlChar *modname, const xmlChar *objname, val_value_t *parentval, val_value_t **val)
make a val_value_t struct for a specified nested container data node.
Definition: agt_util.c:4476
xmlChar * agt_get_target_filespec(const xmlChar *target_url, status_t *res)
Figure out where to store the URL target file.
Definition: agt_util.c:4822
xmlChar * agt_get_startup_filespec(status_t *res)
Figure out where to store the startup file.
Definition: agt_util.c:4747
boolean agt_module_in_cli_valset(const xmlChar *modname)
Check if there is a module=foo parameter in the CLI parameter set.
Definition: agt_util.c:6803
void agt_clean_edit_parms(agt_edit_parms_cb_t *parms)
Clean a SIL edit_parms control clock.
Definition: agt_util.c:9060
agt_crl_mode_t agt_crl_mode_enum(const xmlChar *crl_mode)
Get the enum for the CRL mode string.
Definition: agt_util.c:7689
val_value_t * agt_make_object(obj_template_t *parentobj, const xmlChar *objname, status_t *res)
make a val_value_t struct for a specified node
Definition: agt_util.c:4307
val_value_t * agt_make_leaf(obj_template_t *parentobj, const xmlChar *leafname, const xmlChar *leafstrval, status_t *res)
make a string val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:4149
val_value_t * agt_get_first_result_val(xpath_result_t *result)
Get the first XPath result node or NULL if not node-set or empty node-set or not value node.
Definition: agt_util.c:5833
val_value_t * agt_add_top_node_if_missing(ncx_module_t *mod, const xmlChar *objname, boolean *added, status_t *res)
Add a top config node if it is missing.
Definition: agt_util.c:5417
val_value_t * agt_get_rpc_input(rpc_msg_t *msg)
Get the rpc input value node.
Definition: agt_util.c:7239
val_value_t * agt_make_int64_leaf2(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, int64 leafval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:6441
status_t agt_output_schema(ses_cb_t *scb, rpc_msg_t *msg, int32 indent)
generate the YANG file contents for the get-schema operation
Definition: agt_util.c:3438
boolean agt_check_config_false_default(xml_msg_hdr_t *mhdr, ncx_withdefaults_t withdef, boolean realtest, val_value_t *node)
Used by the <get> operation to return only content=nonconfig nodes and the ID ancestor node and only ...
Definition: agt_util.c:3125
val_value_t * agt_make_object2(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *objname, status_t *res)
make a val_value_t struct for a specified node
Definition: agt_util.c:6664
void agt_record_attr_error(ses_cb_t *scb, xml_msg_hdr_t *msghdr, ncx_layer_t layer, status_t res, const xml_attr_t *xmlattr, const xml_node_t *xmlnode, const xmlChar *badns, ncx_node_t nodetyp, void *errnode)
Generate an rpc_err_rec_t and save it in the msg.
Definition: agt_util.c:2554
status_t agt_validate_filter_nmda(rpc_msg_t *msg, val_value_t *filter, boolean is_subtree, boolean is_operational)
Validate the <filter> parameter; FOR NMDA ONLY.
Definition: agt_util.c:2910
xmlChar * agt_get_filespec_from_url(const xmlChar *urlstr, status_t *res)
Check the URL and get the filespec part out of it.
Definition: agt_util.c:2229
void agt_output_start_container(ses_cb_t *scb, xml_msg_hdr_t *mhdr, xmlns_id_t parent_nsid, xmlns_id_t node_nsid, const xmlChar *node_name, int32 indent)
Output a start container node.
Definition: agt_util.c:5872
val_value_t * agt_make_uint_leaf2(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, uint32 leafval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:6341
const xmlChar * agt_crl_mode_str(agt_crl_mode_t crl_mode)
Get the string for the CRL mode enum.
Definition: agt_util.c:7658
boolean agt_op_ok_for_maintenance_mode(const obj_template_t *rpcobj)
Check if the operation is OK for maintenance mode.
Definition: agt_util.c:7565
val_value_t * agt_make_int64_leaf(obj_template_t *parentobj, const xmlChar *leafname, int64 leafval, status_t *res)
make an int64 val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:4225
val_value_t * agt_make_bits_key(const ncx_list_t *leafval)
make a generic key leaf node from a bits struct
Definition: agt_util.c:8781
val_value_t * agt_make_empty_leaf(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, boolean boolval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list (NCX_BT_EMPTY)
Definition: agt_util.c:6627
op_editop_t agt_cvt_editop_acm(op_editop_t editop, const val_value_t *newval, const val_value_t *curval)
Determine the effective edit for NACM.
Definition: agt_util.c:6991
void agt_record_warning(ses_cb_t *scb, xml_msg_hdr_t *msghdr, ncx_layer_t layer, status_t res, const xml_node_t *xmlnode, ncx_node_t parmtyp, const void *error_parm, ncx_node_t nodetyp, void *error_path, const ncx_errinfo_t *errinfo)
Generate an rpc_err_rec_t and save it in the msg.
Definition: agt_util.c:2502
const xmlChar * agt_getTermReasonStr(ses_term_reason_t termreason)
Convert the termination reason enum to a string.
Definition: agt_util.c:7324
status_t agt_add_top_virtual(obj_template_t *obj, getcb_fn_t callbackfn)
make a val_value_t struct for a specified virtual top-level data node
Definition: agt_util.c:4363
val_value_t * agt_make_string_key(const xmlChar *leafval)
make a generic key leaf node from a string
Definition: agt_util.c:8580
status_t agt_set_with_defaults(rpc_msg_t *msg, const xmlChar *modname, val_value_t **errval)
Check if the <with-defaults> parameter is set in the request message, and if so, it is one of the ser...
Definition: agt_util.c:5116
status_t agt_output_empty(ses_cb_t *scb, rpc_msg_t *msg, int32 indent)
output no data for the get or get-config operation because the if-modified-since fileter did not pass
Definition: agt_util.c:3492
status_t agt_find_in_datastore(ncx_cfg_t cfg_id, val_value_t *err_value, val_value_t **retval)
Find the node (should be from an <edit-config> content node) in the specified datastore.
Definition: agt_util.c:7138
int agt_connect_client(const xmlChar *hostname, uint16_t port)
Start a TCP connection to a client.
Definition: agt_util.c:7049
void agt_set_basic_withdef_enabled(void)
Force the basic mode to be enabled in the agt_withdef_enabled bitmask.
Definition: agt_util.c:6829
val_value_t * agt_make_boolean_key(boolean leafval)
make a generic key leaf node from a boolean
Definition: agt_util.c:8705
val_value_t * agt_make_int_key(int32 leafval)
make a generic key leaf node from an int
Definition: agt_util.c:8630
uint32 agt_get_error_count(rpc_msg_t *msg)
Get the current number of errors in the rpc msg Q.
Definition: agt_util.c:7212
status_t agt_validate_filter_ex(ses_cb_t *scb, rpc_msg_t *msg, val_value_t *filter)
Validate the <filter> parameter if present (extended)
Definition: agt_util.c:2847
boolean agt_check_included_changes(agt_cfg_transaction_t *txcb, uint32 included_changes, obj_template_t *targobj)
Check an edit transaction to see if it has any edits that match the included_changes bitmask paramete...
Definition: agt_util.c:8075
status_t agt_init_edit_parms(agt_edit_parms_cb_t *parms, const xmlChar *patch_id_str, boolean system_edit, boolean skip_sil, const xmlChar *comment)
Initialize a SIL edit_parms control clock.
Definition: agt_util.c:9013
void agt_record_error_obj(ses_cb_t *scb, xml_msg_hdr_t *msghdr, status_t res, obj_template_t *errobj, const xmlChar *badval)
Generate an rpc_err_rec_t and save it in the msg Use the provided object for <rpc-error> fields.
Definition: agt_util.c:2373
op_editop_t agt_cvt_editop_ex(op_editop_t editop, const val_value_t *newval, const val_value_t *curval)
Determine the effective edit (if OP_EDITOP_COMMIT) Do not convert COMMIT to REPLACE same as cvt_edito...
Definition: agt_util.c:7012
val_value_t * agt_make_idref_leaf(obj_template_t *parentobj, const xmlChar *leafname, const val_idref_t *leafval, status_t *res)
make an identityref val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:4254
status_t agt_fill_dummy_method(const xmlChar *modname, const xmlChar *rpcname, xml_node_t *node, obj_template_t **rpcobj)
Fill the xml_node with the proper data to fake an XML node for the start of the rpc-method element.
Definition: agt_util.c:7790
status_t agt_add_patch_edit(agt_edit_parms_cb_t *parms, const xmlChar *edit_id_str, const xmlChar *edit_target, const xmlChar *edit_operation, const xmlChar *edit_xml_value, const xmlChar *insert_point, const xmlChar *insert_where)
Create an edit request and add to YANG Patch in progress.
Definition: agt_util.c:9113
val_value_t * agt_make_virtual_leaf2(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, getcb_fn_t callbackfn, status_t *res)
make a val_value_t struct for a specified virtual leaf or leaf-list
Definition: agt_util.c:6724
void agt_set_depth_nmda(rpc_msg_t *msg)
Check if the <depth> parameter is set NMDA max-depth parameter in the request message If so,...
Definition: agt_util.c:5298
void agt_record_insert_error(ses_cb_t *scb, xml_msg_hdr_t *msghdr, status_t res, val_value_t *errval)
Generate an rpc_err_rec_t and save it in the msg Called from the YANG edit validation code when an in...
Definition: agt_util.c:2647
status_t agt_get_cfg_from_parm(const xmlChar *parmname, rpc_msg_t *msg, xml_node_t *methnode, cfg_template_t **retcfg)
FUNCTION agt_get_cfg_from_parm.
Definition: agt_util.c:1855
void agt_free_edit_parms(agt_edit_parms_cb_t *parms)
Clean and free a SIL edit_parms control clock.
Definition: agt_util.c:9078
boolean agt_match_etag(val_value_t *val, const xmlChar *etag)
Check if the etag matches the specified value string.
Definition: agt_util.c:6127
boolean agt_apply_this_node_ex(op_editop_t editop, const val_value_t *newnode, const val_value_t *curnode, boolean ignore_defaults, boolean childonly, boolean top_replace)
Check if the write operation applies to the current node.
Definition: agt_util.c:5589
status_t agt_get_inline_cfg_from_parm(const xmlChar *parmname, rpc_msg_t *msg, xml_node_t *methnode, val_value_t **retval)
Get the val_value_t node for the inline config element.
Definition: agt_util.c:1992
val_value_t * agt_get_key_value(val_value_t *startval, val_value_t **lastkey)
Get the next expected key value in the ancestor chain.
Definition: agt_util.c:5356
boolean agt_check_default(xml_msg_hdr_t *mhdr, ncx_withdefaults_t withdef, boolean realtest, val_value_t *node)
Used by the <get*> operation to return only values not set to the default.
Definition: agt_util.c:3004
val_value_t * agt_make_uint64_key(uint64 leafval)
make a generic key leaf node from a uint64
Definition: agt_util.c:8655
boolean agt_get_ok_for_nolock(rpc_msg_t *msg)
Check if the get has filters and if they are OK for a <get> without waiting for a pthreads filter.
Definition: agt_util.c:7376
boolean agt_check_delete_all_allowed(obj_template_t *testobj)
Check if the delete-all or remove-all operation is enabled for for specified object.
Definition: agt_util.c:6874
void agt_output_start_node2(ses_cb_t *scb, xml_msg_hdr_t *mhdr, xmlns_id_t parent_nsid, xmlns_id_t node_nsid, const xmlChar *node_name, int32 indent, boolean try_modname, val_value_t *metaval)
Output a start node and try to use modname in front if needed.
Definition: agt_util.c:5963
void agt_output_start_errors_container(ses_cb_t *scb, xml_msg_hdr_t *mhdr, xmlns_id_t parent_nsid, xmlns_id_t nsid, const xmlChar *elname, const dlq_hdr_t *attrQ, boolean isattrq, int32 indent, boolean empty)
Output a start <errors> element on the specified session for RESTCONF error handling.
Definition: agt_util.c:6039
val_value_t * agt_make_union_leaf(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, const val_value_t *leafval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list use a val_value_t for a union
Definition: agt_util.c:6283
val_value_t * agt_make_int_leaf2(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, int32 leafval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:6374
boolean agt_apply_this_node(op_editop_t editop, const val_value_t *newnode, const val_value_t *curnode)
Check if the write operation applies to the current node.
Definition: agt_util.c:5552
ncx_cfg_t agt_get_edit_config_id(rpc_msg_t *rpcmsg)
Get the enum ID of the configuration that is being edited.
Definition: agt_util.c:6778
boolean agt_check_modtags(xml_msg_hdr_t *mhdr, ncx_withdefaults_t withdef, boolean realtest, val_value_t *node)
Used by the <get> and <get-config> operation to return report-all module-tags filtered data.
Definition: agt_util.c:3234
status_t agt_add_leafy(val_value_t *parentval, const xmlChar *modname, const xmlChar *leafname, const xmlChar *leafstrval)
make a child node from a string and add to parent.
Definition: agt_util.c:8140
void agt_set_with_owners(rpc_msg_t *msg)
Check if the <with-owners> parameter is set in the request message.
Definition: agt_util.c:5183
val_value_t * agt_make_bits_leaf(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, const ncx_list_t *listval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list (NCX_BT_BITS or NCX_BT_SLIST)
Definition: agt_util.c:6555
status_t agt_set_val_defaults(val_value_t *val)
Check for any node-level config leafs that have a default value, and add them to the running configur...
Definition: agt_util.c:5072
status_t agt_add_boolean_leafy(val_value_t *parentval, const xmlChar *modname, const xmlChar *leafname, boolean boolval)
make a child node from a boolean and add to parent.
Definition: agt_util.c:8411
xmlChar * agt_make_srid_filespec(const xmlChar *basestr, const xmlChar *patstr, const xmlChar *valstr)
Make a filespec string needed for a filespec with SRID in it.
Definition: agt_util.c:4668
val_nodetest_fn_t agt_util_get_testfn(xml_msg_hdr_t *msg, boolean getop)
Get the test function that should be used for a specific get operation based on with-default paramete...
Definition: agt_util.c:7724
val_value_t * agt_make_uint64_leaf(obj_template_t *parentobj, const xmlChar *leafname, uint64 leafval, status_t *res)
make a uint64 val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:4206
status_t agt_set_mod_defaults(ncx_module_t *mod, val_value_t *valroot, boolean set_candidate, boolean set_augment, boolean force)
Check for any top-level config leafs that have a default value, and add them to the running configura...
Definition: agt_util.c:4934
status_t agt_add_int_leafy(val_value_t *parentval, const xmlChar *modname, const xmlChar *leafname, int32 leafval)
make a child node from a int32 and add to parent.
Definition: agt_util.c:8248
val_value_t * agt_make_idref_key(const val_idref_t *leafval)
make a generic key leaf node from an idref struct
Definition: agt_util.c:8726
val_value_t * agt_make_uint64_leaf2(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, uint64 leafval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:6407
status_t agt_add_uint_leafy(val_value_t *parentval, const xmlChar *modname, const xmlChar *leafname, uint32 leafval)
make a child node from a uint32 and add to parent.
Definition: agt_util.c:8194
status_t(* getcb_fn_t)(ses_cb_t *scb, getcb_mode_t cbmode, const val_value_t *virval, val_value_t *dstval)
GET1 Callback function for agent node get handler.
Definition: getcb.h:650
op_editop_t
NETCONF edit-config operation types.
Definition: op.h:122
boolean(* val_nodetest_fn_t)(xml_msg_hdr_t *mhdr, ncx_withdefaults_t withdef, boolean realtest, val_value_t *node)
user function callback template to test output of a specified node.
Definition: val_util.h:132
status_t
global error return code
Definition: status_enum.h:210
ses_term_reason_t
Session Termination reason.
Definition: ses.h:417
uint16 xmlns_id_t
integer handle for registered namespaces
Definition: xmlns.h:89
ncx_node_t
NCX Internal Node Types.
Definition: ncxtypes.h:437
uint32 ncx_etag_t
The ETag used in RESTCONF messages is the lower 32 bits of a ncx_transaction_id_t.
Definition: ncxtypes.h:771
ncx_cfg_t
hardwire the 3 standard configs
Definition: ncxtypes.h:548
ncx_iqual_t
The instance qualifier types are borrowed from ABNF and RelaxNG.
Definition: ncxtypes.h:460
ncx_protocol_t
NCX session protocol versions supported.
Definition: ncxtypes.h:1001
ncx_layer_t
Enumeration of NETCONF protocol layers.
Definition: ncxtypes.h:507
ncx_withdefaults_t
enum for with-defaults enum values
Definition: ncxtypes.h:1278
Contains NCX constants.
YANG module data structures Many internal representations of YANG module constructs.
Data Object Support.
NETCONF protocol remote procedure call common definitions.
NETCONF Session Common definitions module.
Global error messages for status code enumerations.
Transaction Control Block.
Definition: agt_cfg.h:235
struct to contain all agt_send_edit parameters
Definition: agt.h:1980
struct representing 1 configuration database
Definition: cfg.h:229
YANG error info statement struct used to override default error handling in the server.
Definition: ncxtypes.h:1366
header for a NCX List
Definition: ncxtypes.h:859
representation of one module or submodule during and after parsing
Definition: ncxtypes.h:1138
One YANG data-def-stmt.
Definition: obj.h:1229
NETCONF Server and Client RPC Request/Reply Message Header.
Definition: rpc.h:185
Session Control Block.
Definition: ses.h:573
one QName for the NCX_BT_IDREF value
Definition: val.h:795
one value to match one type
Definition: val.h:912
represents one attribute
Definition: xml_util.h:159
Common Encoding Message Header No longer XML specific!! Used by JSON and CBOR parsing as well!...
Definition: xml_msg.h:404
gather node data into a simple struct.
Definition: xml_util.h:207
XPath parser control block.
Definition: xpath.h:754
XPath expression result.
Definition: xpath.h:705
One YANG Patch Request.
Definition: yang_patch.h:155
Value Node Basic Support.
XML and JSON Message send and receive support.
XML Utilities.
Schema and data model Xpath search support.
YANG Patch Media Type.