101#define XML_MSG_FL_PREFIX bit0
104#define XML_MSG_FL_ETAGS bit1
107#define XML_MSG_FL_ETAGS_TEST bit2
112#define XML_MSG_FL_TSTAMPS bit3
115#define XML_MSG_FL_TSTAMPS_TEST bit4
118#define XML_MSG_FL_KEYS bit5
121#define XML_MSG_FL_PASSED bit6
130#define XML_MSG_FL_DELTA bit7
135#define XML_MSG_FL_OWNERS bit8
140#define XML_MSG_FL_GET2 bit9
143#define XML_MSG_FL_MODTAGS bit10
146#define XML_MSG_FL_MODTAGS_EMPTY bit11
149#define XML_MSG_FL_ANYXML_TRACK bit12
152#define XML_MSG_FL_WITH_METADATA bit13
159#define XML_MSG_FL_FOUND_METADATA bit14
163#define XML_MSG_USE_PREFIX(M) ((M)->flags & XML_MSG_FL_PREFIX)
166#define XML_MSG_NO_PREFIX(M) ((M)->flags &= ~XML_MSG_FL_PREFIX)
172#define XML_MSG_WITH_ETAGS(M) ((M)->flags & XML_MSG_FL_ETAGS)
175#define XML_MSG_WITH_ETAGS_TEST(M) ((M)->flags & XML_MSG_FL_ETAGS_TEST)
178#define XML_MSG_SET_WITH_ETAGS(M) (M)->flags |= XML_MSG_FL_ETAGS
181#define XML_MSG_SET_WITH_ETAGS_TEST(M) (M)->flags |= XML_MSG_FL_ETAGS_TEST
184#define XML_MSG_CLR_WITH_ETAGS_TEST(M) (M)->flags &= ~XML_MSG_FL_ETAGS_TEST
190#define XML_MSG_WITH_TSTAMPS(M) ((M)->flags & XML_MSG_FL_TSTAMPS)
193#define XML_MSG_WITH_TSTAMPS_TEST(M) ((M)->flags & XML_MSG_FL_TSTAMPS_TEST)
196#define XML_MSG_SET_WITH_TSTAMPS(M) (M)->flags |= XML_MSG_FL_TSTAMPS
199#define XML_MSG_SET_WITH_TSTAMPS_TEST(M) (M)->flags |= XML_MSG_FL_TSTAMPS_TEST
202#define XML_MSG_CLR_WITH_TSTAMPS_TEST(M) (M)->flags &= ~XML_MSG_FL_TSTAMPS_TEST
205#define XML_MSG_TSTAMPS_PASSED(M) ((M)->flags & XML_MSG_FL_PASSED)
208#define XML_MSG_SET_TSTAMPS_PASSED(M) (M)->flags |= XML_MSG_FL_PASSED
211#define XML_MSG_DELTA(M) ((M)->flags & XML_MSG_FL_DELTA)
214#define XML_MSG_SET_DELTA(M) (M)->flags |= XML_MSG_FL_DELTA
218#define XML_MSG_KEYS_ONLY(M) ((M)->flags & XML_MSG_FL_KEYS)
221#define XML_MSG_SET_KEYS_ONLY(M) (M)->flags |= XML_MSG_FL_KEYS
226#define XML_MSG_WITH_OWNERS(M) ((M)->flags & XML_MSG_FL_OWNERS)
229#define XML_MSG_SET_WITH_OWNERS(M) (M)->flags |= XML_MSG_FL_OWNERS
232#define XML_MSG_CLR_WITH_OWNERS(M) (M)->flags &= ~XML_MSG_FL_OWNERS
238#define XML_MSG_WITH_GET2(M) ((M)->flags & XML_MSG_FL_GET2) ? TRUE : FALSE
241#define XML_MSG_SET_WITH_GET2(M) (M)->flags |= XML_MSG_FL_GET2
244#define XML_MSG_CLR_WITH_GET2(M) (M)->flags &= ~XML_MSG_FL_GET2
247#define XML_MSG_SET_LOOKUPQ(M,Q) (M)->lookupQ = Q
250#define XML_MSG_SET_MATCHQ(M,Q) (M)->matchQ = Q
253#define XML_MSG_SET_SELECTQ(M,Q) (M)->selectQ = Q
259#define XML_MSG_ANYXML_TRACK(M) ((M)->flags & XML_MSG_FL_ANYXML_TRACK)
262#define XML_MSG_SET_ANYXML_TRACK(M) (M)->flags |= XML_MSG_FL_ANYXML_TRACK
265#define XML_MSG_CLR_ANYXML_TRACK(M) (M)->flags &= ~XML_MSG_FL_ANYXML_TRACK
268#define XML_MSG_ANYXML_OBJ(M) (M)->anyxml_obj
271#define XML_MSG_GET_ERROR_DATAQ(M) &(M)->error_dataQ
274#define XML_MSG_ACTIONVAL(M) (M)->actionval
277#define XML_MSG_GETBULK(M) (M)->getbulk_cb
280#define XML_MSG_GET2_TARGET(M) (M)->get2_target
283#define XML_MSG_GET2CB(M) (M)->get2cb
288#define XML_MSG_WITH_MODTAGS(M) ((M)->flags & XML_MSG_FL_MODTAGS)
291#define XML_MSG_SET_WITH_MODTAGS(M) (M)->flags |= XML_MSG_FL_MODTAGS
294#define XML_MSG_WITH_MODTAGS_EMPTY(M) \
295 ((M)->flags & XML_MSG_FL_MODTAGS_EMPTY)
298#define XML_MSG_SET_WITH_MODTAGS_EMPTY(M) \
299 (M)->flags |= XML_MSG_FL_MODTAGS_EMPTY
302#define XML_MSG_YPGNMI_GETCB(M) (M)->gnmi_getcb
305#define XML_MSG_YPGNMI_EDITCB(M) (M)->gnmi_editcb
308#define XML_MSG_PRUNE_BAD_DATA(M) (M)->prune_bad_data
311#define XML_MSG_XGET_REQ(M) (M)->xget_request
314#define XML_MSG_ALLINONE_MODE(M) (M)->all_in_one_mode
319#define XML_MSG_LAST_GET2_FILPTR(M) (M)->get2_filptr
322#define XML_MSG_GET2CB_ALLINONE(M) (M)->get2cb
326#define XML_MSG_NMDA_PARAMS(M) (M)->nmda_params
329#define XML_MSG_WITH_ORIGIN(M) \
330 ((M)->nmda_params && (M)->nmda_params->with_origin)
333#define XML_MSG_EDIT_CONFIG_ROOT(M) (M)->edit_config_root
336#define XML_MSG_DEPTH_TARGET(M) (M)->depth_target
340#define XML_MSG_NMDA_OPERATIONAL(M) \
341 ((M)->nmda_params && \
342 ((M)->nmda_params->nmda_ds == NCX_NMDA_DS_OPERATIONAL))
349#define XML_MSG_SM_MPID(M) (M)->sm_mpid
352#define XML_MSG_SID_LOWER(M) (M)->sid_lower
356#define XML_MSG_SID_UPPER(M) (M)->sid_upper
359#define XML_MSG_SID_SKIP(M) (M)->sid_skip
362#define XML_MSG_PARENT_SID(M) (M)->parent_sid
370#define XML_MSG_ACTION_PARENT(M) (M)->action_parent
380#define XML_MSG_ACTION_PARENT_MODE(M) (M)->action_parent_mode
387#define XML_MSG_SKIP_EMPTY_NPCON(M) (M)->skip_empty_npcon
395#define XML_MSG_PRE_PROCESS_MODE(M) (M)->pre_process_mode
399#define XML_MSG_JSON_PARSE_NOTIF(M) (M)->json_parse_notif
408#define XML_MSG_JSON_WR_FIXTOP(M) (M)->json_wr_fixtop
415#define XML_MSG_YANG_PUSH_FIX(M) (M)->yang_push_fix
422#define XML_MSG_JSON_WR_FIXSPACE(M) (M)->json_wr_fixspace
432#define XML_MSG_YANG_PUSH_MODE(M) (M)->yang_push_mode
438#define XML_MSG_WITH_METADATA(M) ((M)->flags & XML_MSG_FL_WITH_METADATA)
441#define XML_MSG_SET_WITH_METADATA(M) (M)->flags |= XML_MSG_FL_WITH_METADATA
444#define XML_MSG_CLR_WITH_METADATA(M) (M)->flags &= ~XML_MSG_FL_WITH_METADATA
450#define XML_MSG_FOUND_METADATA(M) ((M)->flags & XML_MSG_FL_FOUND_METADATA)
453#define XML_MSG_SET_FOUND_METADATA(M) (M)->flags |= XML_MSG_FL_FOUND_METADATA
456#define XML_MSG_CLR_FOUND_METADATA(M) (M)->flags &= ~XML_MSG_FL_FOUND_METADATA
476typedef struct xml_msg_hdr_t_ {
702 struct xpath_pcb_t_ *action_parent;
707 boolean action_parent_mode;
724 boolean pre_process_mode;
778 const xmlChar *badval);
799 const xmlChar *badval,
818 struct obj_template_t_ *errobj,
819 const xmlChar *badval);
831 const xmlChar *username,
860 const void *error_info,
892 const void *error_info,
923 const xmlChar *badns,
975extern const xmlChar *
1002extern const xmlChar *
1017extern const xmlChar *
1096 const xmlChar *badns,
1255 uint32 start_depth);
1330 boolean test_sense);
1357 boolean test_sense);
1428 const struct obj_template_t_ *obj);
uint32 xml_msg_get_max_depth(xml_msg_hdr_t *msg)
Get the message max_depth value.
Definition: xml_msg.c:1366
void xml_msg_save_filptr(xml_msg_hdr_t *msg, ncx_filptr_t *filptr)
Store current message subtree filter in the Queue for later cleanup.
Definition: xml_msg.c:1869
const xmlChar * xml_msg_get_prefix_xpath(xml_msg_hdr_t *msg, xmlns_id_t nsid)
Get the module prefix for XPath.
Definition: xml_msg.c:652
void(* xml_msg_record_attr_error_fn_t)(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: xml_msg.h:917
status_t xml_msg_set_with_origin(xml_msg_hdr_t *mhdr)
Set the with-origin parameter to true.
Definition: xml_msg.c:1892
boolean xml_msg_test_max_depth(xml_msg_hdr_t *mhdr, const struct obj_template_t_ *obj)
Test the max_depth parameter if needed.
Definition: xml_msg.c:1779
void xml_msg_set_encoding(xml_msg_hdr_t *msg, boolean is_output, ncx_display_mode_t encoding)
Set the message encoding value.
Definition: xml_msg.c:1525
void xml_msg_set_start_depth(xml_msg_hdr_t *msg, uint32 start_depth)
Set the message start_depth value.
Definition: xml_msg.c:1425
status_t xml_msg_gen_xmlns_attrs(xml_msg_hdr_t *msg, xml_attrs_t *attrs, boolean addncx)
Generate any xmlns directives in the top-level attribute Q.
Definition: xml_msg.c:1048
uint32 xml_msg_get_msgid(xml_msg_hdr_t *msg)
Get the message sequence ID in the message.
Definition: xml_msg.c:1308
status_t xml_msg_finish_prefix_map(xml_msg_hdr_t *msg, xml_attrs_t *attrs)
Finish the queue of xmlns_pmap_t records for the current message.
Definition: xml_msg.c:900
ncx_etag_t xml_msg_get_etag(xml_msg_hdr_t *msg, boolean *test)
Get the message etag match value and test sense.
Definition: xml_msg.c:1554
uint32 xml_msg_get_cur_depth(xml_msg_hdr_t *msg)
Get the message cur_depth value.
Definition: xml_msg.c:1446
void xml_msg_dec_cur_depth(xml_msg_hdr_t *mhdr)
Decrement the cur_depth parameter if needed.
Definition: xml_msg.c:1739
boolean(* xml_msg_authfn_t)(xml_msg_hdr_t *msg, const xmlChar *username, const val_value_t *val)
read authorization callback template
Definition: xml_msg.h:830
void(* xml_msg_obj_error_fn_t)(ses_cb_t *scb, xml_msg_hdr_t *mhdr, status_t res, struct obj_template_t_ *errobj, const xmlChar *badval)
Record an rpc-error for YANG-API/RESTCONF response translation.
Definition: xml_msg.h:815
dlq_hdr_t * xml_msg_get_lookupQ(xml_msg_hdr_t *msg)
Get the GET2 lookup Queue.
Definition: xml_msg.c:1659
const xmlChar * xml_msg_get_prefix_start_tag(xml_msg_hdr_t *msg, xmlns_id_t nsid)
Find the namespace prefix for the specified namespace ID.
Definition: xml_msg.c:705
void xml_msg_set_cur_depth(xml_msg_hdr_t *msg, uint32 cur_depth)
Set the message cur_depth value.
Definition: xml_msg.c:1465
uint32 xml_msg_get_start_depth(xml_msg_hdr_t *msg)
Get the message start_depth value.
Definition: xml_msg.c:1406
const xmlChar * xml_msg_get_prefix(xml_msg_hdr_t *msg, xmlns_id_t parent_nsid, xmlns_id_t nsid, val_value_t *curelem, boolean *xneeded)
Find the namespace prefix for the specified namespace ID If it is not there then create one.
Definition: xml_msg.c:534
void(* xml_msg_val_error_fn_t)(ses_cb_t *scb, xml_msg_hdr_t *mhdr, status_t res, val_value_t *errnode, const xmlChar *badval)
Record an rpc-error for YANG-API/RESTCONF response translation.
Definition: xml_msg.h:774
status_t xml_msg_clean_defns_attr(xml_attrs_t *attrs)
Get rid of an xmlns=foo default attribute.
Definition: xml_msg.c:1145
void xml_msg_init(void)
Init this module.
Definition: xml_msg.c:1235
void(* xml_msg_record_error_errinfo_fn_t)(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 the provided error info record for <rpc-error> f...
Definition: xml_msg.h:886
ncx_withdefaults_t xml_msg_get_withdef(xml_msg_hdr_t *msg)
Get the message withdef enum.
Definition: xml_msg.c:1326
status_t xml_msg_build_prefix_map(xml_msg_hdr_t *msg, xml_attrs_t *attrs, boolean addncid, boolean addncxid)
Build a queue of xmlns_pmap_t records for the current message.
Definition: xml_msg.c:854
status_t xml_msg_check_xmlns_attr(xml_msg_hdr_t *msg, xmlns_id_t nsid, const xmlChar *badns, xml_attrs_t *attrs)
Check the default NS and the prefix map in the msg;.
Definition: xml_msg.c:970
void xml_msg_inc_cur_depth(xml_msg_hdr_t *mhdr)
Increment the cur_depth parameter if needed.
Definition: xml_msg.c:1714
void xml_msg_cleanup(void)
Cleanup this module.
Definition: xml_msg.c:1245
dlq_hdr_t * xml_msg_get_selectQ(xml_msg_hdr_t *msg)
Get the GET2 select Queue.
Definition: xml_msg.c:1695
time_t xml_msg_get_tstamp(xml_msg_hdr_t *msg, boolean *test)
Get the message timestamp match value and test sense.
Definition: xml_msg.c:1609
void(* xml_msg_val_errinfo_fn_t)(ses_cb_t *scb, xml_msg_hdr_t *mhdr, status_t res, val_value_t *errnode, const xmlChar *badval, const ncx_errinfo_t *errinfo)
Record an rpc-error for YANG-API/RESTCONF response translation Add errinfo struct if present.
Definition: xml_msg.h:795
void xml_msg_set_tstamp(xml_msg_hdr_t *msg, time_t tstamp, boolean test_sense)
Set the timestamp match parameters.
Definition: xml_msg.c:1632
ncx_display_mode_t xml_msg_get_encoding(xml_msg_hdr_t *msg, boolean is_output)
Get the message encoding value.
Definition: xml_msg.c:1497
void xml_msg_clean_hdr(xml_msg_hdr_t *msg)
Clean all the memory used by the specified xml_msg_hdr_t but do not free the struct itself.
Definition: xml_msg.c:440
dlq_hdr_t * xml_msg_get_matchQ(xml_msg_hdr_t *msg)
Get the GET2 match Queue.
Definition: xml_msg.c:1677
status_t xml_msg_add_ncid_to_prefix_map(xml_msg_hdr_t *msg, xml_attrs_t *attrs, xmlns_id_t ncid)
Add an ncid or ncxid to a prefix map.
Definition: xml_msg.c:1192
void xml_msg_set_withdef(xml_msg_hdr_t *msg, ncx_withdefaults_t withdef)
Set the message withdef enum.
Definition: xml_msg.c:1345
status_t xml_msg_gen_new_prefix(xml_msg_hdr_t *msg, xmlns_id_t nsid, xmlChar **retbuff, uint32 buffsize)
Generate a new namespace prefix.
Definition: xml_msg.c:742
void xml_msg_set_etag(xml_msg_hdr_t *msg, ncx_etag_t etag, boolean test_sense)
Set the etag match parameters.
Definition: xml_msg.c:1577
void xml_msg_set_cfgid(xml_msg_hdr_t *msg, ncx_cfg_t cfgid)
Set the config ID in the message.
Definition: xml_msg.c:1258
void xml_msg_set_max_depth(xml_msg_hdr_t *msg, uint32 max_depth)
Set the message max_depth value.
Definition: xml_msg.c:1385
void(* xml_msg_record_error_fn_t)(ses_cb_t *scb, xml_msg_hdr_t *mhdr, 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: xml_msg.h:854
status_t
global error return code
Definition: status_enum.h:219
uint16 xmlns_id_t
integer handle for registered namespaces
Definition: xmlns.h:89
dlq_hdr_t xml_attrs_t
queue of xml_attr_t
Definition: xml_util.h:155
ncx_node_t
NCX Internal Node Types.
Definition: ncxtypes.h:460
uint32 ncx_etag_t
The ETag used in RESTCONF messages is the lower 32 bits of a ncx_transaction_id_t.
Definition: ncxtypes.h:777
ncx_cfg_t
hardwire the 3 standard configs
Definition: ncxtypes.h:571
ncx_layer_t
Enumeration of NETCONF protocol layers.
Definition: ncxtypes.h:530
ncx_display_mode_t
enumeration of val_dump_value display modes Some RESTCONF code uses this field incorrectly for messag...
Definition: ncxtypes.h:641
ncx_withdefaults_t
enum for with-defaults enum values
Definition: ncxtypes.h:1332
YANG module data structures Many internal representations of YANG module constructs.
Global error messages for status code enumerations.
YANG error info statement struct used to override default error handling in the server.
Definition: ncxtypes.h:1420
struct for holding r/o pointer to generic internal node for filtering purposes
Definition: ncxtypes.h:1100
internal NMDA get-data state parameters; rest of parameter are stored directly in the xml_msg_hdr_t u...
Definition: ncxtypes.h:1717
Moint Point Instance This struct lives in a val_value_t.val_extra struct.
Definition: ncxtypes.h:1869
Session Control Block.
Definition: ses.h:759
one value to match one type
Definition: val.h:1024
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:476
dlq_hdr_t filptr_cleanupQ
internal processing of filter parameters
Definition: xml_msg.h:497
boolean json_wr_fixspace
JSON Write of a SID File (or any output) that wants to fix the missing space in simple values Style i...
Definition: xml_msg.h:751
dlq_hdr_t error_dataQ
Q of nodes to add to the <error-info> element each node must be a proper val_value_t; A valid module ...
Definition: xml_msg.h:519
time_t match_tstamp
match timestamp used for RESTCONF conditionals
Definition: xml_msg.h:561
void * val_errinfo_fn
xml_msg_val_error_errinfo_fn_t val_error_fn
Definition: xml_msg.h:579
void * obj_error_fn
xml_msg_obj_error_fn_t obj_error_fn
Definition: xml_msg.h:582
ncx_sid_t parent_sid
YANG Parent SID to use when outputing data in pieces and callbacks instead of from a val_value_t or o...
Definition: xml_msg.h:694
dlq_hdr_t * aiocbQ
BACK POINTER TO Q of backptr AIO control blocks.
Definition: xml_msg.h:642
uint32 max_depth
max-depth value, 0=ignore
Definition: xml_msg.h:556
boolean all_in_one_mode
TRUE if this is All in One mode.
Definition: xml_msg.h:631
val_value_t * edit_config_root
if this is an edit request then the <config> root needs to be saved in the message header to allow NA...
Definition: xml_msg.h:655
void * record_error
xml_msg_record_error_fn_t record_error
Definition: xml_msg.h:585
dlq_hdr_t * matchQ
GET2 matchQ used to select only specific nodes.
Definition: xml_msg.h:525
dlq_hdr_t prefixQ
prefixQ: (incoming) All the namespace decls that were in the <rpc> request are used in the <rpc-reply...
Definition: xml_msg.h:489
ncx_display_mode_t output_encoding
RESTCONF output encoding.
Definition: xml_msg.h:570
dlq_hdr_t * lookupQ
GET2 lookup parameters provide ancestor keys.
Definition: xml_msg.h:522
uint32 cur_depth
current depth value
Definition: xml_msg.h:558
ncx_sid_t sid_upper
YANG SID upper bound filter.
Definition: xml_msg.h:684
ncx_etag_t match_etag
match ETag used for RESTCONF conditionals
Definition: xml_msg.h:564
struct agt_acm_cache_t_ * acm_cache
server access control for database reads and writes; !!! shadow pointer to per-session cache,...
Definition: xml_msg.h:534
dlq_hdr_t revcount_revQ
internal processing of revision count backptr to found modules->rev in revision count search processi...
Definition: xml_msg.h:719
ncx_withdefaults_t withdef
with-defaults value
Definition: xml_msg.h:481
struct getcb_get2_t_ * get2cb
GET2 control block needed in NACM data rule processing set and cleared for each ACM check needed; bac...
Definition: xml_msg.h:609
void * record_attr_error
xml_msg_record_attr_error_fn_t record_attr_error
Definition: xml_msg.h:591
struct tk_chain_t_ * tkc
used for RESTCONF JSON parsing
Definition: xml_msg.h:573
val_value_t * actionval
support for the YANG 1.1 <action> data tree that is used to derive keys during invocation of the call...
Definition: xml_msg.h:596
dlq_hdr_t modtagQ
Q of backptr to module-tag filter control block.
Definition: xml_msg.h:612
uint32 start_depth
for nested GET2, 0=ignore
Definition: xml_msg.h:557
uint32 msgid
incremented on every initialized message header rolls over at MAX_UINT32 back to zero used by agt_acm...
Definition: xml_msg.h:541
void * acm_cbfn
agent access control read authorization callback function: xml_msg_authfn_t
Definition: xml_msg.h:554
struct getbulk_cb_t_ * getbulk_cb
getbulk control block to save parameters and state for <getbulk>
Definition: xml_msg.h:599
struct obj_template_t_ * get2_target
GET2 nested target needs to be saved so callback code can filter out nodes that are not being request...
Definition: xml_msg.h:604
struct obj_template_t_ * depth_target
GET2 nested depth target needs to be saved so xml_msg_test_max_depth can produce a correct response a...
Definition: xml_msg.h:660
boolean json_parse_notif
JSON Parse of a notification requires some help The mgr_top_dispatch_json_msg function will set this ...
Definition: xml_msg.h:731
boolean prune_bad_data
flag set if parsing a config file prune bad data for startup-error=continue
Definition: xml_msg.h:623
boolean yang_push_fix
YANG Push Fix mode: needed for agt_output_filter when a JSON YANG Push update with a subtree filter i...
Definition: xml_msg.h:744
dlq_hdr_t errQ
errors are collected in this queue when agt_record_error is invoked
Definition: xml_msg.h:494
dlq_hdr_t * selectQ
GET2 selectQ used in alternate way to select only specific nodes.
Definition: xml_msg.h:528
struct ypgnmi_get_cb_t_ * gnmi_getcb
gnmi control block to save parameters and state for gnmi <get>
Definition: xml_msg.h:615
struct ypgnmi_edit_cb_t_ * gnmi_editcb
gnmi control block to save parameters and state for gnmi <get>
Definition: xml_msg.h:618
ncx_sid_t sid_lower
YANG SID lower bound filter.
Definition: xml_msg.h:677
struct obj_template_t_ * anyxml_obj
object pointer used by server to track real object properties for certain anyxml or anydata nodes suc...
Definition: xml_msg.h:648
ncx_nmda_params_t * nmda_params
NMDA suport for get-data.
Definition: xml_msg.h:639
boolean json_wr_fixtop
JSON Write fixup the first start object to align with GET2 callback start_complex_node.
Definition: xml_msg.h:736
ncx_sm_mpid_t * sm_mpid
Mount Point Instance used in an RPC or ACTION.
Definition: xml_msg.h:670
boolean skip_empty_npcon
support return-empty-npcontainers=false only set in rpc-reply if OK to skip empty NP containers.
Definition: xml_msg.h:714
void * record_error_errinfo
xml_msg_record_error_errinfo_fn_t record_error_errinfo
Definition: xml_msg.h:588
boolean sid_skip
Flag to indicate YANG SID SKIP DATA Mode is active.
Definition: xml_msg.h:687
ncx_display_mode_t input_encoding
RESTCONF input encoding.
Definition: xml_msg.h:567
boolean cfgid_valid
flag needed since ncx_cfg_t uses value zero for running config
Definition: xml_msg.h:549
ncx_cfg_t cfgid
the xml_msg_set_cfgid function is used by the retrieval operation (e.g., <get>, <get-config> to set t...
Definition: xml_msg.h:546
void * val_error_fn
xml_msg_val_error_fn_t val_error_fn
Definition: xml_msg.h:576
uint16 flags
internal message flags
Definition: xml_msg.h:479
boolean xget_request
flag set if <get> request is for XPath filtering.
Definition: xml_msg.h:628
boolean yang_push_mode
YANG Push mode: needed for agt_output_filter when any YANG Push update is in progress Set to true ent...
Definition: xml_msg.h:757
struct ncx_filptr_t_ * get2_filptr
The last GET2 Filter Pointer; may be used in case there are some All in One nodes still left.
Definition: xml_msg.h:636
gather node data into a simple struct.
Definition: xml_util.h:207
Value Node Basic Support.