187 const xmlChar **returl,
254 const void *error_info,
275 const xmlChar *badval);
316 const void *error_info,
363 const void *error_parm,
397 const xmlChar *badns,
447 dlq_hdr_t *valuniqueQ);
497 boolean is_operational);
757 boolean *delete_default);
773 const xmlChar *featurename);
789 const xmlChar *featurename);
807 const xmlChar *leafname,
808 const xmlChar *leafstrval,
827 const xmlChar *leafname,
846 const xmlChar *leafname,
866 const xmlChar *leafname,
886 const xmlChar *leafname,
907 const xmlChar *leafname,
926 const xmlChar *listname,
940 const xmlChar *objname,
944#define agt_make_virtual_node agt_make_virtual_leaf
966 const xmlChar *leafname,
1037 const xmlChar *objname,
1058 const xmlChar *objname,
1095 const xmlChar *expr,
1113 const xmlChar *patstr,
1114 const xmlChar *valstr);
1166 boolean set_candidate,
1167 boolean set_augment,
1204 const xmlChar *modname,
1282 const xmlChar *objname,
1337 boolean ignore_defaults,
1339 boolean top_replace);
1394 const xmlChar *node_name,
1417 const xmlChar *node_name,
1419 boolean try_modname);
1446 const xmlChar *node_name,
1448 boolean try_modname,
1478 const xmlChar *elname,
1479 const dlq_hdr_t *attrQ,
1500 const xmlChar *node_name,
1513 const xmlChar *etag);
1569 const xmlChar *modname,
1570 const xmlChar *leafname,
1571 const xmlChar *leafstrval,
1588 const xmlChar *modname,
1589 const xmlChar *leafname,
1610 const xmlChar *modname,
1611 const xmlChar *leafname,
1632 const xmlChar *modname,
1633 const xmlChar *leafname,
1654 const xmlChar *modname,
1655 const xmlChar *leafname,
1676 const xmlChar *modname,
1677 const xmlChar *leafname,
1702 const xmlChar *modname,
1703 const xmlChar *leafname,
1721 const xmlChar *modname,
1722 const xmlChar *leafname,
1740 const xmlChar *modname,
1741 const xmlChar *leafname,
1759 const xmlChar *modname,
1760 const xmlChar *leafname,
1780 const xmlChar *modname,
1781 const xmlChar *objname,
1807 const xmlChar *modname,
1808 const xmlChar *leafname,
1989extern const xmlChar*
2038extern const xmlChar *
2085 const xmlChar *rpcname,
2106 const xmlChar *the_comment,
2107 const xmlChar *patch_root,
2109 uint32 included_changes);
2129 const xmlChar *the_comment,
2130 const xmlChar *patch_root,
2132 uint32 included_changes,
2150 const xmlChar *the_comment,
2151 const xmlChar *patch_root,
2152 const xmlChar *filespec);
2171 uint32 included_changes,
2193 const xmlChar *modname,
2194 const xmlChar *leafname,
2195 const xmlChar *leafstrval);
2213 const xmlChar *modname,
2214 const xmlChar *leafname,
2234 const xmlChar *modname,
2235 const xmlChar *leafname,
2254 const xmlChar *modname,
2255 const xmlChar *leafname,
2274 const xmlChar *modname,
2275 const xmlChar *leafname,
2295 const xmlChar *modname,
2296 const xmlChar *leafname,
2318 const xmlChar *modname,
2319 const xmlChar *leafname,
2341 const xmlChar *modname,
2342 const xmlChar *leafname,
2519 agt_xpath_example (
struct xpath_pcb_t_ *pcb,
2544 boolean system_edit,
2546 const xmlChar *comment);
2566 const xmlChar *patch_id_str,
2567 boolean system_edit,
2569 const xmlChar *comment);
2618 const xmlChar *edit_id_str,
2619 const xmlChar *edit_target,
2620 const xmlChar *edit_operation,
2621 const xmlChar *edit_xml_value,
2622 const xmlChar *insert_point,
2623 const xmlChar *insert_where);
2672 const xmlChar **retexpr);
Multi-Protocol Network Management Server.
Manage Server configuration edit transactions.
@ brief NCX configuration database manager
dlq provides general double-linked list and queue support:
GET1 and GET2 Callback Support.
agt_crl_mode_t
server TLS CRL mode
Definition: agt.h:825
boolean agt_check_config(xml_msg_hdr_t *mhdr, ncx_withdefaults_t withdef, boolean realtest, val_value_t *node)
Used by the <get-config> operation to return any type of configuration data.
Definition: agt_util.c:2946
val_value_t * agt_make_boolean_leaf(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, boolean boolval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list (NCX_BT_BOOL)
Definition: agt_util.c:6596
yang_patch_cb_t * agt_make_yang_patch_cb_file(const xmlChar *patch_id, const xmlChar *the_comment, const xmlChar *patch_root, const xmlChar *filespec)
Make a yang_patch_cb for a Simulated Operational On-Change subscription update from a data file.
Definition: agt_util.c:7980
obj_template_t * agt_get_rpc_output_obj(rpc_msg_t *msg)
Get the rpc output object template.
Definition: agt_util.c:7268
agt_edit_parms_cb_t * agt_new_edit_parms(const xmlChar *patch_id_str, boolean system_edit, boolean skip_sil, const xmlChar *comment)
Create and initialize a SIL edit_parms control clock.
Definition: agt_util.c:8984
boolean agt_modified_since(val_value_t *val, time_t *timerec)
Check if the timestamp for the object is later then the specified timestamp.
Definition: agt_util.c:6190
boolean agt_notifications_enabled(void)
Check if notifications are enabled.
Definition: agt_util.c:6213
val_value_t * agt_make_leaf2(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, const xmlChar *leafstrval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:6235
op_editop_t agt_cvt_editop(op_editop_t editop, const val_value_t *newval, const val_value_t *curval)
Determine the effective edit (if OP_EDITOP_COMMIT)
Definition: agt_util.c:6972
status_t agt_enable_feature(const xmlChar *modname, const xmlChar *featurename)
Enable a YANG feature in the server.
Definition: agt_util.c:4070
boolean agt_check_config_false(xml_msg_hdr_t *mhdr, ncx_withdefaults_t withdef, boolean realtest, val_value_t *node)
Used by the <get*> operation to return only config=false nodes and the ID ancestor nodes.
Definition: agt_util.c:3067
status_t agt_add_int64_leafy(val_value_t *parentval, const xmlChar *modname, const xmlChar *leafname, int64 leafval)
make a child node from a int64 and add to parent.
Definition: agt_util.c:8357
status_t agt_check_max_access(val_value_t *newval, boolean cur_exists)
Check if the max-access for a parameter is exceeded.
Definition: agt_util.c:3517
boolean agt_any_operations_set(val_value_t *val)
Check the new node and all descendants for any operation attibutes prsent.
Definition: agt_util.c:5505
status_t agt_add_uint64_leafy(val_value_t *parentval, const xmlChar *modname, const xmlChar *leafname, uint64 leafval)
make a child node from a uint64 and add to parent.
Definition: agt_util.c:8303
val_value_t * agt_init_cache(const xmlChar *modname, const xmlChar *objname, status_t *res)
init a cache pointer during the init2 callback
Definition: agt_util.c:4530
boolean agt_backups_enabled(void)
Check if the backup commands are enabled.
Definition: agt_util.c:5770
yang_patch_cb_t * agt_make_yang_patch_cb_targobj(const xmlChar *patch_id, const xmlChar *the_comment, const xmlChar *patch_root, agt_cfg_transaction_t *txcb, uint32 included_changes, obj_template_t *targobj)
Make a yang_patch_cb for a YANG Patch conventional datastore on-change update for a target object.
Definition: agt_util.c:7892
val_value_t * agt_make_idref_leaf2(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, const val_idref_t *leafval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:6480
val_value_t * agt_make_uint_key(uint32 leafval)
make a generic key leaf node from a uint
Definition: agt_util.c:8607
val_value_t * agt_make_int_leaf(obj_template_t *parentobj, const xmlChar *leafname, int32 leafval, status_t *res)
make an int32 val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:4188
void agt_output_start_node(ses_cb_t *scb, xml_msg_hdr_t *mhdr, xmlns_id_t parent_nsid, xmlns_id_t node_nsid, const xmlChar *node_name, int32 indent, boolean try_modname)
Output a start node and try to use modname in front if needed.
Definition: agt_util.c:5927
void agt_record_error_errinfo(ses_cb_t *scb, xml_msg_hdr_t *msghdr, ncx_layer_t layer, status_t res, const xml_node_t *xmlnode, ncx_node_t parmtyp, const void *error_info, ncx_node_t nodetyp, void *error_path, const ncx_errinfo_t *errinfo)
Generate an rpc_err_rec_t and save it in the msg Use provided error fields.
Definition: agt_util.c:2444
status_t agt_xpath_force_true(struct xpath_pcb_t_ *pcb, val_value_t *context, val_value_t *docroot, boolean *result)
XPath Boolean EVAL Replacement Callback.
Definition: agt_util.c:8912
val_value_t * agt_make_uint_leaf(obj_template_t *parentobj, const xmlChar *leafname, uint32 leafval, status_t *res)
make a uint32 val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:4169
yang_patch_cb_t * agt_make_yang_patch_cb(const xmlChar *patch_id, const xmlChar *the_comment, const xmlChar *patch_root, agt_cfg_transaction_t *txcb, uint32 included_changes)
Make a yang_patch_cb for a YANG Patch conventional datastore on-change update.
Definition: agt_util.c:7860
void agt_output_end_container(ses_cb_t *scb, xml_msg_hdr_t *mhdr, xmlns_id_t node_nsid, const xmlChar *node_name, int32 indent)
Output an end container node.
Definition: agt_util.c:6092
obj_template_t * agt_get_action_output_obj(val_value_t *actionval)
Get the action output object template.
Definition: agt_util.c:7295
val_value_t * agt_make_virtual_leaf(obj_template_t *parentobj, const xmlChar *leafname, getcb_fn_t callbackfn, status_t *res)
make a val_value_t struct for a specified virtual leaf or leaf-list
Definition: agt_util.c:4339
status_t agt_validate_filter(ses_cb_t *scb, rpc_msg_t *msg)
Validate the <filter> parameter if present.
Definition: agt_util.c:2803
boolean agt_check_save(xml_msg_hdr_t *mhdr, ncx_withdefaults_t withdef, boolean realtest, val_value_t *node)
Used by agt_ncx_cfg_save function to filter just what is supposed to be saved in the <startup> config...
Definition: agt_util.c:3192
status_t agt_get_sid_set_id(xmlChar *buff, uint32 bufflen)
Fill the buffer with the current sid-set-id value.
Definition: agt_util.c:8847
boolean agt_check_basic(xml_msg_hdr_t *mhdr, ncx_withdefaults_t withdef, boolean realtest, val_value_t *node)
Used by the <get-data> operation to return basic filtering NMDA, module-tags, tstamps filtered data.
Definition: agt_util.c:3264
boolean agt_getbulk_ok_for_nolock(const xmlChar *pathstr)
Check if the get-bulk target is OK for a nolock get without waiting for a pthreads filter.
Definition: agt_util.c:7457
status_t agt_add_bits_leafy(val_value_t *parentval, const xmlChar *modname, const xmlChar *leafname, const ncx_list_t *leafval)
make a child node from a ncx_list_t struct (bits) and add to parent.
Definition: agt_util.c:8529
void agt_record_error(ses_cb_t *scb, xml_msg_hdr_t *msghdr, ncx_layer_t layer, status_t res, const xml_node_t *xmlnode, ncx_node_t parmtyp, const void *error_info, ncx_node_t nodetyp, void *error_path)
Generate an rpc_err_rec_t and save it in the msg.
Definition: agt_util.c:2335
status_t agt_get_url_from_parm(const xmlChar *parmname, rpc_msg_t *msg, xml_node_t *methnode, const xmlChar **returl, val_value_t **retval)
Get the URL string for the config in the target param.
Definition: agt_util.c:2095
status_t agt_apply_patch_edit(ses_cb_t *scb, agt_edit_parms_cb_t *parms)
SIL version of the db_api_send_edt_full2 API.
Definition: agt_util.c:9206
void agt_set_depth(rpc_msg_t *msg)
Check if the <depth> parameter is set in the request message.
Definition: agt_util.c:5240
status_t agt_check_cache(val_value_t **cacheptr, val_value_t *newval, val_value_t *curval, op_editop_t editop)
check if a cache pointer needs to be changed or NULLed out
Definition: agt_util.c:4579
void agt_record_unique_error(ses_cb_t *scb, xml_msg_hdr_t *msghdr, val_value_t *errval, dlq_hdr_t *valuniqueQ)
Generate an rpc_err_rec_t and save it in the msg.
Definition: agt_util.c:2727
status_t agt_output_filter(ses_cb_t *scb, rpc_msg_t *msg, int32 indent)
output the proper data for the get or get-config operation generate the data that matched the subtree...
Definition: agt_util.c:3294
boolean agt_match_etag_binary(val_value_t *val, ncx_etag_t etag)
Check if the etag matches the specified value string.
Definition: agt_util.c:6164
status_t agt_add_idref_leafy(val_value_t *parentval, const xmlChar *modname, const xmlChar *leafname, const val_idref_t *leafval)
make a child node from a val_idref_t struct and add to parent.
Definition: agt_util.c:8469
xpath_pcb_t * agt_new_xpath_pcb(ses_cb_t *scb, const xmlChar *expr, status_t *res)
Get a new XPath parser control block and set up the server variable bindings.
Definition: agt_util.c:4646
val_value_t * agt_make_int64_key(int64 leafval)
make a generic key leaf node from an int64
Definition: agt_util.c:8681
status_t agt_disable_feature(const xmlChar *modname, const xmlChar *featurename)
Disable a YANG feature in the server.
Definition: agt_util.c:4112
val_value_t * agt_make_list(obj_template_t *parentobj, const xmlChar *listname, status_t *res)
make a val_value_t struct for a specified list
Definition: agt_util.c:4282
status_t agt_add_top_container(obj_template_t *obj, val_value_t **val)
make a val_value_t struct for a specified top-level container data node.
Definition: agt_util.c:4419
status_t agt_check_editop(op_editop_t pop, op_editop_t *cop, val_value_t *newnode, val_value_t *curnode, ncx_iqual_t iqual, ncx_protocol_t proto, boolean is_commit, boolean *delete_default)
Check if the edit operation is okay.
Definition: agt_util.c:3677
xpath_result_t * agt_get_result_from_xpath(xpath_pcb_t *pcb, val_value_t *rootval, status_t *retres)
Get the result from evaluating an XPath expression.
Definition: agt_util.c:5789
const val_value_t * agt_get_parmval(const xmlChar *parmname, rpc_msg_t *msg)
Get the identified val_value_t for a given parameter.
Definition: agt_util.c:2290
void agt_print_error_headers(void)
Print the error number and error message for each error to STDOUT or the logfile; Used for doxygen he...
Definition: agt_util.c:9371
status_t agt_add_container(const xmlChar *modname, const xmlChar *objname, val_value_t *parentval, val_value_t **val)
make a val_value_t struct for a specified nested container data node.
Definition: agt_util.c:4477
xmlChar * agt_get_target_filespec(const xmlChar *target_url, status_t *res)
Figure out where to store the URL target file.
Definition: agt_util.c:4823
status_t agt_get_bulktest(const xml_msg_hdr_t *msg, const obj_template_t *obj, const xpath_pcb_t **retpcb, const xmlChar **retexpr)
SIL access function to get the list-test expression.
Definition: agt_util.c:9303
xmlChar * agt_get_startup_filespec(status_t *res)
Figure out where to store the startup file.
Definition: agt_util.c:4748
boolean agt_module_in_cli_valset(const xmlChar *modname)
Check if there is a module=foo parameter in the CLI parameter set.
Definition: agt_util.c:6804
void agt_clean_edit_parms(agt_edit_parms_cb_t *parms)
Clean a SIL edit_parms control clock.
Definition: agt_util.c:9061
agt_crl_mode_t agt_crl_mode_enum(const xmlChar *crl_mode)
Get the enum for the CRL mode string.
Definition: agt_util.c:7690
val_value_t * agt_make_object(obj_template_t *parentobj, const xmlChar *objname, status_t *res)
make a val_value_t struct for a specified node
Definition: agt_util.c:4308
val_value_t * agt_make_leaf(obj_template_t *parentobj, const xmlChar *leafname, const xmlChar *leafstrval, status_t *res)
make a string val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:4150
val_value_t * agt_get_first_result_val(xpath_result_t *result)
Get the first XPath result node or NULL if not node-set or empty node-set or not value node.
Definition: agt_util.c:5834
val_value_t * agt_add_top_node_if_missing(ncx_module_t *mod, const xmlChar *objname, boolean *added, status_t *res)
Add a top config node if it is missing.
Definition: agt_util.c:5418
val_value_t * agt_get_rpc_input(rpc_msg_t *msg)
Get the rpc input value node.
Definition: agt_util.c:7240
val_value_t * agt_make_int64_leaf2(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, int64 leafval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:6442
status_t agt_output_schema(ses_cb_t *scb, rpc_msg_t *msg, int32 indent)
generate the YANG file contents for the get-schema operation
Definition: agt_util.c:3439
boolean agt_check_config_false_default(xml_msg_hdr_t *mhdr, ncx_withdefaults_t withdef, boolean realtest, val_value_t *node)
Used by the <get> operation to return only content=nonconfig nodes and the ID ancestor node and only ...
Definition: agt_util.c:3126
val_value_t * agt_make_object2(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *objname, status_t *res)
make a val_value_t struct for a specified node
Definition: agt_util.c:6665
void agt_record_attr_error(ses_cb_t *scb, xml_msg_hdr_t *msghdr, ncx_layer_t layer, status_t res, const xml_attr_t *xmlattr, const xml_node_t *xmlnode, const xmlChar *badns, ncx_node_t nodetyp, void *errnode)
Generate an rpc_err_rec_t and save it in the msg.
Definition: agt_util.c:2555
status_t agt_validate_filter_nmda(rpc_msg_t *msg, val_value_t *filter, boolean is_subtree, boolean is_operational)
Validate the <filter> parameter; FOR NMDA ONLY.
Definition: agt_util.c:2911
xmlChar * agt_get_filespec_from_url(const xmlChar *urlstr, status_t *res)
Check the URL and get the filespec part out of it.
Definition: agt_util.c:2230
void agt_output_start_container(ses_cb_t *scb, xml_msg_hdr_t *mhdr, xmlns_id_t parent_nsid, xmlns_id_t node_nsid, const xmlChar *node_name, int32 indent)
Output a start container node.
Definition: agt_util.c:5873
val_value_t * agt_make_uint_leaf2(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, uint32 leafval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:6342
const xmlChar * agt_crl_mode_str(agt_crl_mode_t crl_mode)
Get the string for the CRL mode enum.
Definition: agt_util.c:7659
boolean agt_op_ok_for_maintenance_mode(const obj_template_t *rpcobj)
Check if the operation is OK for maintenance mode.
Definition: agt_util.c:7566
val_value_t * agt_make_int64_leaf(obj_template_t *parentobj, const xmlChar *leafname, int64 leafval, status_t *res)
make an int64 val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:4226
val_value_t * agt_make_bits_key(const ncx_list_t *leafval)
make a generic key leaf node from a bits struct
Definition: agt_util.c:8782
val_value_t * agt_make_empty_leaf(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, boolean boolval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list (NCX_BT_EMPTY)
Definition: agt_util.c:6628
op_editop_t agt_cvt_editop_acm(op_editop_t editop, const val_value_t *newval, const val_value_t *curval)
Determine the effective edit for NACM.
Definition: agt_util.c:6992
void agt_record_warning(ses_cb_t *scb, xml_msg_hdr_t *msghdr, ncx_layer_t layer, status_t res, const xml_node_t *xmlnode, ncx_node_t parmtyp, const void *error_parm, ncx_node_t nodetyp, void *error_path, const ncx_errinfo_t *errinfo)
Generate an rpc_err_rec_t and save it in the msg.
Definition: agt_util.c:2503
const xmlChar * agt_getTermReasonStr(ses_term_reason_t termreason)
Convert the termination reason enum to a string.
Definition: agt_util.c:7325
status_t agt_add_top_virtual(obj_template_t *obj, getcb_fn_t callbackfn)
make a val_value_t struct for a specified virtual top-level data node
Definition: agt_util.c:4364
val_value_t * agt_make_string_key(const xmlChar *leafval)
make a generic key leaf node from a string
Definition: agt_util.c:8581
status_t agt_set_with_defaults(rpc_msg_t *msg, const xmlChar *modname, val_value_t **errval)
Check if the <with-defaults> parameter is set in the request message, and if so, it is one of the ser...
Definition: agt_util.c:5117
status_t agt_output_empty(ses_cb_t *scb, rpc_msg_t *msg, int32 indent)
output no data for the get or get-config operation because the if-modified-since fileter did not pass
Definition: agt_util.c:3493
status_t agt_find_in_datastore(ncx_cfg_t cfg_id, val_value_t *err_value, val_value_t **retval)
Find the node (should be from an <edit-config> content node) in the specified datastore.
Definition: agt_util.c:7139
int agt_connect_client(const xmlChar *hostname, uint16_t port)
Start a TCP connection to a client.
Definition: agt_util.c:7050
void agt_set_basic_withdef_enabled(void)
Force the basic mode to be enabled in the agt_withdef_enabled bitmask.
Definition: agt_util.c:6830
val_value_t * agt_make_boolean_key(boolean leafval)
make a generic key leaf node from a boolean
Definition: agt_util.c:8706
val_value_t * agt_make_int_key(int32 leafval)
make a generic key leaf node from an int
Definition: agt_util.c:8631
uint32 agt_get_error_count(rpc_msg_t *msg)
Get the current number of errors in the rpc msg Q.
Definition: agt_util.c:7213
status_t agt_validate_filter_ex(ses_cb_t *scb, rpc_msg_t *msg, val_value_t *filter)
Validate the <filter> parameter if present (extended)
Definition: agt_util.c:2848
boolean agt_check_included_changes(agt_cfg_transaction_t *txcb, uint32 included_changes, obj_template_t *targobj)
Check an edit transaction to see if it has any edits that match the included_changes bitmask paramete...
Definition: agt_util.c:8076
status_t agt_init_edit_parms(agt_edit_parms_cb_t *parms, const xmlChar *patch_id_str, boolean system_edit, boolean skip_sil, const xmlChar *comment)
Initialize a SIL edit_parms control clock.
Definition: agt_util.c:9014
void agt_record_error_obj(ses_cb_t *scb, xml_msg_hdr_t *msghdr, status_t res, obj_template_t *errobj, const xmlChar *badval)
Generate an rpc_err_rec_t and save it in the msg Use the provided object for <rpc-error> fields.
Definition: agt_util.c:2374
op_editop_t agt_cvt_editop_ex(op_editop_t editop, const val_value_t *newval, const val_value_t *curval)
Determine the effective edit (if OP_EDITOP_COMMIT) Do not convert COMMIT to REPLACE same as cvt_edito...
Definition: agt_util.c:7013
val_value_t * agt_make_idref_leaf(obj_template_t *parentobj, const xmlChar *leafname, const val_idref_t *leafval, status_t *res)
make an identityref val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:4255
status_t agt_fill_dummy_method(const xmlChar *modname, const xmlChar *rpcname, xml_node_t *node, obj_template_t **rpcobj)
Fill the xml_node with the proper data to fake an XML node for the start of the rpc-method element.
Definition: agt_util.c:7791
status_t agt_add_patch_edit(agt_edit_parms_cb_t *parms, const xmlChar *edit_id_str, const xmlChar *edit_target, const xmlChar *edit_operation, const xmlChar *edit_xml_value, const xmlChar *insert_point, const xmlChar *insert_where)
Create an edit request and add to YANG Patch in progress.
Definition: agt_util.c:9114
val_value_t * agt_make_virtual_leaf2(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, getcb_fn_t callbackfn, status_t *res)
make a val_value_t struct for a specified virtual leaf or leaf-list
Definition: agt_util.c:6725
void agt_set_depth_nmda(rpc_msg_t *msg)
Check if the <depth> parameter is set NMDA max-depth parameter in the request message If so,...
Definition: agt_util.c:5299
void agt_record_insert_error(ses_cb_t *scb, xml_msg_hdr_t *msghdr, status_t res, val_value_t *errval)
Generate an rpc_err_rec_t and save it in the msg Called from the YANG edit validation code when an in...
Definition: agt_util.c:2648
status_t agt_get_cfg_from_parm(const xmlChar *parmname, rpc_msg_t *msg, xml_node_t *methnode, cfg_template_t **retcfg)
FUNCTION agt_get_cfg_from_parm.
Definition: agt_util.c:1856
void agt_free_edit_parms(agt_edit_parms_cb_t *parms)
Clean and free a SIL edit_parms control clock.
Definition: agt_util.c:9079
boolean agt_match_etag(val_value_t *val, const xmlChar *etag)
Check if the etag matches the specified value string.
Definition: agt_util.c:6128
boolean agt_apply_this_node_ex(op_editop_t editop, const val_value_t *newnode, const val_value_t *curnode, boolean ignore_defaults, boolean childonly, boolean top_replace)
Check if the write operation applies to the current node.
Definition: agt_util.c:5590
status_t agt_get_inline_cfg_from_parm(const xmlChar *parmname, rpc_msg_t *msg, xml_node_t *methnode, val_value_t **retval)
Get the val_value_t node for the inline config element.
Definition: agt_util.c:1993
val_value_t * agt_get_key_value(val_value_t *startval, val_value_t **lastkey)
Get the next expected key value in the ancestor chain.
Definition: agt_util.c:5357
boolean agt_check_default(xml_msg_hdr_t *mhdr, ncx_withdefaults_t withdef, boolean realtest, val_value_t *node)
Used by the <get*> operation to return only values not set to the default.
Definition: agt_util.c:3005
val_value_t * agt_make_uint64_key(uint64 leafval)
make a generic key leaf node from a uint64
Definition: agt_util.c:8656
boolean agt_get_ok_for_nolock(rpc_msg_t *msg)
Check if the get has filters and if they are OK for a <get> without waiting for a pthreads filter.
Definition: agt_util.c:7377
boolean agt_check_delete_all_allowed(obj_template_t *testobj)
Check if the delete-all or remove-all operation is enabled for for specified object.
Definition: agt_util.c:6875
void agt_output_start_node2(ses_cb_t *scb, xml_msg_hdr_t *mhdr, xmlns_id_t parent_nsid, xmlns_id_t node_nsid, const xmlChar *node_name, int32 indent, boolean try_modname, val_value_t *metaval)
Output a start node and try to use modname in front if needed.
Definition: agt_util.c:5964
void agt_output_start_errors_container(ses_cb_t *scb, xml_msg_hdr_t *mhdr, xmlns_id_t parent_nsid, xmlns_id_t nsid, const xmlChar *elname, const dlq_hdr_t *attrQ, boolean isattrq, int32 indent, boolean empty)
Output a start <errors> element on the specified session for RESTCONF error handling.
Definition: agt_util.c:6040
val_value_t * agt_make_union_leaf(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, const val_value_t *leafval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list use a val_value_t for a union
Definition: agt_util.c:6284
val_value_t * agt_make_int_leaf2(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, int32 leafval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:6375
boolean agt_apply_this_node(op_editop_t editop, const val_value_t *newnode, const val_value_t *curnode)
Check if the write operation applies to the current node.
Definition: agt_util.c:5553
ncx_cfg_t agt_get_edit_config_id(rpc_msg_t *rpcmsg)
Get the enum ID of the configuration that is being edited.
Definition: agt_util.c:6779
boolean agt_check_modtags(xml_msg_hdr_t *mhdr, ncx_withdefaults_t withdef, boolean realtest, val_value_t *node)
Used by the <get> and <get-config> operation to return report-all module-tags filtered data.
Definition: agt_util.c:3235
status_t agt_add_leafy(val_value_t *parentval, const xmlChar *modname, const xmlChar *leafname, const xmlChar *leafstrval)
make a child node from a string and add to parent.
Definition: agt_util.c:8141
void agt_set_with_owners(rpc_msg_t *msg)
Check if the <with-owners> parameter is set in the request message.
Definition: agt_util.c:5184
val_value_t * agt_make_bits_leaf(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, const ncx_list_t *listval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list (NCX_BT_BITS or NCX_BT_SLIST)
Definition: agt_util.c:6556
status_t agt_set_val_defaults(val_value_t *val)
Check for any node-level config leafs that have a default value, and add them to the running configur...
Definition: agt_util.c:5073
status_t agt_add_boolean_leafy(val_value_t *parentval, const xmlChar *modname, const xmlChar *leafname, boolean boolval)
make a child node from a boolean and add to parent.
Definition: agt_util.c:8412
xmlChar * agt_make_srid_filespec(const xmlChar *basestr, const xmlChar *patstr, const xmlChar *valstr)
Make a filespec string needed for a filespec with SRID in it.
Definition: agt_util.c:4669
val_nodetest_fn_t agt_util_get_testfn(xml_msg_hdr_t *msg, boolean getop)
Get the test function that should be used for a specific get operation based on with-default paramete...
Definition: agt_util.c:7725
val_value_t * agt_make_uint64_leaf(obj_template_t *parentobj, const xmlChar *leafname, uint64 leafval, status_t *res)
make a uint64 val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:4207
status_t agt_set_mod_defaults(ncx_module_t *mod, val_value_t *valroot, boolean set_candidate, boolean set_augment, boolean force)
Check for any top-level config leafs that have a default value, and add them to the running configura...
Definition: agt_util.c:4935
status_t agt_add_int_leafy(val_value_t *parentval, const xmlChar *modname, const xmlChar *leafname, int32 leafval)
make a child node from a int32 and add to parent.
Definition: agt_util.c:8249
val_value_t * agt_make_idref_key(const val_idref_t *leafval)
make a generic key leaf node from an idref struct
Definition: agt_util.c:8727
val_value_t * agt_make_uint64_leaf2(obj_template_t *parentobj, const xmlChar *modname, const xmlChar *leafname, uint64 leafval, status_t *res)
make a val_value_t struct for a specified leaf or leaf-list
Definition: agt_util.c:6408
status_t agt_add_uint_leafy(val_value_t *parentval, const xmlChar *modname, const xmlChar *leafname, uint32 leafval)
make a child node from a uint32 and add to parent.
Definition: agt_util.c:8195
status_t(* getcb_fn_t)(ses_cb_t *scb, getcb_mode_t cbmode, const val_value_t *virval, val_value_t *dstval)
GET1 Callback function for agent node get handler.
Definition: getcb.h:657
op_editop_t
NETCONF edit-config operation types.
Definition: op.h:122
boolean(* val_nodetest_fn_t)(xml_msg_hdr_t *mhdr, ncx_withdefaults_t withdef, boolean realtest, val_value_t *node)
user function callback template to test output of a specified node.
Definition: val_util.h:132
status_t
global error return code
Definition: status_enum.h:210
ses_term_reason_t
Session Termination reason.
Definition: ses.h:417
uint16 xmlns_id_t
integer handle for registered namespaces
Definition: xmlns.h:89
ncx_node_t
NCX Internal Node Types.
Definition: ncxtypes.h:437
uint32 ncx_etag_t
The ETag used in RESTCONF messages is the lower 32 bits of a ncx_transaction_id_t.
Definition: ncxtypes.h:771
ncx_cfg_t
hardwire the 3 standard configs
Definition: ncxtypes.h:548
ncx_iqual_t
The instance qualifier types are borrowed from ABNF and RelaxNG.
Definition: ncxtypes.h:460
ncx_protocol_t
NCX session protocol versions supported.
Definition: ncxtypes.h:1001
ncx_layer_t
Enumeration of NETCONF protocol layers.
Definition: ncxtypes.h:507
ncx_withdefaults_t
enum for with-defaults enum values
Definition: ncxtypes.h:1278
YANG module data structures Many internal representations of YANG module constructs.
NETCONF protocol remote procedure call common definitions.
NETCONF Session Common definitions module.
Global error messages for status code enumerations.
Transaction Control Block.
Definition: agt_cfg.h:235
struct to contain all agt_send_edit parameters
Definition: agt.h:2004
struct representing 1 configuration database
Definition: cfg.h:229
YANG error info statement struct used to override default error handling in the server.
Definition: ncxtypes.h:1366
header for a NCX List
Definition: ncxtypes.h:859
representation of one module or submodule during and after parsing
Definition: ncxtypes.h:1138
One YANG data-def-stmt.
Definition: obj.h:1230
NETCONF Server and Client RPC Request/Reply Message Header.
Definition: rpc.h:185
Session Control Block.
Definition: ses.h:573
one QName for the NCX_BT_IDREF value
Definition: val.h:795
one value to match one type
Definition: val.h:912
represents one attribute
Definition: xml_util.h:159
Common Encoding Message Header No longer XML specific!! Used by JSON and CBOR parsing as well!...
Definition: xml_msg.h:404
gather node data into a simple struct.
Definition: xml_util.h:207
XPath parser control block.
Definition: xpath.h:754
XPath expression result.
Definition: xpath.h:705
One YANG Patch Request.
Definition: yang_patch.h:155
Value Node Basic Support.
XML and JSON Message send and receive support.
Schema and data model Xpath search support.