65#define OBJ_KEYOBJ(KO) (KO)->keyobj
68#define OBJ_DEF_CONFIG TRUE
71#define OBJ_DEF_MANDATORY FALSE
75#define OBJ_NUM_XPATH_BACKPTRS 2
78#define OBJ_DEF_SIL_PRIORITY 255
79#define OBJ_MIN_SIL_PRIORITY 1
80#define OBJ_MAX_SIL_PRIORITY 255
86#define OBJ_FL_CLONE bit0
89#define OBJ_FL_CLI_TEXT_BLOCK bit1
95#define OBJ_FL_AUGCLONE bit2
98#define OBJ_FL_DELETED bit3
101#define OBJ_FL_CDIRTY bit4
104#define OBJ_FL_TOP bit5
109#define OBJ_FL_EMPTY bit6
112#define OBJ_FL_SEEN bit7
118#define OBJ_FL_RDIRTY bit7
121#define OBJ_FL_DIFF bit8
124#define OBJ_FL_HIDDEN bit9
127#define OBJ_FL_ROOT bit10
130#define OBJ_FL_PASSWD bit11
133#define OBJ_FL_CLI bit12
136#define OBJ_FL_XSDLIST bit13
139#define OBJ_FL_KEY bit14
142#define OBJ_FL_ABSTRACT bit15
145#define OBJ_FL_CONFSET bit16
148#define OBJ_FL_CONFIG bit17
151#define OBJ_FL_MANDSET bit18
154#define OBJ_FL_MANDATORY bit19
157#define OBJ_FL_UNIQUE bit20
160#define OBJ_FL_XPATH bit21
163#define OBJ_FL_QNAME bit22
166#define OBJ_FL_SCHEMAINST bit23
169#define OBJ_FL_SECURE bit24
172#define OBJ_FL_VERY_SECURE bit25
175#define OBJ_FL_CLI_EQUALS_OK bit26
178#define OBJ_FL_SIL_DELETE_CHILDREN_FIRST bit27
181#define OBJ_FL_BLOCK_CREATE bit28
184#define OBJ_FL_BLOCK_UPDATE bit29
187#define OBJ_FL_BLOCK_DELETE bit30
190#define OBJ_FL_RPC_ROOT bit31
196#define OBJ_FL_DEF_NPCON bit0
202#define OBJ_FL_ENABLED_CHK bit1
207#define OBJ_FL_ENABLED bit2
212#define OBJ_FL_DUP_LOCAL bit3
218#define OBJ_FL_EXCLUSIVE_RPC bit4
223#define OBJ_FL_SIL_FORCE_REPLAY bit5
228#define OBJ_FL_SIL_FORCE_REPLACE_REPLAY bit6
235#define OBJ_FL_DATAPATH bit7
241#define OBJ_FL_REMOTE_GET2 bit8
246#define OBJ_FL_FREE_UNITS bit9
251#define OBJ_FL_FREE_TYPDEF bit10
255#define OBJ_FL_EDIT2_MODE bit11
261#define OBJ_FL_SKIP_LEAFREF bit12
267#define OBJ_FL_YANG_HASH bit13
272#define OBJ_FL_YANG_REHASH bit14
277#define OBJ_FL_CBSET_MALLOCED bit15
280#define OBJ_FL_GENERIC bit16
284#define OBJ_FL_DEF_DONE bit17
288#define OBJ_FL_DEF bit18
291#define OBJ_FL_LIBMODE bit19
294#define OBJ_FL_SMIV2_OID bit20
297#define OBJ_FL_NO_NVSTORE bit21
300#define OBJ_FL_NO_SIL_DELETE_CHILDREN_FIRST bit22
303#define OBJ_FL_YANGMAP_SOURCE bit23
306#define OBJ_FL_YANGMAP_TARGET bit24
309#define OBJ_FL_YANGMAP_CHILD bit25
312#define OBJ_FL_YANGMAP_KEY bit26
315#define OBJ_FL_DUP_LOCAL_DONE bit27
322#define OBJ_FL_TRANS_HOOK_SET bit29
328#define OBJ_FL_GET_WHEN_SET bit30
334#define OBJ_FL_GET_WHEN bit31
343#define OBJ_FL_AIO_GET2 bit0
352#define OBJ_FL_AIO_PARENT bit1
358#define OBJ_FL_AIO_GET2_XML bit2
364#define OBJ_FL_AIO_GET2_JSON bit3
370#define OBJ_FL_DEF_HOOK bit4
376#define OBJ_FL_OC_HASHED_VALUE bit5
382#define OBJ_FL_BAN_NOLOCK_GET bit6
388#define OBJ_FL_MOUNT_POINT bit7
395#define OBJ_FL_DESC_MOUNT_POINT bit8
399#define OBJ_FL_EDIT3_MODE bit9
407#define OBJ_FL_HIDDEN_FROM_CLI bit10
414#define OBJ_FL_CONFIRM_DATA bit11
418#define OBJ_FL_EDIT1_MODE bit12
435#define OBJ_FL_SIL_BUSY bit0
437#define OBJ_TYPE(OBJ) (OBJ)->objtype
439#define OBJ_INDEX(OBJ) (OBJ)->index
444#define OBJ_SET_TOP(OBJ) (OBJ)->flags |= OBJ_FL_TOP
446#define OBJ_SET_SIL_BUSY(OBJ) (OBJ)->silflags |= OBJ_FL_SIL_BUSY
448#define OBJ_CLEAR_SIL_BUSY(OBJ) (OBJ)->silflags &= ~OBJ_FL_SIL_BUSY
450#define OBJ_IS_SIL_BUSY(OBJ) ((OBJ)->silflags & OBJ_FL_SIL_BUSY)
452#define OBJ_GET_CBSET(OBJ) (OBJ)->cbset
456#define OBJ_SET_REMOTE_GET2(OBJ) (OBJ)->xflags |= OBJ_FL_REMOTE_GET2
458#define OBJ_CLEAR_REMOTE_GET2(OBJ) (OBJ)->xflags &= ~OBJ_FL_REMOTE_GET2
460#define OBJ_HAS_REMOTE_GET2(OBJ) ((OBJ)->xflags & OBJ_FL_REMOTE_GET2)
462#define OBJ_SET_GET2CB(OBJ, CB) (OBJ)->get2cb = CB
464#define OBJ_GET_GET2CB(OBJ) (getcb_fn2_t)(OBJ)->get2cb
466#define OBJ_SET_EDIT2_MODE(OBJ) (OBJ)->xflags |= OBJ_FL_EDIT2_MODE
467#define OBJ_IS_EDIT2_MODE(OBJ) ((OBJ)->xflags & OBJ_FL_EDIT2_MODE)
468#define OBJ_CLEAR_EDIT2_MODE(OBJ) (OBJ)->xflags &= ~OBJ_FL_EDIT2_MODE
472#define OBJ_SET_SKIP_LEAFREF(OBJ) (OBJ)->xflags |= OBJ_FL_SKIP_LEAFREF
474#define OBJ_IS_SKIP_LEAFREF(OBJ) ((OBJ)->xflags & OBJ_FL_SKIP_LEAFREF)
479#define OBJ_SET_YANG_HASH(OBJ) (OBJ)->xflags |= OBJ_FL_YANG_HASH
481#define OBJ_IS_YANG_HASH(OBJ) ((OBJ)->xflags & OBJ_FL_YANG_HASH)
485#define OBJ_SET_YANG_REHASH(OBJ) (OBJ)->xflags |= OBJ_FL_YANG_REHASH
487#define OBJ_IS_YANG_REHASH(OBJ) ((OBJ)->xflags & OBJ_FL_YANG_REHASH)
491#define OBJ_SET_CBSET_MALLOCED(OBJ) (OBJ)->xflags |= OBJ_FL_CBSET_MALLOCED
493#define OBJ_IS_CBSET_MALLOCED(OBJ) ((OBJ)->xflags & OBJ_FL_CBSET_MALLOCED)
495#define OBJ_CLEAR_CBSET_MALLOCED(OBJ) (OBJ)->xflags &= ~OBJ_FL_CBSET_MALLOCED
498#define OBJ_SET_GENERIC(OBJ) (OBJ)->xflags |= OBJ_FL_GENERIC
500#define OBJ_IS_GENERIC(OBJ) ((OBJ)->xflags & OBJ_FL_GENERIC)
505#define OBJ_SET_DEF_DONE(OBJ) (OBJ)->xflags |= OBJ_FL_DEF_DONE
508#define OBJ_IS_DEF_DONE(OBJ) ((OBJ)->xflags & OBJ_FL_DEF_DONE)
511#define OBJ_SET_DEF(OBJ) (OBJ)->xflags |= OBJ_FL_DEF
514#define OBJ_IS_DEF(OBJ) ((OBJ)->xflags & OBJ_FL_DEF)
517#define OBJ_SET_LIBMODE(OBJ) (OBJ)->xflags |= OBJ_FL_LIBMODE
519#define OBJ_IS_LIBMODE(OBJ) ((OBJ)->xflags & OBJ_FL_LIBMODE)
521#define OBJ_USER_FLAGS(OBJ) (OBJ)->uflags
524#define OBJ_KEY_OBJ(K) (K)->keyobj
529#define OBJ_EDIT_TXID(OBJ) (OBJ)->edit_txid
531#define OBJ_EXTR_MUST_TXID(OBJ) (OBJ)->must_txid
532#define OBJ_EXTR_WHEN_TXID(OBJ) (OBJ)->when_txid
533#define OBJ_EXTR_LEAFREF_TXID(OBJ) (OBJ)->leafref_txid
534#define OBJ_EXTR_DEF_TXID(OBJ) (OBJ)->def_txid
538#define OBJ_SET_NO_NVSTORE(OBJ) (OBJ)->xflags |= OBJ_FL_NO_NVSTORE
540#define OBJ_IS_NO_NVSTORE(OBJ) ((OBJ)->xflags & OBJ_FL_NO_NVSTORE)
544#define OBJ_SET_YANGMAP_SOURCE(OBJ) \
545 (OBJ)->xflags |= OBJ_FL_YANGMAP_SOURCE
547#define OBJ_IS_YANGMAP_SOURCE(OBJ) \
548 ((OBJ)->xflags & OBJ_FL_YANGMAP_SOURCE)
552#define OBJ_SET_YANGMAP_TARGET(OBJ) \
553 (OBJ)->xflags |= OBJ_FL_YANGMAP_TARGET
555#define OBJ_IS_YANGMAP_TARGET(OBJ) \
556 ((OBJ)->xflags & OBJ_FL_YANGMAP_TARGET)
559#define OBJ_SET_YANGMAP_CHILD(OBJ) \
560 (OBJ)->xflags |= OBJ_FL_YANGMAP_CHILD
562#define OBJ_IS_YANGMAP_CHILD(OBJ) \
563 ((OBJ)->xflags & OBJ_FL_YANGMAP_CHILD)
566#define OBJ_SET_YANGMAP_KEY(OBJ) \
567 (OBJ)->xflags |= OBJ_FL_YANGMAP_KEY
569#define OBJ_IS_YANGMAP_KEY(OBJ) \
570 ((OBJ)->xflags & OBJ_FL_YANGMAP_KEY)
577#define OBJ_YANGMAP_CB(OBJ) (OBJ)->yangmap_cb
580#define OBJ_SET_DUP_LOCAL_DONE(OBJ) \
581 (OBJ)->xflags |= OBJ_FL_DUP_LOCAL_DONE
583#define OBJ_IS_DUP_LOCAL_DONE(OBJ) \
584 ((OBJ)->xflags & OBJ_FL_DUP_LOCAL_DONE)
587#define OBJ_RPC_SUPPORTED(OBJ) (OBJ)->def.rpc->supported
591#define OBJ_SET_TRANS_HOOK_SET(OBJ) (OBJ)->xflags |= OBJ_FL_TRANS_HOOK_SET
592#define OBJ_IS_TRANS_HOOK_SET(OBJ) ((OBJ)->xflags & OBJ_FL_TRANS_HOOK_SET)
593#define OBJ_CLEAR_TRANS_HOOK_SET(OBJ) (OBJ)->xflags &= ~OBJ_FL_TRANS_HOOK_SET
597#define OBJ_SET_AIO_GET2(OBJ) (OBJ)->xflags2 |= OBJ_FL_AIO_GET2
598#define OBJ_IS_AIO_GET2(OBJ) ((OBJ)->xflags2 & OBJ_FL_AIO_GET2)
599#define OBJ_CLEAR_AIO_GET2(OBJ) (OBJ)->xflags2 &= ~ OBJ_FL_AIO_GET2
602#define OBJ_SET_AIO_PARENT(OBJ) (OBJ)->xflags2 |= OBJ_FL_AIO_PARENT
603#define OBJ_IS_AIO_PARENT(OBJ) ((OBJ)->xflags2 & OBJ_FL_AIO_PARENT)
604#define OBJ_CLEAR_AIO_PARENT(OBJ) (OBJ)->xflags2 &= ~ OBJ_FL_AIO_PARENT
607#define OBJ_SET_AIO_GET2_XML(OBJ) (OBJ)->xflags2 |= OBJ_FL_AIO_GET2_XML
608#define OBJ_IS_AIO_GET2_XML(OBJ) ((OBJ)->xflags2 & OBJ_FL_AIO_GET2_XML)
610#define OBJ_SET_AIO_GET2_JSON(OBJ) (OBJ)->xflags2 |= OBJ_FL_AIO_GET2_JSON
611#define OBJ_IS_AIO_GET2_JSON(OBJ) ((OBJ)->xflags2 & OBJ_FL_AIO_GET2_JSON)
614#define OBJ_SET_DEF_HOOK(OBJ) (OBJ)->xflags2 |= OBJ_FL_DEF_HOOK
615#define OBJ_IS_DEF_HOOK(OBJ) ((OBJ)->xflags2 & OBJ_FL_DEF_HOOK)
616#define OBJ_CLEAR_DEF_HOOK(OBJ) (OBJ)->xflags2 &= ~OBJ_FL_DEF_HOOK
617#define OBJ_GET_DEF_HOOK_CB(OBJ) (ncx_def_hook_cbfn_t)(OBJ)->def_hook_cb
620#define OBJ_SET_OC_HASHED_VALUE(OBJ) (OBJ)->xflags2 |= OBJ_FL_OC_HASHED_VALUE
621#define OBJ_IS_OC_HASHED_VALUE(OBJ) ((OBJ)->xflags2 & OBJ_FL_OC_HASHED_VALUE)
624#define OBJ_SET_BAN_NOLOCK_GET(OBJ) (OBJ)->xflags2 |= OBJ_FL_BAN_NOLOCK_GET
625#define OBJ_IS_BAN_NOLOCK_GET(OBJ) ((OBJ)->xflags2 & OBJ_FL_BAN_NOLOCK_GET)
628#define OBJ_SET_MOUNT_POINT(OBJ) (OBJ)->xflags2 |= OBJ_FL_MOUNT_POINT
629#define OBJ_IS_MOUNT_POINT(OBJ) ((OBJ)->xflags2 & OBJ_FL_MOUNT_POINT)
632#define OBJ_SET_ROOTCB(OBJ, ROOTCB) (OBJ)->rootcb = ROOTCB
633#define OBJ_GET_ROOTCB(OBJ) (OBJ)->rootcb
636#define OBJ_SET_DESC_MOUNT_POINT(OBJ) (OBJ)->xflags2 |= OBJ_FL_DESC_MOUNT_POINT
637#define OBJ_IS_DESC_MOUNT_POINT(OBJ) ((OBJ)->xflags2 & OBJ_FL_DESC_MOUNT_POINT)
640#define OBJ_BOOL_EVAL_CB(OBJ) (OBJ)->bool_eval_cb
643#define OBJ_SET_EDIT3_MODE(OBJ) (OBJ)->xflags2 |= OBJ_FL_EDIT3_MODE
644#define OBJ_IS_EDIT3_MODE(OBJ) ((OBJ)->xflags2 & OBJ_FL_EDIT3_MODE)
645#define OBJ_CLEAR_EDIT3_MODE(OBJ) (OBJ)->xflags2 &= ~OBJ_FL_EDIT3_MODE
648#define OBJ_SET_HIDDEN_FROM_CLI(OBJ) (OBJ)->xflags2 |= OBJ_FL_HIDDEN_FROM_CLI
649#define OBJ_IS_HIDDEN_FROM_CLI(OBJ) ((OBJ)->xflags2 & OBJ_FL_HIDDEN_FROM_CLI)
652#define OBJ_SET_CONFIRM_DATA(OBJ) (OBJ)->xflags2 |= OBJ_FL_CONFIRM_DATA
653#define OBJ_IS_CONFIRM_DATA(OBJ) ((OBJ)->xflags2 & OBJ_FL_CONFIRM_DATA)
656#define OBJ_SET_EDIT1_MODE(OBJ) (OBJ)->xflags2 |= OBJ_FL_EDIT1_MODE
657#define OBJ_IS_EDIT1_MODE(OBJ) ((OBJ)->xflags2 & OBJ_FL_EDIT1_MODE)
658#define OBJ_CLEAR_EDIT1_MODE(OBJ) (OBJ)->xflags2 &= ~OBJ_FL_EDIT1_MODE
690typedef enum obj_type_t_ {
790#define OBJ_TYP_LAST OBJ_TYP_ACTION
801typedef enum obj_augtype_t_ {
811typedef struct obj_key_t_ {
819typedef struct obj_defval_tk_t_ {
827typedef struct obj_unique_comp_t_ {
836typedef struct obj_unique_t_ {
847typedef struct obj_container_t_ {
870typedef struct obj_leaf_t_ {
914typedef struct obj_leaflist_t_ {
950typedef struct obj_list_t_ {
986typedef struct obj_choice_t_ {
1002typedef struct obj_case_t_ {
1021typedef struct obj_uses_t_ {
1039typedef struct obj_refine_t_ {
1085typedef struct obj_rpcio_t_ {
1105typedef struct obj_rpc_t_ {
1128typedef struct obj_augment_t_ {
1150typedef struct obj_notif_t_ {
1171typedef struct obj_iffeature_ptr_t_ {
1178typedef struct obj_errmsg_filter_t_ {
1186typedef struct obj_errmsg_parm_t_ {
1199typedef struct obj_errmsg_t_ {
1217typedef struct obj_oid_t_ {
1231typedef struct obj_template_t_ {
1296 struct xpath_pcb_t_ *xpath_backptr[OBJ_NUM_XPATH_BACKPTRS];
1376typedef struct obj_metadata_t_ {
1383 boolean typdef_copy;
1388typedef enum obj_deviate_arg_t_ {
1398typedef struct obj_deviate_t_ {
1459typedef struct obj_deviation_t_ {
1496 boolean nonconfig_warn);
1499#define OBJ_SET_TESTFLAGS(OBJ, FL) (OBJ)->testflags = FL
1501#define OBJ_GET_TESTFLAGS(OBJ) (OBJ)->testflags
1503#define OBJ_SET_DESC_TESTFLAGS(OBJ, FL) (OBJ)->desc_testflags = FL
1505#define OBJ_GET_DESC_TESTFLAGS(OBJ) (OBJ)->desc_testflags
1507#define OBJ_UPDATE_DESC_TESTFLAGS(OBJ, FL) (OBJ)->desc_testflags |= FL
1564 const xmlChar *modname,
1565 const xmlChar *objname);
1581 const xmlChar *modname,
1582 const xmlChar *objname );
1598 const xmlChar *modname,
1599 const xmlChar *objname);
1615 const xmlChar *modname,
1616 const xmlChar *objname);
1634 const xmlChar *modname,
1635 const xmlChar *objname);
1655 const xmlChar *modname,
1656 const xmlChar *objname);
1682 const xmlChar *modname,
1683 const xmlChar *objname,
1705 const xmlChar *modname,
1706 const xmlChar *objname);
1727 const xmlChar *modname,
1728 const xmlChar *objname);
1749 const xmlChar *modname,
1750 const xmlChar *objname);
1771 const xmlChar *modname,
1772 const xmlChar *objname);
1792 const xmlChar *objname);
1821 const xmlChar *modname,
1822 const xmlChar *objname,
1841 const xmlChar *modname,
1842 const xmlChar *objname,
1869 const xmlChar *modname,
1870 const xmlChar *objname,
1872 uint32 *matchcount);
2143 const xmlChar *modname,
2144 const xmlChar *childname,
2195 const xmlChar *modname,
2196 const xmlChar *name,
2249 const xmlChar *modname,
2250 const xmlChar *name,
2306 const xmlChar *modname,
2307 const xmlChar *name,
2326 const xmlChar *modname,
2327 const xmlChar *casname);
2343 const xmlChar *name);
2364 const xmlChar *typname);
2386 const xmlChar *grpname);
2417 const xmlChar *typname,
2598 const xmlChar *xpath);
2668 const xmlChar *keycompname);
2829extern const xmlChar *
3058extern const xmlChar *
3071 const xmlChar *objname);
3118extern const xmlChar *
3131extern const xmlChar *
3142extern const xmlChar *
3153extern const xmlChar *
3173extern const xmlChar *
3188#define obj_is_config obj_get_config_flag_deep
3272extern const xmlChar *
3292extern const dlq_hdr_t *
3306extern const xmlChar *
3318extern const xmlChar *
3335extern const xmlChar *
3483extern const xmlChar *
3493extern const xmlChar *
3503extern const xmlChar *
3544extern const xmlChar *
3554extern const xmlChar *
3641extern const xmlChar *
3708extern const xmlChar *
3754 dlq_hdr_t *force_modQ,
4002 boolean config_only);
4688 const xmlChar *name);
4757 dlq_hdr_t *datadefQ,
4768extern const xmlChar *
4787extern const xmlChar *
4820extern const xmlChar *
5002 struct xpath_pcb_t_ *xpath);
5012extern struct xpath_pcb_t_ *
5014 struct xpath_pcb_t_ *xpath);
5023extern struct xpath_pcb_t_ *
5040 struct xpath_pcb_t_ *xpath);
5054 struct xpath_pcb_t_ *xpath);
5432#define obj_next_dev_defval_tk(D) obj_next_defval_tk(D)
5463 const xmlChar *defval);
5475 const xmlChar *find_defval);
5513 const xmlChar *keyname);
5579#if defined(WITH_SNMP) && defined(WITH_RESTCONF)
5586extern const xmlChar *
5615 dlq_hdr_t *keystackQ);
5681 const xmlChar *basestr,
5694 const xmlChar *parmstr);
5707 const xmlChar *parmstr,
5708 boolean is_errortag);
6021 const xmlChar *prefix,
6022 const xmlChar *name,
6023 const xmlChar **retval);
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
uint16 xmlns_id_t
integer handle for registered namespaces
Definition: xmlns.h:89
ncx_leafref_class_t
Classification for the types of leafref path statements wrt/ how they can be cached.
Definition: ncxtypes.h:1571
ncx_status_t
enumeration for different YANG data-def status values
Definition: ncxtypes.h:583
ncx_sort_type_t
the sort type enumeration used for system-ordered list aand leaf-list objects
Definition: ncxtypes.h:1801
uint32 ncx_sid_t
Standard YANG SID is a 63-bit integer defined as uint64.
Definition: ncxtypes.h:756
ncx_yang_version_t
enumeration for different YANG language versions
Definition: ncxtypes.h:1013
ncx_cfg_t
hardwire the 3 standard configs
Definition: ncxtypes.h:548
uint64 ncx_transaction_id_t
transaction is scoped to single session write operation on a config
Definition: ncxtypes.h:728
ncx_iqual_t
The instance qualifier types are borrowed from ABNF and RelaxNG.
Definition: ncxtypes.h:460
ncx_btype_t
enumeration of the built-in NCX types These types cannot be overridden and cannot be imported
Definition: ncxtypes.h:213
ncx_access_t
NCX Access Control 'max-access' enumeration values Note that access control is applied to the session...
Definition: ncxtypes.h:182
ncx_name_match_t
Node name match modes.
Definition: ncxtypes.h:695
ncx_xpath_axis_t
XPath expression axis types.
Definition: ncxtypes.h:662
obj_metadata_t * obj_find_metadata(const obj_template_t *obj, const xmlChar *name)
Find the object metadata definition in the object.
Definition: obj.c:17240
uint32 obj_get_child_count(const obj_template_t *obj)
Get the number of child nodes the object has.
Definition: obj.c:14692
void obj_set_abstract(obj_template_t *obj)
Set the abstract flag for the yang-data node.
Definition: obj.c:20063
obj_key_t * obj_last_key(obj_template_t *obj)
Get the last key record.
Definition: obj.c:11056
const dlq_hdr_t * obj_get_cdatadefQ(const obj_template_t *obj)
Get a const pointer to the datadefQ (or caseQ) if this object has one.
Definition: obj.c:13165
boolean obj_is_notif(const obj_template_t *obj)
Check if the object is a notification.
Definition: obj.c:15970
boolean obj_is_external_augment(obj_template_t *obj)
Check if an object is an external augment.
Definition: obj.c:18129
boolean obj_has_rw_children(obj_template_t *obj)
Check if there are any accessible read-write child nodes within the object.
Definition: obj.c:17023
const xmlChar * obj_get_description(const obj_template_t *obj)
Get the description field for this obj.
Definition: obj.c:12470
boolean obj_has_name(const obj_template_t *obj)
Check if the specified object type has a name.
Definition: obj.c:12330
obj_template_t * obj_clone_template_case(ncx_module_t *mod, obj_template_t *srcobj, dlq_hdr_t *mobjQ)
Clone an obj_template_t but make sure it is wrapped in a OBJ_TYP_CASE layer.
Definition: obj.c:10562
const xmlChar * obj_get_next_default(const obj_template_t *obj, ncx_backptr_t *lastdef, ncx_backptr_t **thisdef)
Get the next default value for the specified object.
Definition: obj.c:13345
boolean obj_is_mp_key(obj_template_t *child)
Check if the parent of this object is a Mount Pount object AND THIS OBJECT IS A KEY LEAF IN THE MP LI...
Definition: obj.c:21138
obj_key_t * obj_new_key(void)
Alloc and Init a obj_key_t struct.
Definition: obj.c:10910
boolean obj_is_top(const obj_template_t *obj)
Check if the object is top-level object within the YANG module that defines it.
Definition: obj.c:16816
boolean obj_is_case(const obj_template_t *obj)
Check if object is a YANG case.
Definition: obj.c:15238
boolean obj_is_hidden(const obj_template_t *obj)
Check if object is marked as a hidden object.
Definition: obj.c:16057
boolean obj_get_max_elements(obj_template_t *obj, uint32 *maxelems)
Get the max-elements clause for this object, if any.
Definition: obj.c:14348
obj_template_t * obj_find_template_test(dlq_hdr_t *que, const xmlChar *modname, const xmlChar *objname)
Find an object with the specified name Test version; do not set 'used' flag.
Definition: obj.c:6621
uint32 obj_get_yang_sid_tree(const obj_template_t *obj)
Get the YANG SID Tree ID for this object.
Definition: obj.c:14170
boolean obj_is_cli(const obj_template_t *obj)
Check if object is marked as a CLI object.
Definition: obj.c:16178
obj_template_t * obj_clone_template_sm(ncx_module_t *mod, obj_template_t *srcobj, dlq_hdr_t *mobjQ, boolean sm_clone)
Clone an obj_template_t Copy the pointers from the srcobj into the new obj.
boolean obj_is_match(const obj_template_t *obj1, const obj_template_t *obj2)
Check if one object is a match in identity with another one.
Definition: obj.c:16032
obj_template_t * obj_find_child_choice_case(obj_template_t *obj, const xmlChar *modname, const xmlChar *objname)
Find a child object with the specified Qname.
Definition: obj.c:7130
boolean obj_in_top_choice(const obj_template_t *obj)
Check if the object is in top-level choice the YANG module that defines it.
Definition: obj.c:16834
boolean obj_is_rpcio(const obj_template_t *obj)
Check if the object is an RPC IO node.
Definition: obj.c:15868
boolean obj_get_leaf_list_defset(const obj_template_t *obj)
Get the defset flag for a leaf-list.
Definition: obj.c:19844
obj_unique_t * obj_first_unique(obj_template_t *listobj)
Get the first unique-stmt for a list.
Definition: obj.c:10812
boolean obj_get_config_flag_check(const obj_template_t *obj, boolean *ingrp)
get config flag during YANG module checking
Definition: obj.c:14876
const void * obj_get_reference_addr(const obj_template_t *obj)
Get the reference field for this obj.
Definition: obj.c:12757
status_t obj_gen_object_id_code(ncx_module_t *mod, const obj_template_t *obj, xmlChar **buff)
Malloc and Generate the object ID for an object node for C code usage.
Definition: obj.c:11916
boolean obj_in_augment(const obj_template_t *obj)
Check if object is an augment or inside an augment CHECK ENTIRE TREE UP TO ROOT.
Definition: obj.c:15536
ncx_module_t * obj_get_mod(obj_template_t *obj)
Get the module pointer for this object.
Definition: obj.c:13965
boolean obj_is_confirm_data(const obj_template_t *obj)
Check if object is marked as a confirm-data object for CLI.
Definition: obj.c:21798
void obj_delete_all_defvals(obj_template_t *obj)
Delete all the original defaults for a leaf-list default for deviate replace default foo.
Definition: obj.c:19931
boolean obj_npcon_has_defaults_slow(obj_template_t *obj)
Check if the specified NP container has defaults within it Must be a config object!...
Definition: obj.c:13476
obj_iffeature_ptr_t * obj_new_iffeature_ptr(ncx_iffeature_t *iff)
Malloc and initialize a new obj_iffeature_ptr_t struct.
Definition: obj.c:18360
ncx_backptr_t * obj_first_inherit_when_ptr(obj_template_t *obj)
Get first xpath pointer struct.
Definition: obj.c:18438
const xmlChar * obj_get_oid_string(obj_template_t *obj)
Get object OID sting value.
Definition: obj.c:20088
typ_def_t * obj_get_typdef(obj_template_t *obj)
Get the typdef for the leaf or leaf-list.
Definition: obj.c:13730
grp_template_t * obj_first_grouping(obj_template_t *obj)
Get the first local grouping if any.
Definition: obj.c:9869
void obj_delete_obsolete(dlq_hdr_t *objQ)
Delete any obsolete child nodes within the specified object subtree.
Definition: obj.c:17987
boolean obj_is_password(const obj_template_t *obj)
Check if object is marked as a password object.
Definition: obj.c:16143
boolean obj_get_top_config_flag(const obj_template_t *obj)
Get the config flag for the top-level object.
Definition: obj.c:20589
obj_case_t * obj_find_case(obj_choice_t *choic, const xmlChar *modname, const xmlChar *casname)
Find a specified case arm by name.
Definition: obj.c:9503
void obj_free_defval_tk(obj_defval_tk_t *def)
Delete an object default tk record;.
Definition: obj.c:19750
boolean obj_find_defval(obj_template_t *obj, const xmlChar *find_defval)
Find a default.
Definition: obj.c:19898
obj_template_t * obj_first_unique_backptr(obj_template_t *leafobj)
Get the first unique backptr for a leaf object.
Definition: obj.c:21624
const xmlChar * obj_get_deviate_arg(obj_deviate_arg_t devarg)
Get the deviate-arg string from its enumeration.
Definition: obj.c:11422
boolean obj_unload_active(const obj_template_t *obj)
Check if the module commit tests are disabled because a module unload is in progress.
Definition: obj.c:19397
void * obj_get_presence_string_field(const obj_template_t *obj)
Get the address ot the presence-stmt value, if any.
Definition: obj.c:14616
boolean obj_is_container(const obj_template_t *obj)
Check if object is a YANG container.
Definition: obj.c:15192
obj_key_t * obj_find_key(dlq_hdr_t *que, const xmlChar *keycompname)
Find a specific key component by key leaf identifier name.
Definition: obj.c:10958
ncx_sm_rootcb_t * obj_find_ancestor_rootcb(obj_template_t *obj)
Find an ancestor node or self that has a rootcb.
Definition: obj.c:21286
boolean obj_is_top_aio_get2(obj_template_t *obj)
Check if this object is a really top level holder of extension sil-aio-get2.
Definition: obj.c:20788
obj_unique_comp_t * obj_new_unique_comp(void)
Alloc and Init a obj_unique_comp_t struct.
Definition: obj.c:10727
boolean obj_is_list(const obj_template_t *obj)
Check if object is a YANG list.
Definition: obj.c:15130
const xmlChar * obj_get_augment_target(obj_template_t *obj)
Get the target path string for an augments object.
Definition: obj.c:18108
boolean obj_is_in_aio_get2(obj_template_t *obj)
Check if this object is a child of a node with sil-aio-get2 extension setup or if this object itself ...
Definition: obj.c:20741
boolean obj_is_anydata(const obj_template_t *obj)
Check if object is an anydata.
Definition: obj.c:15052
const xmlChar * obj_get_altname(const obj_template_t *obj)
Get the alt-name for this object, if any.
Definition: obj.c:18030
uint32 obj_key_count_to_root(obj_template_t *obj)
Check ancestor-or-self nodes until root reached Find all lists; Count the number of keys.
Definition: obj.c:11214
obj_template_t * obj_next_child_deep(obj_template_t *obj)
Get the next child object if the specified object has any children.
Definition: obj.c:8567
const xmlChar * obj_get_default(const obj_template_t *obj)
Get the default value for the specified object.
Definition: obj.c:13248
status_t obj_set_mp_flags(obj_template_t *obj)
set the Schema Mount flags and create a rootcb if needed
Definition: obj.c:21320
boolean obj_is_p_container(const obj_template_t *obj)
Check if the object is an Presence-container.
Definition: obj.c:16507
status_t obj_refine_template(obj_template_t *srcobj, obj_template_t *mobj)
Refine Template - Late refine support.
Definition: obj.c:10433
status_t obj_add_errmsg_filter(obj_errmsg_t *errmsg, const xmlChar *parmstr, boolean is_errortag)
Add an errmsg filter for the object.
ncx_sort_type_t obj_get_sort_type(const obj_template_t *obj)
Get the sort type for the object.
Definition: obj.c:21766
boolean obj_is_mandatory_when_ex(obj_template_t *obj, boolean config_only)
Figure out if the obj is YANG mandatory or not Check the when-stmts, not just mandatory-stmt.
Definition: obj.c:15392
void obj_free_metadata(obj_metadata_t *meta)
Scrub the memory in a obj_metadata_t by freeing all the sub-fields and then freeing the entire struct...
Definition: obj.c:17175
obj_template_t * obj_first_terminal_child_nokey(obj_template_t *obj)
Get the first child object if the specified object has any children; MUST BE A TERMINAL NODE!...
Definition: obj.c:7919
status_t obj_copy_object_id_mod(const obj_template_t *obj, xmlChar *buff, uint32 bufflen, uint32 *reallen)
Generate the object ID for an object node and copy to the buffer copy an object ID to a buffer; Use m...
Definition: obj.c:12013
status_t obj_assign_xpath_backptr(obj_template_t *obj, struct xpath_pcb_t_ *xpath)
Set an xpath-expr backptr.
Definition: obj.c:18601
dlq_hdr_t * obj_get_defvalQ(obj_template_t *obj)
Get the leaf-list default Q.
Definition: obj.c:19768
const xmlChar * obj_get_type_name(const obj_template_t *obj)
Get the typename for an object.
Definition: obj.c:14098
void obj_ban_nolock_get(obj_template_t *obj)
Ban nolock-get for the object.
Definition: obj.c:21091
void obj_free_key(obj_key_t *key)
Free a obj_key_t struct.
Definition: obj.c:10933
const xmlChar * obj_get_first_default(const obj_template_t *obj, ncx_backptr_t **thisdef)
Get the first default value for the specified object.
Definition: obj.c:13294
status_t obj_gen_object_id_error(const obj_template_t *obj, xmlChar **buff)
Malloc and Generate the object ID for an object node for errors.
Definition: obj.c:11799
boolean obj_is_enabled(obj_template_t *obj)
Check any if-feature statement that may cause the specified object to be invisible.
Definition: obj.c:16530
const void * obj_get_description_addr(const obj_template_t *obj)
Get the address of the description field for this obj.
Definition: obj.c:12643
obj_template_t * obj_first_child(obj_template_t *obj)
Get the first child object if the specified object has any children.
Definition: obj.c:7816
status_t obj_get_appinfo(obj_template_t *obj, const xmlChar *prefix, const xmlChar *name, const xmlChar **retval)
Get the first (or only) instance of the specified appinfo.
Definition: obj.c:21539
status_t obj_gen_object_id_prefix(const obj_template_t *obj, xmlChar **buff)
Malloc and Generate the object ID for an object node Use the prefix in every node.
Definition: obj.c:11571
obj_template_t * obj_find_template(dlq_hdr_t *que, const xmlChar *modname, const xmlChar *objname)
Find an object with the specified name.
Definition: obj.c:6509
const obj_template_t * obj_get_cparent(const obj_template_t *obj)
Get the parent of the current object CONST POINTER VERSION.
Definition: obj.c:14457
const ncx_iffeature_t * obj_get_first_iffeature(const obj_template_t *obj)
Get the first if-feature clause (if any) for the specified object.
Definition: obj.c:14992
void obj_init_unique(obj_unique_t *un)
Init a obj_unique_t struct.
Definition: obj.c:10654
boolean obj_is_supported(obj_template_t *obj)
Check an RPC node to check if it is supported or not It could be disabled at run-time without removin...
Definition: obj.c:19044
status_t obj_gen_aughook_id(const obj_template_t *obj, xmlChar **buff)
Malloc and Generate the augment hook element name for the specified object.
Definition: obj.c:12116
void obj_dump_child_list(log_debug_t lvl, dlq_hdr_t *datadefQ, uint32 startindent, uint32 indent)
Dump the object names in a datadefQ – just child level uses log_write_level() for writing ....
Definition: obj.c:17886
obj_template_t * obj_get_real_parent_aug(obj_template_t *obj)
Get the parent of the current object; skip OBJ_TYP_AUGMENT and return the actual parent.
Definition: obj.c:21026
status_t obj_add_errmsg_parm(obj_errmsg_t *errmsg, const xmlChar *parmstr)
Add an errmsg parameter for the object.
void obj_traverse_keys(obj_template_t *obj, void *cookie1, void *cookie2, obj_walker_fn_t walkerfn)
Traverse the list keys with a callback function.
Definition: obj.c:11251
obj_template_t * obj_find_child_fast(obj_template_t *obj, xmlns_id_t nsid, const xmlChar *objname)
Find a child object with the specified Qname.
Definition: obj.c:7211
boolean obj_is_data(const obj_template_t *obj)
Check if the object is defined within data or within a notification or RPC instead.
Definition: obj.c:15582
obj_key_t * obj_next_key(obj_key_t *objkey)
Get the next key record.
Definition: obj.c:11112
boolean obj_is_sil_delete_children_first(const obj_template_t *obj)
Check if object is marked as ncx:sil-delete-children-first.
Definition: obj.c:18214
void obj_clean_datadefQ(dlq_hdr_t *que)
Clean and free all the obj_template_t structs in the specified Q.
Definition: obj.c:9581
typ_def_t * obj_get_base_typdef(obj_template_t *obj)
Get the base typdef for the leaf or leaf-list.
Definition: obj.c:13770
boolean obj_is_xsdlist(const obj_template_t *obj)
Check if object is marked as an XSD list.
Definition: obj.c:16162
void obj_clean_unique(obj_unique_t *un)
Clean a obj_unique_t struct.
Definition: obj.c:10697
boolean obj_edit2_mode_allowed(obj_template_t *obj)
Check if the current object is EDIT2/3 allowed.
Definition: obj.c:21885
obj_key_t * obj_prev_key(obj_key_t *objkey)
Get the previous key record.
Definition: obj.c:11138
boolean obj_in_action(const obj_template_t *obj)
Check if the object is within or is an action method.
Definition: obj.c:15925
void obj_dump_keystackQ(dlq_hdr_t *keystackQ)
Dump a keystackQ with backptrs to obj_template_t for key leafs.
Definition: obj.c:20329
boolean obj_is_single_instance(obj_template_t *obj)
Check if the object is a single instance of if it allows multiple instances; check all of the ancesto...
Definition: obj.c:16731
boolean obj_is_no_sil_delete_children_first(const obj_template_t *obj)
Check if object is marked as ypx:no-sil-delete-children-first OR AN ANCESTOR IS MARKED.
Definition: obj.c:18232
boolean obj_ok_for_nolock(const obj_template_t *obj)
check an object OK for nolock
Definition: obj.c:20621
boolean obj_has_typedefs(const obj_template_t *obj)
Check if the object has any nested typedefs in it.
Definition: obj.c:13649
void obj_add_child(obj_template_t *child, obj_template_t *parent)
Add a child object to the specified complex node.
Definition: obj.c:18258
void obj_set_sil_force_replace_replay(obj_template_t *obj)
Set the object OBJ_FL_SIL_FORCE_REPLAY bit Set the object OBJ_FL_SIL_FORCE_REPLACE_REPLAY bit.
Definition: obj.c:19289
boolean obj_in_rpc(const obj_template_t *obj)
Check if the object is in an rpc/input section.
Definition: obj.c:15712
boolean obj_has_ro_children(obj_template_t *obj)
Check if there are any accessible read-only child nodes within the object.
Definition: obj.c:16958
boolean obj_is_dirty(const obj_template_t *obj, ncx_cfg_t cfgid)
Check if object is marked as dirty (edited) for datastore validation purposes.
Definition: obj.c:16202
boolean obj_is_block_user_delete(const obj_template_t *obj)
Check if object is marked as ncx:user-write with delete access disabled.
Definition: obj.c:18338
boolean obj_is_ancestor(const obj_template_t *ancestor, const obj_template_t *obj)
Check if an object is the ancestor of another.
Definition: obj.c:21057
boolean obj_is_rpcio_input(const obj_template_t *obj)
Check if the object is an RPC IO node.
Definition: obj.c:15885
const xmlChar * obj_get_alt_description(const obj_template_t *obj)
obj_get_alt_description (DEPRECATED)
Definition: obj.c:12529
status_t obj_gen_object_id_datapath(const obj_template_t *obj, xmlChar **buff)
Malloc and Generate the object ID for an object node Use the prefix in every node.
Definition: obj.c:11616
obj_template_t * obj_next_child_augok(obj_template_t *obj)
Get the next child object if the specified object has any children; return augment,...
Definition: obj.c:8355
void obj_set_xpath_oper_ok(obj_template_t *obj)
Set the object XPath oper OK flag.
Definition: obj.c:20978
obj_template_t * obj_first_child_deep(obj_template_t *obj)
Get the first child object if the specified object has any children.
Definition: obj.c:8486
boolean obj_find_all_pfaxis(ncx_module_t *exprmod, obj_walker_fn_t walkerfn, void *cookie1, void *cookie2, obj_template_t *startnode, const xmlChar *modname, const xmlChar *name, boolean configonly, boolean dblslash, boolean textmode, boolean useroot, ncx_xpath_axis_t axis, boolean *fncalled)
Find all occurances of the specified preceding or following node(s).
Definition: obj.c:9317
boolean obj_is_datapath(const obj_template_t *obj)
Check if object is marked as a ywx:datapath object.
Definition: obj.c:16859
obj_defval_tk_t * obj_new_defval_tk(void)
Create a new object default tk record;.
Definition: obj.c:19733
boolean obj_has_when_stmts(obj_template_t *obj)
Check if any when-stmts apply to this object Does not check if they are true, just any when-stmts pre...
Definition: obj.c:17100
void obj_free_unique_comp(obj_unique_comp_t *unc)
Free a obj_unique_comp_t struct.
Definition: obj.c:10750
void obj_delete_mod_children(obj_template_t *obj, ncx_module_t *mod)
Check the childQ for the specified object and remove all the objects from the specified module.
Definition: obj.c:19075
boolean obj_is_crypt_hash(const obj_template_t *obj)
Check if the object is a leaf of type crypt-hash.
Definition: obj.c:19674
boolean obj_rpc_has_input(obj_template_t *obj)
Check if the RPC object has any real input children.
Definition: obj.c:17076
boolean obj_is_refine(const obj_template_t *obj)
Figure out if the obj is a refinement object, within a uses-stmt.
Definition: obj.c:15565
boolean obj_is_abstract(const obj_template_t *obj)
Check if object is being used as an object identifier or error-info.
Definition: obj.c:16257
boolean obj_has_get2cb(obj_template_t *obj)
Check if current object has GET2 callback registered.
Definition: obj.c:20494
boolean obj_match_datarule(obj_template_t *obj, void *rule)
Check if the data-rule back-ptr applies to this node.
Definition: obj.c:20435
const xmlChar * obj_get_mod_prefix(const obj_template_t *obj)
Get the module prefix for this object.
Definition: obj.c:13874
ncx_iqual_t obj_get_iqualval(obj_template_t *obj)
Get the instance qualifier for this object.
Definition: obj.c:14192
obj_iffeature_ptr_t * obj_first_iffeature_ptr(obj_template_t *obj)
Get first if-feature pointer.
Definition: obj.c:18396
boolean obj_in_submodule(obj_template_t *obj)
Check if the object is defined in a submodule.
Definition: obj.c:14003
boolean obj_is_deleted_ex(const obj_template_t *obj)
Check if object has been deleted by a deviate not-supported Or if its parent was deleted by deviation...
Definition: obj.c:16338
boolean obj_is_external_data_augment(obj_template_t *obj)
Check if an object is an external augment of a data node.
Definition: obj.c:18154
obj_template_t * obj_first_child_augok(obj_template_t *obj)
Get the first child object if the specified object has any children.
Definition: obj.c:8289
uint32 obj_get_real_level(const obj_template_t *obj)
Get the nest level for the specified object Top-level is '1' Does not count groupings as a level Does...
Definition: obj.c:13614
boolean obj_get_min_elements(obj_template_t *obj, uint32 *minelems)
Get the min-elements clause for this object, if any.
Definition: obj.c:14306
boolean obj_is_rpc_root(const obj_template_t *obj)
Check if object is marked as an RPC root object.
Definition: obj.c:16126
obj_template_t * obj_clone_template(ncx_module_t *mod, obj_template_t *srcobj, dlq_hdr_t *mobjQ)
Clone an obj_template_t Copy the pointers from the srcobj into the new obj.
Definition: obj.c:10088
status_t obj_set_named_type(void *pcb, tk_chain_t *tkc, ncx_module_t *mod, const xmlChar *typname, typ_def_t *typdef, obj_template_t *parent, grp_template_t *grp)
Resolve type test Called during phase 2 of module parsing.
Definition: obj.c:9942
grp_template_t * obj_get_uses_grp(obj_template_t *usesobj)
Get the grp template from the uses object pointer.
Definition: obj.c:21815
obj_template_t * obj_match_child_str(obj_template_t *obj, const xmlChar *modname, const xmlChar *objname, uint32 objnamelen, uint32 *matchcount)
Match a child object with the specified Qname Find first command that matches all N chars of objname.
Definition: obj.c:7708
boolean obj_any_notifs(const dlq_hdr_t *datadefQ)
Check if there are any notifications in the datadefQ.
Definition: obj.c:11336
boolean obj_rpc_has_output(obj_template_t *obj)
Check if the RPC object has any real output children.
Definition: obj.c:17087
status_t obj_add_metadata(obj_metadata_t *meta, obj_template_t *obj)
Add the filled out object metadata definition to the object.
Definition: obj.c:17205
void obj_free_deviate(obj_deviate_t *deviate)
Clean and free an object deviate statement.
Definition: obj.c:11391
status_t obj_add_errmsg(obj_template_t *obj, const xmlChar *basestr, obj_errmsg_t **ret_errmsg)
Create a new obj_errmsg struct for the object.
const xmlChar * obj_get_mod_xmlprefix(const obj_template_t *obj)
Get the module prefix for this object.
Definition: obj.c:13905
boolean obj_is_augclone(const obj_template_t *obj)
Figure out if the obj is a cloned object, inserted via an augment statement.
Definition: obj.c:15497
const xmlChar * obj_get_info_description(const obj_template_t *obj)
Get the info description field for this obj Check if a 'info' appinfo node is present.
Definition: obj.c:12610
obj_unique_comp_t * obj_next_unique_comp(obj_unique_comp_t *uncomp)
Get the next unique-stmt component for a list.
Definition: obj.c:10889
xmlns_id_t obj_get_nsid(const obj_template_t *obj)
Get the namespace ID for this object.
Definition: obj.c:14129
obj_key_t * obj_first_key(obj_template_t *obj)
Get the first key record.
Definition: obj.c:11028
ncx_access_t obj_get_max_access(const obj_template_t *obj)
Get the NCX max-access enum for an obj_template_t Return the explicit value or the inherited value.
Definition: obj.c:12881
status_t obj_gen_object_id_unique(const obj_template_t *obj, const obj_template_t *stopobj, xmlChar **buff)
Malloc and Generate the object ID for a unique-stmt test.
Definition: obj.c:11859
obj_template_t * obj_get_choice_parent(obj_template_t *obj)
Get the OBJ_TYP_CHOICE parent of the current object; skip OBJ_TYP_CASE.
Definition: obj.c:14554
obj_template_t * obj_get_leafref_targobj(obj_template_t *obj)
Get the target object for a leafref leaf or leaf-list.
Definition: obj.c:18058
obj_metadata_t * obj_new_metadata(void)
Malloc and initialize the fields in a an obj_metadata_t.
Definition: obj.c:17144
boolean obj_find_all_children(ncx_module_t *exprmod, obj_walker_fn_t walkerfn, void *cookie1, void *cookie2, obj_template_t *startnode, const xmlChar *modname, const xmlChar *childname, boolean configonly, boolean textmode, boolean useroot)
Find all occurances of the specified node(s) within the children of the current node.
Definition: obj.c:8726
typ_template_t * obj_find_type(obj_template_t *obj, const xmlChar *typname)
Check if a typ_template_t in the obj typedefQ hierarchy.
Definition: obj.c:9607
boolean obj_is_rpc(const obj_template_t *obj)
Check if the object is an RPC method.
Definition: obj.c:15828
void obj_flag_xpath_backptrs_dirty(obj_template_t *obj, ncx_cfg_t cfg_id, boolean flag)
Check all the xpath backptr records for this object and set them to dirty or clean,...
Definition: obj.c:18812
boolean obj_is_xpath_string(const obj_template_t *obj)
Check if object is an XPath string.
Definition: obj.c:16374
obj_unique_t * obj_find_unique(dlq_hdr_t *que, const xmlChar *xpath)
Find a specific unique-stmt.
Definition: obj.c:10778
void obj_force_disabled(obj_template_t *obj)
Force an object to be disabled.
Definition: obj.c:20226
obj_template_t * obj_next_child(obj_template_t *obj)
Get the next child object if the specified object has any children.
Definition: obj.c:8095
boolean obj_is_block_user_update(const obj_template_t *obj)
Check if object is marked as ncx:user-write with update access disabled.
Definition: obj.c:18313
obj_key_t * obj_get_key_by_name(obj_template_t *obj, const xmlChar *keyname)
Check the specified list to see if the string is a list key.
Definition: obj.c:19982
boolean obj_is_anyxml(const obj_template_t *obj)
Check if object is an anyxml.
Definition: obj.c:15036
boolean obj_is_terminal(const obj_template_t *obj)
Check if object is a proper leaf or leaflist or anyxml.
Definition: obj.c:15295
void obj_force_root(obj_template_t *obj)
Set the object as an anydata type of root.
Definition: obj.c:16109
status_t obj_gen_object_id_sid(const obj_template_t *obj, xmlChar **buff)
Malloc and Generate the object ID for an object node for SID path usage.
Definition: obj.c:12045
typ_template_t * obj_first_typedef(obj_template_t *obj)
Get the first local typedef for this object, if any.
Definition: obj.c:9706
obj_template_t * obj_new_rpcio(obj_template_t *rpcobj, const xmlChar *name)
Malloc and initialize the fields in a an obj_rpcio_t.
Definition: obj.c:9548
void obj_set_notif_enabled(obj_template_t *obj, boolean enabled)
Set the notification object enabled flag.
Definition: obj.c:19344
uint8 obj_get_sil_priority(obj_template_t *obj)
Get the SIL priority field.
Definition: obj.c:19523
boolean obj_is_sil_force_replace_replay(const obj_template_t *obj)
Check if this object has the OBJ_FL_SIL_FORCE_REPLACE_REPLAY bit set.
Definition: obj.c:19268
status_t obj_set_name(obj_template_t *obj, const xmlChar *objname)
Set the name field for this obj.
Definition: obj.c:12238
const xmlChar * obj_get_presence_string(const obj_template_t *obj)
Get the present-stmt value, if any.
Definition: obj.c:14587
void obj_clean_deviationQ(dlq_hdr_t *deviationQ)
Clean and free an Q of object deviation statements.
Definition: obj.c:11504
obj_template_t * obj_find_template_top_lrcheck(ncx_module_t *mod, const xmlChar *modname, const xmlChar *objname)
Check if an obj_template_t in the mod->datadefQ or any of the include files visible to this module (L...
Definition: obj.c:6837
obj_key_t * obj_find_key2(dlq_hdr_t *que, obj_template_t *keyobj)
Find a specific key component, check for a specific node in case deep keys are supported,...
Definition: obj.c:10994
boolean obj_ok_for_cli(obj_template_t *obj)
Figure out if the obj is OK for current CLI implementation.
Definition: obj.c:16878
boolean obj_in_list(const obj_template_t *obj)
Check if object is nested within a list.
Definition: obj.c:15146
obj_template_t * obj_get_default_case(obj_template_t *obj)
Get the default case for the specified OBJ_TYP_CHOICE object.
Definition: obj.c:13388
boolean obj_find_all_ancestors(ncx_module_t *exprmod, obj_walker_fn_t walkerfn, void *cookie1, void *cookie2, obj_template_t *startnode, const xmlChar *modname, const xmlChar *name, boolean configonly, boolean textmode, boolean useroot, boolean orself, boolean *fncalled)
Find all occurances of the specified node(s) within the ancestors of the current node.
Definition: obj.c:8946
ncx_iqual_t obj_get_iqualval_ex(obj_template_t *obj, boolean required)
Get the instance qualifier for this object.
Definition: obj.c:14220
boolean obj_get_config_flag(const obj_template_t *obj)
Get the config flag for an obj_template_t Return the explicit value or the inherited value Also retur...
Definition: obj.c:12818
boolean obj_is_obsolete(const obj_template_t *obj)
Check if the object has obsolete status.
Definition: obj.c:19420
status_t obj_get_child_node(obj_template_t *obj, obj_template_t *chobj, const xml_node_t *curnode, boolean xmlorder, dlq_hdr_t *force_modQ, obj_template_t **rettop, obj_template_t **retobj)
Get the correct child node for the specified parent and current XML node.
Definition: obj.c:14654
void obj_number_data_object(obj_template_t *obj)
Number the object tree; initial setup.
Definition: obj.c:19711
boolean obj_is_key(const obj_template_t *obj)
Check if object is being used as a key leaf within a list.
Definition: obj.c:16240
status_t obj_add_unique_backptr(obj_template_t *leafobj, obj_template_t *listobj)
Add a unique backptr to the leaf.
Definition: obj.c:21581
void obj_clear_xpath_backptr(obj_template_t *obj, struct xpath_pcb_t_ *xpath)
Clear an xpath-expr backptr.
Definition: obj.c:18687
boolean obj_get_config_flag_deep(const obj_template_t *obj)
get config flag during augment expand
Definition: obj.c:14788
const xmlChar * obj_get_mod_version(const obj_template_t *obj)
Get the module version for this object.
Definition: obj.c:14074
boolean obj_has_xpath_stmts(obj_template_t *obj)
Check if any must or when stmts in node or all children.
Definition: obj.c:21495
uint32 obj_get_level(const obj_template_t *obj)
Get the nest level for the specified object Top-level is '1' Does not count groupings as a level.
Definition: obj.c:13536
obj_template_t * obj_first_terminal_child(obj_template_t *obj)
Get the first child object if the specified object has any children; MUST BE A TERMINAL NODE!...
Definition: obj.c:7881
boolean obj_is_system_ordered(const obj_template_t *obj)
Check if the object is system or user-ordered.
Definition: obj.c:16458
ncx_yang_version_t obj_get_langver(obj_template_t *obj)
Get the YANG version for this object.
Definition: obj.c:20012
boolean obj_is_cli_text_block(const obj_template_t *obj)
Check if object is marked as ywx:cli-text-block.
Definition: obj.c:18197
boolean obj_is_sm_rpc(const obj_template_t *obj)
Check if the object is a schema mounted RPC method.
Definition: obj.c:15845
obj_oid_t * obj_get_oid_struct(obj_template_t *obj, boolean *malloced)
Get malloced object OID structure that contains OID string and OID count.
Definition: obj.c:20146
status_t obj_copy_object_id(const obj_template_t *obj, xmlChar *buff, uint32 bufflen, uint32 *reallen)
Generate the object ID for an object node and copy to the buffer copy an object ID to a buffer.
Definition: obj.c:11976
void obj_set_notif_log_drops(const obj_template_t *obj, boolean enabled)
Set the event drops enabled flag for the notification object.
Definition: obj.c:19370
obj_template_t * obj_get_parent_choice(obj_template_t *obj)
Get the choice parent of the current object;.
Definition: obj.c:21107
ncx_backptr_t * obj_next_inherit_when_ptr(ncx_backptr_t *ptr)
Get the next xpath pointer struct.
Definition: obj.c:18459
boolean obj_is_data_node(const obj_template_t *obj)
Check if the object is a real node type.
Definition: obj.c:15663
boolean obj_is_mp_parent(obj_template_t *child)
Check if the parent of this object is a Mount Pount object.
Definition: obj.c:21224
obj_template_t * obj_find_child_str(obj_template_t *obj, const xmlChar *modname, const xmlChar *objname, uint32 objnamelen)
Find a child object with the specified Qname.
Definition: obj.c:7591
boolean obj_is_sm_notif(const obj_template_t *obj)
Check if the object is a schema-mounted notification.
Definition: obj.c:15987
boolean obj_is_data_db(const obj_template_t *obj)
Check if the object is some sort of data Constrained to only check the config DB objects,...
Definition: obj.c:15618
boolean obj_is_short_case(obj_template_t *obj)
Check if the object is a short case statement.
Definition: obj.c:16763
obj_template_t * obj_get_augment_obj(obj_template_t *obj)
Get the augobj template from the object pointer.
Definition: obj.c:21858
obj_template_t * obj_find_template_all(ncx_module_t *mod, const xmlChar *modname, const xmlChar *objname)
Check if an obj_template_t in the mod->datadefQ or any of the include files used within the entire ma...
Definition: obj.c:6882
boolean obj_is_mounted(obj_template_t *child)
Check if mounted object.
Definition: obj.c:21172
boolean obj_is_abstract_ex(const obj_template_t *obj)
DUPLICATE FUNCTION OF obj_in_abstract()
Definition: obj.c:20044
boolean obj_any_rpcs(const dlq_hdr_t *datadefQ)
Check if there are any RPC methods in the datadefQ.
Definition: obj.c:11303
obj_template_t * obj_find_template_top_ex(ncx_module_t *mod, const xmlChar *modname, const xmlChar *objname, ncx_name_match_t match_names, boolean alt_names, boolean dataonly, status_t *retres)
Check if an obj_template_t in the mod->datadefQ or any of the include files visible to this module.
Definition: obj.c:6709
boolean obj_maybe_target_template(obj_template_t *obj)
Check a data node and its descendants match the template for NETCONF configuration sources Allow extr...
Definition: obj.c:18982
ncx_status_t obj_get_status(const obj_template_t *obj)
Get the status field for this obj.
Definition: obj.c:12411
boolean obj_is_leaf_list(const obj_template_t *obj)
Check if object is a proper leaf-list.
Definition: obj.c:15114
obj_template_t * obj_get_augment_targobj(obj_template_t *obj)
Get the target object for an augments object.
Definition: obj.c:18086
obj_template_t * obj_find_child_ex(obj_template_t *obj, const xmlChar *modname, const xmlChar *objname, ncx_name_match_t match_names, boolean alt_names, boolean dataonly, status_t *retres)
Find a child object with the specified Qname extended match modes.
Definition: obj.c:7306
obj_template_t * obj_get_default_parm(obj_template_t *obj)
Get the ncx:default-parm object for this object Only supported for OBJ_TYP_CONTAINER and OBJ_TYP_RPCI...
Definition: obj.c:14721
obj_iffeature_ptr_t * obj_next_iffeature_ptr(obj_iffeature_ptr_t *iffptr)
Get the next if-feature pointer.
Definition: obj.c:18417
obj_metadata_t * obj_next_metadata(const obj_metadata_t *meta)
Get the next object metadata definition in the object.
Definition: obj.c:17303
status_t obj_fill_keystackQ(obj_template_t *obj, dlq_hdr_t *keystackQ)
Fill a keystackQ with backptrs to obj_template_t for key leafs.
Definition: obj.c:20288
struct xpath_pcb_t_ * obj_next_xpath_backptr(obj_template_t *obj, struct xpath_pcb_t_ *xpath)
Get the next XPath backptr.
Definition: obj.c:18542
ncx_leafref_class_t obj_get_leafref_class(obj_template_t *obj)
Get the leafref class for a leafref object.
Definition: obj.c:19634
obj_defval_tk_t * obj_first_defval_tk(const obj_refine_t *ref)
Get the first defval_tk entry.
Definition: obj.c:19787
void obj_set_sil_priority(obj_template_t *obj, uint8 prio)
Set the SIL priority field.
Definition: obj.c:19495
void obj_clear_datarule(obj_template_t *obj, const void *rule)
Clear the datarule back-ptr for this node.
Definition: obj.c:20399
uint32 obj_get_level_mp(const obj_template_t *obj)
Get the nest level for the specified object Top-level is '1' Does not count groupings as a level.
Definition: obj.c:13578
obj_template_t * obj_find_child_lrcheck(obj_template_t *obj, const xmlChar *modname, const xmlChar *objname)
Find a child object with the specified Qname LeafRef Check VERSION.
Definition: obj.c:7042
obj_template_t * obj_new_template(obj_type_t objtype)
Malloc and initialize the fields in a an object template.
Definition: obj.c:6219
boolean obj_is_any(const obj_template_t *obj)
Get the config flag for the top-level object Check the specified object all the way to root.
Definition: obj.c:15075
boolean obj_in_notif(const obj_template_t *obj)
Check if the object is in a notification.
Definition: obj.c:15794
obj_template_t * obj_next_terminal_child_nokey_nochoice(obj_template_t *obj)
Get the next child object if the specified object has any children.
Definition: obj.c:8254
boolean obj_find_xpath_backptr(obj_template_t *obj, struct xpath_pcb_t_ *xpath)
Find an xpath-expr backptr.
Definition: obj.c:18484
void obj_enter_xpath_mode(void)
Enter xpath mode and start ignoring obj_is_enabled.
Definition: obj.c:19954
void obj_free_template(obj_template_t *obj)
Scrub the memory in a obj_template_t by freeing all the sub-fields and then freeing the entire struct...
Definition: obj.c:6357
status_t obj_gen_object_id_oid(ncx_module_t *mod, const obj_template_t *obj, xmlChar **buff)
Malloc and Generate the object ID for an object node Used for canonical ID string comparison to gener...
Definition: obj.c:11697
boolean obj_is_mandatory(obj_template_t *obj)
Figure out if the obj is YANG mandatory or not.
Definition: obj.c:15315
boolean obj_has_children(obj_template_t *obj)
Check if there are any accessible nodes within the object.
Definition: obj.c:16936
boolean obj_is_schema_instance_string(const obj_template_t *obj)
Check if object is a schema-instance string.
Definition: obj.c:16403
ncx_sid_t obj_get_yang_sid(const obj_template_t *obj)
Get the YANG SID for this object.
Definition: obj.c:14154
obj_deviation_t * obj_new_deviation(void)
Malloc and initialize the fields in a an object deviation statement.
Definition: obj.c:11452
uint16 obj_get_key_num(obj_template_t *obj)
Get the key number for the object.
Definition: obj.c:19191
boolean obj_in_abstract(const obj_template_t *obj)
Check if object is being used as an object identifier or error-info CHECK ENTIRE TREE UP TO ROOT.
Definition: obj.c:16275
void obj_free_iffeature_ptr(obj_iffeature_ptr_t *iffptr)
Free an obj_iffeature_ptr_t struct.
Definition: obj.c:18380
const xmlChar * obj_get_reference(const obj_template_t *obj)
Get the reference field for this obj.
Definition: obj.c:12700
void obj_force_hidden(obj_template_t *obj)
Force an object to be hidden.
Definition: obj.c:20243
obj_template_t * obj_next_unique_backptr(obj_template_t *leafobj, obj_template_t *curbackptr)
Get the next unique backptr for a leaf object.
Definition: obj.c:21654
boolean obj_delete_all_supported(obj_template_t *obj)
Check if the object supports a direct delete-all or remove-all operation.
Definition: obj.c:19659
obj_unique_comp_t * obj_first_unique_comp(obj_unique_t *un)
Get the first identifier in a unique-stmt for a list.
Definition: obj.c:10865
obj_template_t * obj_get_uses_obj(obj_template_t *obj)
Get the usesobj template from the object pointer.
Definition: obj.c:21840
void obj_set_key_leaf(obj_template_t *obj, uint16 keynum)
Set the key data for the object.
Definition: obj.c:19167
boolean obj_is_deleted(const obj_template_t *obj)
Check if object has been deleted by a deviate not-supported.
Definition: obj.c:16312
obj_template_t * obj_find_child(obj_template_t *obj, const xmlChar *modname, const xmlChar *objname)
Find a child object with the specified Qname.
Definition: obj.c:6959
uint8 obj_get_fraction_digits(const obj_template_t *obj)
Get the fraction-digits field from the object typdef.
Definition: obj.c:14960
status_t obj_gen_object_id_xpath(const obj_template_t *obj, xmlChar **buff)
Malloc and Generate the object ID for an object node.
Definition: obj.c:11753
obj_defval_tk_t * obj_first_dev_defval_tk(const obj_deviate_t *dev)
Get the first defval_tk entry.
Definition: obj.c:19825
obj_unique_t * obj_new_unique(void)
Alloc and Init a obj_unique_t struct.
Definition: obj.c:10631
dlq_hdr_t * obj_get_leafrefQ(const obj_template_t *obj)
Get the leafrefQ for this obj.
Definition: obj.c:12993
void obj_find_delete_defval(obj_template_t *obj, const xmlChar *defval)
Find and delete a leaf-list default for deviate delete default foo.
Definition: obj.c:19863
boolean obj_has_iffeature(obj_template_t *obj)
Check any if-feature statements exist for the specified object.
Definition: obj.c:16682
void obj_clr_enable_chk(obj_template_t *obj)
Force an object to re-evaluate the enable check Will call for all children.
Definition: obj.c:20259
const xmlChar * obj_get_units(obj_template_t *obj)
Get the units clause for this object, if any.
Definition: obj.c:14386
boolean obj_is_empty(const obj_template_t *obj)
Check if object was entered in empty fashion:
Definition: obj.c:16013
boolean obj_in_edit2_mode(obj_template_t *obj)
Check if the object is an edit2 or edit3 container or list or terminal node child in an edit2 or edit...
Definition: obj.c:19591
boolean obj_in_rpc_reply(const obj_template_t *obj)
Check if the object is in an rpc-reply/output section.
Definition: obj.c:15757
boolean obj_is_action(const obj_template_t *obj)
Check if the object is a YANG 1.1 action.
Definition: obj.c:15908
boolean obj_is_uses(const obj_template_t *obj)
Check if object is a YANG uses-stmt.
Definition: obj.c:15261
obj_template_t * obj_previous_child(obj_template_t *obj)
Get the previous child object if the specified object has any children.
Definition: obj.c:8434
const xmlChar * obj_get_keystr(obj_template_t *obj)
Get the key string for this list object.
Definition: obj.c:17961
boolean obj_has_text_content(const obj_template_t *obj)
Check if the specified object type has a text content for XPath purposes.
Definition: obj.c:12380
boolean obj_get_config_flag2(const obj_template_t *obj, boolean *setflag)
Get the config flag for an obj_template_t Return the explicit value or the inherited value Also retur...
Definition: obj.c:12855
boolean obj_is_leafy(const obj_template_t *obj)
Check if object is a proper leaf or leaflist.
Definition: obj.c:15277
void obj_exit_xpath_mode(void)
Exit xpath mode and stop ignoring obj_is_enabled.
Definition: obj.c:19963
obj_template_t * obj_next_terminal_child_nokey(obj_template_t *obj)
Get the next child object if the specified object has any children; MUST BE TERMINAL NODE!...
Definition: obj.c:8214
const typ_def_t * obj_get_ctypdef(const obj_template_t *obj)
Get the typdef for the leaf or leaf-list : Const version.
Definition: obj.c:13799
boolean obj_has_aio_list(obj_template_t *obj)
Check is AIO object is a list or if its parent is a list object.
Definition: obj.c:20903
boolean obj_is_dup_local(obj_template_t *obj)
Check if this object is one that has a duplicate sibling with the same local-name and different modul...
Definition: obj.c:19145
const ncx_iffeature_t * obj_get_next_iffeature(const ncx_iffeature_t *iffeature)
Get the next if-feature clause (if any)
Definition: obj.c:15018
boolean obj_is_mp_with_rootcb(const obj_template_t *obj)
Check if current object is Mount Point object.
Definition: obj.c:21260
boolean obj_is_target_template(obj_template_t *obj)
Check a data node and its descendants match the template for NETCONF configuration sources.
Definition: obj.c:18922
boolean obj_notif_enabled(const obj_template_t *obj)
Check if the notification object is enabled.
Definition: obj.c:19306
obj_metadata_t * obj_first_metadata(const obj_template_t *obj)
Get the first object metadata definition in the object.
Definition: obj.c:17278
obj_template_t * obj_last_child(obj_template_t *obj)
Get the last child object if the specified object has any children.
Definition: obj.c:7994
const obj_template_t * obj_get_real_cparent(const obj_template_t *obj)
Get the parent of the current object; skip OBJ_TYP_CHOICE and OBJ_TYP_CASE.
Definition: obj.c:14519
boolean obj_is_mandatory_when(obj_template_t *obj)
Figure out if the obj is YANG mandatory or not Check the when-stmts, not just mandatory-stmt.
Definition: obj.c:15467
obj_template_t * obj_next_terminal_child(obj_template_t *obj)
Get the next child object if the specified object has any children; MUST BE TERMINAL NODE!...
Definition: obj.c:8179
dlq_hdr_t * obj_get_mustQ(const obj_template_t *obj)
Get the mustQ for this obj.
Definition: obj.c:12949
dlq_hdr_t * obj_get_datadefQ(obj_template_t *obj)
Get the datadefQ (or caseQ) if this object has one.
Definition: obj.c:13085
const xmlChar * obj_get_mod_name(const obj_template_t *obj)
Get the module name for this object.
Definition: obj.c:13925
boolean obj_notif_log_drops(const obj_template_t *obj)
Check if the event drops for the notification object is enabled.
Definition: obj.c:19325
void obj_set_ncx_flags(obj_template_t *obj)
Check the NCX appinfo extensions and set flags as needed.
Definition: obj.c:17409
boolean obj_use_get_when_check(const obj_template_t *obj)
check an object needs to use a when-check for GET processing
Definition: obj.c:20673
obj_template_t * obj_find_schema_template(dlq_hdr_t *que, const xmlChar *modname, const xmlChar *objname)
Find an object with the specified name For YANG schema-nodeid so NEVER lookdeep.
Definition: obj.c:6550
obj_unique_t * obj_next_unique(obj_unique_t *un)
Get the next unique-stmt for a list.
Definition: obj.c:10841
boolean obj_is_secure(const obj_template_t *obj)
Check if object is tagged ncx:secure.
Definition: obj.c:16424
boolean obj_get_xpath_oper_ok(const obj_template_t *obj)
Get the object XPath oper OK flag.
Definition: obj.c:20953
obj_template_t * obj_next_child_deep_ex(obj_template_t *obj, boolean stopnext)
Get the next child object if the specified object has any children.
Definition: obj.c:8596
boolean obj_is_cloned(const obj_template_t *obj)
Figure out if the obj is a cloned object, inserted via uses or augment statements.
Definition: obj.c:15480
boolean obj_is_final(obj_template_t *obj)
Check if the object template represents a fully expanded template or if it is inside a grouping.
Definition: obj.c:20200
ncx_module_t * obj_get_real_mod(obj_template_t *obj)
Get the module struct for the submodule or main module with this object.
Definition: obj.c:21002
uint32 obj_key_count(const obj_template_t *obj)
Get the number of keys for this object.
Definition: obj.c:11186
boolean obj_is_hidden_from_cli(const obj_template_t *obj)
Check if object is marked as a hidden object from CLI.
Definition: obj.c:16074
ncx_btype_t obj_get_basetype(const obj_template_t *obj)
Get the NCX base type enum for the object type.
Definition: obj.c:13827
const xmlChar * obj_get_typestr(const obj_template_t *obj)
Get the name of the object type.
Definition: obj.c:13025
boolean obj_is_sil_force_replay(const obj_template_t *obj)
Check if this object has the OBJ_FL_SIL_FORCE_REPLAY bit set.
Definition: obj.c:19246
boolean obj_is_choice(const obj_template_t *obj)
Check if object is a YANG choice.
Definition: obj.c:15215
status_t obj_cache_datarule(obj_template_t *obj, void *rule)
Set the data-rule back-ptr for this node.
Definition: obj.c:20364
obj_template_t * obj_get_real_parent(obj_template_t *obj)
Get the parent of the current object; skip OBJ_TYP_CHOICE and OBJ_TYP_CASE.
Definition: obj.c:14482
boolean obj_is_block_user_create(const obj_template_t *obj)
Check if object is marked as ncx:user-write with create access disabled.
Definition: obj.c:18288
struct xpath_pcb_t_ * obj_first_xpath_backptr(obj_template_t *obj)
Get the first xpath backptr.
Definition: obj.c:18518
dlq_hdr_t * obj_get_appinfoQ(obj_template_t *obj)
Get the appinfoQ for this obj.
Definition: obj.c:12925
obj_template_t * obj_get_parent(obj_template_t *obj)
Get the parent of the current object.
Definition: obj.c:14432
grp_template_t * obj_find_grouping(obj_template_t *obj, const xmlChar *grpname)
Check if a grp_template_t in the obj groupingQ hierarchy.
Definition: obj.c:9772
boolean obj_is_cli_equals_ok(const obj_template_t *obj)
Check if object is marked as ncx:default-parm-equals-ok.
Definition: obj.c:18180
obj_defval_tk_t * obj_next_defval_tk(const obj_defval_tk_t *defval_tk)
Get the next defval_tk entry.
Definition: obj.c:19806
const xmlChar * obj_get_name(const obj_template_t *obj)
Get the name field for this obj.
Definition: obj.c:12180
boolean obj_has_rw_children_ex(obj_template_t *obj, boolean term_only)
Check if there are any accessible read-write child nodes within the object.
Definition: obj.c:17041
void obj_free_unique(obj_unique_t *un)
Free a obj_unique_t struct.
Definition: obj.c:10676
boolean obj_has_ro_descendants(obj_template_t *obj)
Check if there are any accessible read-only descendant nodes within the object.
Definition: obj.c:16987
obj_template_t * obj_find_template_top(ncx_module_t *mod, const xmlChar *modname, const xmlChar *objname)
Check if an obj_template_t in the mod->datadefQ or any of the include files visible to this module.
Definition: obj.c:6665
obj_template_t * obj_first_terminal_child_nokey_nochoice(obj_template_t *obj)
Get the first child object if the specified object has any children.
Definition: obj.c:7959
const obj_key_t * obj_next_ckey(const obj_key_t *objkey)
Get the next key record: Const version.
Definition: obj.c:11162
boolean obj_is_np_container(const obj_template_t *obj)
Check if the object is an Non-Presence-container.
Definition: obj.c:16484
void obj_free_deviation(obj_deviation_t *deviation)
Clean and free an object deviation statement.
Definition: obj.c:11476
void obj_sort_children(obj_template_t *obj)
Check all the child nodes of the specified object and rearrange them into alphabetical order,...
Definition: obj.c:17329
boolean obj_is_augment(const obj_template_t *obj)
Check if the obj is an augment statement.
Definition: obj.c:15520
const obj_key_t * obj_first_ckey(const obj_template_t *obj)
Get the first key record: Const version.
Definition: obj.c:11084
status_t obj_gen_object_id(const obj_template_t *obj, xmlChar **buff)
Malloc and Generate the object ID for an object node.
Definition: obj.c:11526
boolean obj_is_create_np_ro(obj_template_t *obj)
Check if this is an empty read-only NP-container that should be created as an empty NP container.
Definition: obj.c:21693
boolean obj_is_leaf(const obj_template_t *obj)
Check if object is a proper leaf.
Definition: obj.c:15097
const xmlChar * obj_get_help_description(const obj_template_t *obj)
Get the help description field for this obj Check if a 'help' appinfo node is present.
Definition: obj.c:12576
boolean obj_is_exclusive_rpc(const obj_template_t *obj)
Check if this object has the OBJ_FL_EXCLUSIVE_WRITE bit set.
Definition: obj.c:19224
boolean obj_is_root(const obj_template_t *obj)
Check if object is marked as a root object.
Definition: obj.c:16091
boolean obj_is_singular(const obj_template_t *obj)
Check if the object can have only one instance or not.
Definition: obj.c:20550
obj_template_t * obj_get_top_aio_get2(obj_template_t *child)
Find the top AIO object.
Definition: obj.c:20857
status_t obj_set_xpath_backptrs(obj_template_t *obj)
Check a top-level data node and all its descendants to see if they have any XPath expressions that ne...
Definition: obj.c:18762
const obj_template_t * obj_find_template_con(dlq_hdr_t *que, const xmlChar *modname, const xmlChar *objname)
Find an object with the specified name Return a const pointer; used by yangdump.
Definition: obj.c:6581
void obj_set_sort_type(obj_template_t *obj, ncx_sort_type_t typ)
Set the sort type for the object if OK Otherwise this function call has no affect.
Definition: obj.c:21722
obj_deviate_t * obj_new_deviate(void)
Malloc and initialize the fields in a an object deviate statement.
Definition: obj.c:11366
boolean obj_find_all_descendants(ncx_module_t *exprmod, obj_walker_fn_t walkerfn, void *cookie1, void *cookie2, obj_template_t *startnode, const xmlChar *modname, const xmlChar *name, boolean configonly, boolean textmode, boolean useroot, boolean orself, boolean *fncalled)
Find all occurances of the specified node(s) within the descendants of the current node.
Definition: obj.c:9137
void obj_set_dup_local(obj_template_t *obj)
Flag the object as one that has a duplicate sibling with the same local-name and different module nam...
Definition: obj.c:19121
boolean obj_is_very_secure(const obj_template_t *obj)
Check if object is tagged ncx:very-secure.
Definition: obj.c:16441
uint32 obj_enabled_child_count(obj_template_t *obj)
Get the count of the number of enabled child nodes for the object template.
Definition: obj.c:17840
ncx_module_t * obj_get_mod_for_dump(obj_template_t *obj)
Get the module pointer for this object Use for sub-module !!! Used by yangdump-pro!...
Definition: obj.c:14039
boolean obj_parent_same_module(const obj_template_t *obj)
Check if the object parent object is the same.
Definition: obj.c:19451
boolean obj_npcon_has_defaults(obj_template_t *obj)
Check if the specified NP container has defaults within it Must be a config object!...
Definition: obj.c:13437
boolean obj_has_mandatory_children(obj_template_t *obj)
Check if there are any mandatory children.
Definition: obj.c:20707
uint16 obj_index_t
object index only applies to child nodes; this is assigned at runtime and any augments loaded at run-...
Definition: obj.h:797
obj_augtype_t
enumeration for different YANG augment statement types
Definition: obj.h:801
unsigned long oid_t
data type used in SNMP
Definition: obj.h:1209
uint8 obj_testflags_t
object test flags
Definition: obj.h:1224
obj_deviate_arg_t
type of deviation for each deviate entry
Definition: obj.h:1388
obj_type_t
enumeration for different YANG data def statement types the enum order is significant!...
Definition: obj.h:690
boolean(* obj_walker_fn_t)(obj_template_t *obj, void *cookie1, void *cookie2, boolean nonconfig_warn)
child or descendant node search walker function
Definition: obj.h:1493
@ OBJ_AUGTYP_RPCOUT
rpc output
Definition: obj.h:804
@ OBJ_AUGTYP_NONE
not set
Definition: obj.h:802
@ OBJ_AUGTYP_DATA
within data
Definition: obj.h:806
@ OBJ_AUGTYP_RPCIN
rpc input
Definition: obj.h:803
@ OBJ_AUGTYP_CASE
case
Definition: obj.h:805
@ OBJ_DARG_NONE
not set
Definition: obj.h:1389
@ OBJ_DARG_NOT_SUPPORTED
deviate not-supported
Definition: obj.h:1393
@ OBJ_DARG_DELETE
deviate delete
Definition: obj.h:1391
@ OBJ_DARG_ADD
deviate add
Definition: obj.h:1390
@ OBJ_DARG_REPLACE
deviate replace
Definition: obj.h:1392
@ OBJ_TYP_CASE
This object represents a YANG case schema node.
Definition: obj.h:720
@ OBJ_TYP_ANYXML
This object represents a YANG 1.1 anydata data node.
Definition: obj.h:694
@ OBJ_TYP_CHOICE
This object represents a YANG choice schema node.
Definition: obj.h:715
@ OBJ_TYP_ACTION
This object represents a YANG 1.1 action schema node.
Definition: obj.h:786
@ OBJ_TYP_REFINE
This object represents a YANG refine statement.
Definition: obj.h:739
@ OBJ_TYP_USES
This object represents a YANG uses schema node.
Definition: obj.h:731
@ OBJ_TYP_NOTIF
This object represents a YANG notification statement.
Definition: obj.h:776
@ OBJ_TYP_LEAF_LIST
This object represents a YANG leaf-list data node.
Definition: obj.h:706
@ OBJ_TYP_LEAF
This object represents a YANG leaf data node.
Definition: obj.h:703
@ OBJ_TYP_ANYDATA
This object represents a YANG 1.1 anydata data node.
Definition: obj.h:779
@ OBJ_TYP_NONE
not set
Definition: obj.h:691
@ OBJ_TYP_RPCIO
This object represents a YANG input or output statement.
Definition: obj.h:767
@ OBJ_TYP_RPC
This object represents a YANG rpc statement.
Definition: obj.h:759
@ OBJ_TYP_CONTAINER
This object represents a YANG presence or non-presence container.
Definition: obj.h:700
@ OBJ_TYP_LIST
This object represents a YANG list data node.
Definition: obj.h:709
@ OBJ_TYP_AUGMENT
This object represents a YANG augment statement.
Definition: obj.h:750
YANG Grouping Statement Handler.
NCX System Logging Manager.
YANG module data structures Many internal representations of YANG module constructs.
NETCONF protocol remote procedure call common definitions.
Global error messages for status code enumerations.
One YANG 'grouping' definition – sibling set template.
Definition: grp.h:87
used with various structs to cache back-ptrs the 'node' pointer may or may not be malloced!...
Definition: ncxtypes.h:1530
struct to remember error info tkc->cur_err will be checked before tkc->cur for error information
Definition: ncxtypes.h:877
YANG if-feature entry.
Definition: ncxtypes.h:953
representation of one module or submodule during and after parsing
Definition: ncxtypes.h:1138
Schema Mount Root Control Block used in the object template.
Definition: ncxtypes.h:1893
One YANG augment statement struct (top-level or in case-stmt.
Definition: obj.h:1128
dlq_hdr_t datadefQ
Q of obj_template_t.
Definition: obj.h:1144
ncx_status_t status
status-stmt
Definition: obj.h:1143
xmlChar * target
Xpath schema-node target to augment.
Definition: obj.h:1130
xmlChar * ref
reference-stmt (not saved on server)
Definition: obj.h:1136
obj_augtype_t augtype
internal augment type enum
Definition: obj.h:1142
uint16 depth
internal nest depth of augment
Definition: obj.h:1145
xmlChar * descr
description-stmt (not saved on server)
Definition: obj.h:1133
struct obj_template_t_ * targobj
resolved backptr to augmented object
Definition: obj.h:1139
One YANG 'case' definition.
Definition: obj.h:1002
xmlChar * name
case name
Definition: obj.h:1003
ncx_status_t status
status-stmt
Definition: obj.h:1016
xmlChar * ref
reference-stmt (not saved on server)
Definition: obj.h:1009
boolean nameclone
the nameclone flag is set even though the clone bit is also set; this can probably be removed
Definition: obj.h:1015
xmlChar * descr
description-stmt (not saved on server)
Definition: obj.h:1006
dlq_hdr_t * datadefQ
Q of obj_template_t.
Definition: obj.h:1011
One YANG 'choice' definition.
Definition: obj.h:986
dlq_hdr_t * caseQ
Q of obj_template_t.
Definition: obj.h:995
xmlChar * name
choice name
Definition: obj.h:987
ncx_status_t status
status-stmt
Definition: obj.h:997
xmlChar * ref
reference-stmt (not saved on server)
Definition: obj.h:994
xmlChar * descr
description-stmt (not saved on server)
Definition: obj.h:991
xmlChar * defval
default case
Definition: obj.h:988
boolean caseQclone
flag caseQ is cloned
Definition: obj.h:996
One YANG 'container' definition.
Definition: obj.h:847
xmlChar * name
name of container
Definition: obj.h:849
ncx_status_t status
status-stmt
Definition: obj.h:862
xmlChar * ref
reference-stmt (not saved by server)
Definition: obj.h:855
dlq_hdr_t mustQ
Q of xpath_pcb_t.
Definition: obj.h:863
xmlChar * presence
presence-stmt
Definition: obj.h:858
xmlChar * descr
description-stmt (not saved by server)
Definition: obj.h:852
struct obj_template_t_ * defaultparm
default parm for yangcli
Definition: obj.h:864
dlq_hdr_t * typedefQ
Q of typ_template_t.
Definition: obj.h:859
dlq_hdr_t * datadefQ
Q of obj_template_t.
Definition: obj.h:861
dlq_hdr_t * groupingQ
Q of grp_template_t.
Definition: obj.h:860
One YANG 1.1 default stored in a Q for refine and deviate.
Definition: obj.h:819
xmlChar * def
default value string
Definition: obj.h:821
dlq_hdr_t qhdr
queue header
Definition: obj.h:820
ncx_error_t def_tkerr
file and line info for compiler
Definition: obj.h:822
YANG deviate statement struct.
Definition: obj.h:1398
dlq_hdr_t defval_tkQ
Q of obj_defval_tk_t (leaf-list can have multiple default-stmt)
Definition: obj.h:1431
dlq_hdr_t uniqueQ
Q of obj_unique_t.
Definition: obj.h:1453
ncx_error_t tkerr
the error info for each sub-clause is saved because when the deviation-stmt is parsed,...
Definition: obj.h:1407
dlq_hdr_t appinfoQ
Q of ncx_appinfo_t.
Definition: obj.h:1454
ncx_error_t arg_tkerr
same comment as tkerr
Definition: obj.h:1416
dlq_hdr_t mustQ
Q of xpath_pcb_t.
Definition: obj.h:1452
boolean config
deviating config-stmt
Definition: obj.h:1434
dlq_hdr_t qhdr
queue header
Definition: obj.h:1399
typ_def_t * typdef
typedef if deviating the type
Definition: obj.h:1419
ncx_error_t type_tkerr
same comment as tkerr
Definition: obj.h:1422
uint32 maxelems
deviating max-elements
Definition: obj.h:1450
ncx_error_t config_tkerr
same comment as tkerr
Definition: obj.h:1437
uint32 minelems
deviating min-elements
Definition: obj.h:1446
ncx_error_t minelems_tkerr
also minset
Definition: obj.h:1447
xmlChar * units
units if deviating the units
Definition: obj.h:1425
boolean empty
deviate-stmt is empty
Definition: obj.h:1410
ncx_error_t units_tkerr
same comment as tkerr
Definition: obj.h:1428
ncx_error_t maxelems_tkerr
also maxset
Definition: obj.h:1451
ncx_error_t mandatory_tkerr
same comment as tkerr
Definition: obj.h:1443
obj_deviate_arg_t arg
deviate argument enum
Definition: obj.h:1413
boolean mandatory
deviating mandatory-stmt
Definition: obj.h:1440
YANG deviation statement struct.
Definition: obj.h:1459
ncx_error_t tkerr
file and line info for compiler
Definition: obj.h:1472
dlq_hdr_t appinfoQ
Q of ncx_appinfo_t.
Definition: obj.h:1478
xmlChar * target
schema-node target to deviate
Definition: obj.h:1461
xmlChar * ref
reference-stmt (not saved on server)
Definition: obj.h:1469
xmlChar * devmodname
set if not the targmod
Definition: obj.h:1473
dlq_hdr_t qhdr
queue header
Definition: obj.h:1460
obj_template_t * targobj
target object when resolved
Definition: obj.h:1463
dlq_hdr_t deviateQ
Q of obj_deviate_t.
Definition: obj.h:1477
status_t res
parse status
Definition: obj.h:1476
xmlChar * descr
description-stmt (not saved on server)
Definition: obj.h:1466
boolean empty
for display in yangdump
Definition: obj.h:1474
boolean annotation
set from annotation
Definition: obj.h:1475
xmlChar * targmodname
target module name
Definition: obj.h:1462
custom error message filter control block
Definition: obj.h:1178
dlq_hdr_t qhdr
queue header
Definition: obj.h:1179
boolean is_errortag
error-tag flag
Definition: obj.h:1181
xmlChar * matchstr
message string to match
Definition: obj.h:1180
custom error message parameter control block
Definition: obj.h:1186
dlq_hdr_t qhdr
queue header
Definition: obj.h:1187
uint32 len
state : length
Definition: obj.h:1191
xmlChar * path
path of replacement data
Definition: obj.h:1188
xmlChar * valstr
state: value string
Definition: obj.h:1194
custom error message control block
Definition: obj.h:1199
xmlChar * langstr
language string
Definition: obj.h:1202
dlq_hdr_t qhdr
queue header
Definition: obj.h:1200
dlq_hdr_t parmQ
Q of obj_errmsg_parm_t.
Definition: obj.h:1203
xmlChar * basestr
base string
Definition: obj.h:1201
dlq_hdr_t filterQ
Q of obj_errmsg_filter_t.
Definition: obj.h:1204
back-pointer to inherited if-feature statements
Definition: obj.h:1171
dlq_hdr_t qhdr
queue heaader
Definition: obj.h:1172
ncx_iffeature_t * iffeature
if-feature back-ptr
Definition: obj.h:1173
One YANG list key component.
Definition: obj.h:811
struct obj_template_t_ * keyobj
backptr to key object
Definition: obj.h:813
dlq_hdr_t qhdr
queue header
Definition: obj.h:812
boolean seen
used by yangdiff
Definition: obj.h:814
One YANG 'leaf' or 'anyxml' or 'anydata' definition.
Definition: obj.h:870
struct obj_template_t_ * leafrefobj
leafref obj backptr only if btyp == NCX_BT_LEAFREF
Definition: obj.h:908
xmlChar * name
name of leaf or anyxml/anydata
Definition: obj.h:872
ncx_status_t status
status-stmt
Definition: obj.h:890
xmlChar * ref
reference-stmt (not saved on server)
Definition: obj.h:884
dlq_hdr_t mustQ
Q of xpath_pcb_t.
Definition: obj.h:895
typ_def_t * typdef
typedef for the data type (leaf only)
Definition: obj.h:887
xmlChar * descr
description-stmt (not saved on server)
Definition: obj.h:881
xmlChar * units
units-stmt only in a leaf
Definition: obj.h:875
dlq_hdr_t leafrefQ
used for quick leafref validation on server
Definition: obj.h:898
xmlChar * defval
default-stmt only in a leaf
Definition: obj.h:878
dlq_hdr_t uniqrefQ
used for quick unique-stmt validation on server A leaf can be the target of a unique stmt component f...
Definition: obj.h:905
uint16 keynum
internal key number only for keay leafs
Definition: obj.h:893
One YANG 'leaf-list' definition.
Definition: obj.h:914
ncx_sort_type_t sort_type
sort type applies to system
Definition: obj.h:945
struct obj_template_t_ * leafrefobj
leafref obj backptr only if btyp == NCX_BT_LEAFREF
Definition: obj.h:943
xmlChar * name
leaf-list name
Definition: obj.h:916
ncx_status_t status
status-stmt
Definition: obj.h:937
xmlChar * ref
reference-stmt (not saved on server)
Definition: obj.h:925
boolean minset
min-elements set
Definition: obj.h:933
boolean maxset
max-elements set
Definition: obj.h:935
dlq_hdr_t mustQ
Q of xpath_pcb_t.
Definition: obj.h:938
typ_def_t * typdef
typedef for the data type
Definition: obj.h:928
uint32 maxelems
max-elements value
Definition: obj.h:936
xmlChar * descr
description-stmt (not saved on server)
Definition: obj.h:922
uint32 minelems
min-elements value
Definition: obj.h:934
xmlChar * units
units-stmt
Definition: obj.h:919
dlq_hdr_t leafrefQ
Q of ncx_backptr_t to obj_template_t.
Definition: obj.h:939
dlq_hdr_t defvalQ
YANG 1.1, Q of malloced ncx_backptr_t.
Definition: obj.h:940
boolean ordersys
ordered-by system or user
Definition: obj.h:932
boolean defset
T if any defaults specified for this leaf-list.
Definition: obj.h:931
One YANG 'list' definition.
Definition: obj.h:950
dlq_hdr_t uniqueQ
Q of obj_unique_t.
Definition: obj.h:966
ncx_sort_type_t sort_type
sort type applies to system
Definition: obj.h:981
xmlChar * name
list name
Definition: obj.h:952
ncx_status_t status
status-stmt
Definition: obj.h:972
xmlChar * ref
reference-stmt (not saved on server)
Definition: obj.h:961
ncx_error_t keytkerr
saved error info for key-stmt errors
Definition: obj.h:976
boolean minset
min-elements set
Definition: obj.h:968
boolean maxset
max-elements set
Definition: obj.h:970
dlq_hdr_t mustQ
Q of xpath_pcb_t.
Definition: obj.h:973
xmlChar * keystr
key-stmt (not required if config=false)
Definition: obj.h:955
uint32 maxelems
max-elements value
Definition: obj.h:971
xmlChar * descr
description-stmt (not saved on server)
Definition: obj.h:958
uint32 minelems
min-elements value
Definition: obj.h:969
obj_index_t last_index
internal numbering data for val_child ordering
Definition: obj.h:979
dlq_hdr_t keyQ
Q of obj_key_t.
Definition: obj.h:965
boolean ordersys
ordered-by system or user
Definition: obj.h:967
dlq_hdr_t * typedefQ
Q of typ_template_t.
Definition: obj.h:962
dlq_hdr_t * datadefQ
Q of obj_template_t.
Definition: obj.h:964
dlq_hdr_t * groupingQ
Q of grp_template_t.
Definition: obj.h:963
One YANG 'notification' clause definition.
Definition: obj.h:1150
boolean in_data
defined in data, YANG 1.1 only
Definition: obj.h:1166
boolean notif_enabled
enabled or disabled in server
Definition: obj.h:1164
dlq_hdr_t datadefQ
Q of obj_template_t.
Definition: obj.h:1162
xmlChar * name
notification name
Definition: obj.h:1152
ncx_status_t status
status-stmt
Definition: obj.h:1159
xmlChar * ref
reference-stmt (not saved on server)
Definition: obj.h:1158
dlq_hdr_t mustQ
Q of xpath_pcb_t.
Definition: obj.h:1163
xmlChar * descr
description-stmt (not saved on server)
Definition: obj.h:1155
boolean notif_log_drops
log drops for this event type
Definition: obj.h:1165
dlq_hdr_t * typedefQ
Q of typ_template_t.
Definition: obj.h:1160
dlq_hdr_t * groupingQ
Q of gtp_template_t.
Definition: obj.h:1161
defines the snmp oid value, stored as an array of integers for easier comparision when performing AVL...
Definition: obj.h:1217
oid_t * oidc
OID component.
Definition: obj.h:1219
uint8 cnt
amount of Sub-Ids (max 128)
Definition: obj.h:1218
One YANG refine statement struct.
Definition: obj.h:1039
dlq_hdr_t defval_tkQ
Q of obj_defval_tk_t.
Definition: obj.h:1069
xmlChar * target
relative-path of the object to refine
Definition: obj.h:1041
xmlChar * ref
reference-stmt (not saved on server)
Definition: obj.h:1058
dlq_hdr_t mustQ
Q of xpath_pcb_t.
Definition: obj.h:1080
xmlChar * presence
refining the presence-stmt
Definition: obj.h:1064
uint32 maxelems
max-elements value
Definition: obj.h:1078
xmlChar * descr
description-stmt (not saved on server)
Definition: obj.h:1047
ncx_error_t ref_tkerr
same comment as descr_tkerr applies here
Definition: obj.h:1061
ncx_error_t config_tkerr
config and confset are in the object flags
Definition: obj.h:1072
uint32 minelems
min-elements value
Definition: obj.h:1076
struct obj_template_t_ * targobj
resolved target object to refine
Definition: obj.h:1044
ncx_error_t minelems_tkerr
also minset
Definition: obj.h:1077
ncx_error_t descr_tkerr
the token for each sub-clause is saved because when the refine-stmt is parsed, the target is not know...
Definition: obj.h:1055
ncx_error_t maxelems_tkerr
also maxset
Definition: obj.h:1079
ncx_error_t presence_tkerr
same comment as descr_tkerr applies here
Definition: obj.h:1067
ncx_error_t mandatory_tkerr
mandatory and mandset are in the object flags
Definition: obj.h:1075
One YANG rpc-stmt struct.
Definition: obj.h:1105
dlq_hdr_t datadefQ
Q of obj_template_t.
Definition: obj.h:1118
xmlChar * name
rpc method name
Definition: obj.h:1107
ncx_status_t status
status-stmt
Definition: obj.h:1115
xmlChar * ref
reference-stmt (not saved on server)
Definition: obj.h:1113
xmlChar * descr
description-stmt (not saved on server)
Definition: obj.h:1110
boolean supported
mod loaded, not implemented
Definition: obj.h:1123
dlq_hdr_t * typedefQ
Q of typ_template_t.
Definition: obj.h:1116
dlq_hdr_t * groupingQ
Q of gtp_template_t.
Definition: obj.h:1117
xmlns_id_t nsid
internal fields for manager and agent
Definition: obj.h:1122
boolean is_action
YANG 1.1 only.
Definition: obj.h:1119
One YANG input-stmt or output-stmt struct.
Definition: obj.h:1085
dlq_hdr_t datadefQ
Q of obj_template_t.
Definition: obj.h:1089
xmlChar * name
input or output
Definition: obj.h:1086
dlq_hdr_t mustQ
Q of xpath_pcb_t.
Definition: obj.h:1090
boolean is_input
YPW-1406: the name can be changed temporarily in XPath validation so need a flag to tell if input or ...
Definition: obj.h:1095
struct obj_template_t_ * defaultparm
the defaultparm is only used by yangcli-pro to allow 1 parameter in a command to be entered without a...
Definition: obj.h:1100
dlq_hdr_t * typedefQ
Q of typ_template_t.
Definition: obj.h:1087
dlq_hdr_t * groupingQ
Q of gtp_template_t.
Definition: obj.h:1088
One YANG data-def-stmt.
Definition: obj.h:1231
ncx_error_t tkerr
file and line info for compiler
Definition: obj.h:1246
ncx_sid_t yang_sid
Each object specific variant has a YANG SID assigned for CBOR encoding.
Definition: obj.h:1367
obj_oid_t * oid
SNMP OID for this object (set if needed)
Definition: obj.h:1250
ncx_transaction_id_t leafref_txid
current edit transaction ID for intermediate leafref processing
Definition: obj.h:1326
uint32 yang_hash
experimental: not used
Definition: obj.h:1235
obj_testflags_t desc_testflags
see AGT_TEST_FL_* definitions
Definition: obj.h:1245
dlq_hdr_t appinfoQ
Q of ncx_appinfo_t.
Definition: obj.h:1260
dlq_hdr_t iffeatureQ
Q of ncx_iffeature_t.
Definition: obj.h:1261
dlq_hdr_t * errmsgQ
custom error message used if this is the server running
Definition: obj.h:1308
dlq_hdr_t xpath_backptrQ
Q of ncx_back_ptr_t with node == xpath_pcb_t.
Definition: obj.h:1299
void * def_hook_cb
def_hook_cb is ncx_def_hook_cbfn_t callback function for Dynamic Default Hook callback.
Definition: obj.h:1350
uint8 silflags
see OBJ_FL_* definitions
Definition: obj.h:1242
dlq_hdr_t inherited_whenQ
Q of ncx_backptr_t with node == xpath_pcb_t.
Definition: obj.h:1266
struct obj_template_t_ * usesobj
backptr to uses-obj if grouping expand
Definition: obj.h:1255
uint8 sil_priority
picks SIL callback order
Definition: obj.h:1243
ncx_transaction_id_t edit_txid
current edit transaction ID for commit test pruning
Definition: obj.h:1317
ncx_transaction_id_t must_txid
current edit transaction ID for MUST test default nodes pruning
Definition: obj.h:1320
boolean set_snmp_flags
need SNMP flags
Definition: obj.h:1251
ncx_transaction_id_t when_txid
current edit transaction ID for WHEN test default nodes pruning
Definition: obj.h:1323
dlq_hdr_t metadataQ
Q of obj_metadata_t.
Definition: obj.h:1259
void * yangmap_cb
if set, backptr to the nodemap in a YANG model mapping OBJ_IS_YANGMAP_SOURCE() indicates this is the ...
Definition: obj.h:1314
dlq_hdr_t qhdr
queue header
Definition: obj.h:1232
grp_template_t * grp
non-NULL == in a grp.datadefQ
Definition: obj.h:1247
boolean xpath_oper_ok
object OK for referencing oper-data in XPath
Definition: obj.h:1252
dlq_hdr_t inherited_iffeatureQ
Q of obj_iffeature_ptr_t.
Definition: obj.h:1263
uint32 yang_sid_tree
SID tree assignment if yang_sid is used.
Definition: obj.h:1370
struct xpath_pcb_t_ * when
optional when clause
Definition: obj.h:1258
uint32 flags
see OBJ_FL_* definitions
Definition: obj.h:1237
ncx_sm_rootcb_t * rootcb
Schema Mount Control Block.
Definition: obj.h:1361
ncx_transaction_id_t def_txid
current edit transaction ID for intermediate default nodes processing
Definition: obj.h:1329
uint32 xflags
see OBJ_FL_* definitions
Definition: obj.h:1238
uint32 xflags2
see OBJ_FL_* definitions
Definition: obj.h:1239
obj_index_t index
object index for val_child ordering
Definition: obj.h:1248
struct obj_template_t_ * parent
backptr to parent
Definition: obj.h:1254
obj_type_t objtype
object type (def)
Definition: obj.h:1233
void * commit_test_cb
backptr to the commit_test record for this object which will only exist if this object has 'must' or ...
Definition: obj.h:1305
uint32 uflags
see OBJ_FL_* definitions
Definition: obj.h:1241
obj_testflags_t testflags
see AGT_TEST_FL_* definitions
Definition: obj.h:1244
void * bool_eval_cb
The bool_eval_cb callback function may be set to allow XPath eval to be done by the callback instead ...
Definition: obj.h:1358
void * get2cb
get2fn is getcb_fn2_t for local GET2
Definition: obj.h:1281
dlq_hdr_t * dataruleQ
Q obj NACM data-rule backptrs.
Definition: obj.h:1269
void * cbset
cbset is different based on the object type:
Definition: obj.h:1278
struct ncx_module_t_ * mod
object module and namespace ID assigned at runtime this can be changed over and over as a uses statem...
Definition: obj.h:1290
xmlns_id_t nsid
namespace ID assigned to the object at run-time
Definition: obj.h:1293
struct obj_template_t_ * augobj
backptr to augment-obj if augment expand
Definition: obj.h:1256
One component in a YANG list unique target.
Definition: obj.h:827
boolean isduplicate
T: will be ignored by server.
Definition: obj.h:831
dlq_hdr_t qhdr
queue header
Definition: obj.h:828
xmlChar * xpath
saved unique str for this obj
Definition: obj.h:830
struct obj_template_t_ * unobj
unique object target
Definition: obj.h:829
One component in a YANG list unique target.
Definition: obj.h:836
ncx_error_t tkerr
file and line info for compiler
Definition: obj.h:842
dlq_hdr_t compQ
Q of obj_unique_comp_t.
Definition: obj.h:839
dlq_hdr_t qhdr
queue header
Definition: obj.h:837
xmlChar * xpath
complete saved unique str
Definition: obj.h:838
boolean isconfig
T:constraint is on config.
Definition: obj.h:841
boolean seen
needed by yangdiff
Definition: obj.h:840
One YANG uses statement struct.
Definition: obj.h:1021
boolean expand_done
expand done flag
Definition: obj.h:1033
xmlChar * name
name of grouping to use
Definition: obj.h:1023
ncx_status_t status
status-stmt
Definition: obj.h:1032
xmlChar * ref
reference-stmt (not saved on server)
Definition: obj.h:1029
grp_template_t * grp
const back-ptr to grouping
Definition: obj.h:1030
xmlChar * descr
description-stmt (not saved on server)
Definition: obj.h:1026
boolean refine_done
refine targobj done flag
Definition: obj.h:1034
xmlChar * prefix
prefix present in uses-stmt
Definition: obj.h:1022
dlq_hdr_t * datadefQ
Q of obj_template_t.
Definition: obj.h:1031
token parsing chain (main parser control block)
Definition: tk.h:415
Discriminated union for all data typedefs.
Definition: typ.h:458
One YANG 'typedef' definition – top-level type template.
Definition: typ.h:477
gather node data into a simple struct.
Definition: xml_util.h:207
NCX Syntax Token Handler.
object specific variants
Definition: obj.h:1332