yumapro  20.10-12
YumaPro SDK
db_api.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2008 - 2012, Andy Bierman, All Rights Reserved.
3  * Copyright (c) 2012 - 2021, YumaWorks, Inc., All Rights Reserved.
4  *
5  * Unless required by applicable law or agreed to in writing,
6  * software distributed under the License is distributed on an
7  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
8  * KIND, either express or implied. See the License for the
9  * specific language governing permissions and limitations
10  * under the License.
11  */
12 #ifndef _H_db_api
13 #define _H_db_api
14 
15 /* FILE: db_api.h
16 *********************************************************************
17 * *
18 * P U R P O S E *
19 * *
20 *********************************************************************/
21 
28 /*********************************************************************
29 * *
30 * C H A N G E H I S T O R Y *
31 * *
32 *********************************************************************
33 
34 date init comment
35 ----------------------------------------------------------------------
36 18-nov-14 abb Begun
37 */
38 
39 #include <xmlstring.h>
40 
41 #ifndef _H_rpc
42 #include "rpc.h"
43 #endif
44 
45 #ifndef _H_val
46 #include "val.h"
47 #endif
48 
49 #ifndef _H_yang_patch
50 #include "yang_patch.h"
51 #endif
52 
53 
54 #ifdef __cplusplus
55 extern "C" {
56 #endif
57 
58 
79 /********************************************************************
80 * *
81 * C O N S T A N T S *
82 * *
83 *********************************************************************/
84 
86 #define DB_API (const xmlChar *)"db-api"
87 
89 #define DB_API_MOD (const xmlChar *)"yumaworks-db-api"
90 
92 #define DB_API_OBJ (const xmlChar *)"db-api"
93 
95 #define DB_API_REQ_OK(ST) (ST >= DB_API_ST_READY)
96 
97 
98 /********************************************************************
99 * *
100 * T Y P E S *
101 * *
102 *********************************************************************/
103 
104 
105 /********************************************************************
106 * *
107 * F U N C T I O N S *
108 * *
109 *********************************************************************/
110 
111 
119 extern status_t
121 
122 
132 extern status_t
133  db_api_register_service_ex (boolean with_db_lock);
134 
135 
142 extern boolean
143  db_api_service_ready (void);
144 
145 
188 extern status_t
189  db_api_send_edit (const xmlChar *edit_target,
190  const xmlChar *edit_operation,
191  const xmlChar *edit_xml_value);
192 
193 
222 extern status_t
223  db_api_send_edit_ex (const xmlChar *edit_target,
224  const xmlChar *edit_operation,
225  const xmlChar *edit_xml_value,
226  const xmlChar *patch_id_str,
227  boolean system_edit);
228 
229 
297 extern status_t
298  db_api_send_edit_full (const xmlChar *edit_target,
299  const xmlChar *edit_operation,
300  const xmlChar *edit_xml_value,
301  const xmlChar *patch_id_str,
302  boolean system_edit,
303  const xmlChar *insert_point,
304  const xmlChar *insert_where);
305 
306 
375 extern status_t
376  db_api_send_edit_full2 (const xmlChar *edit_target,
377  const xmlChar *edit_operation,
378  const xmlChar *edit_xml_value,
379  const xmlChar *patch_id_str,
380  boolean system_edit,
381  const xmlChar *insert_point,
382  const xmlChar *insert_where,
383  boolean skip_sil);
384 
385 
398 extern status_t
399  db_api_check_edit (void);
400 
401 
419 extern status_t
420  db_api_check_edit_ex (const xmlChar **errstr);
421 
422 
423 
433 extern status_t
434  db_api_send_getconfig (const xmlChar *filespec,
435  boolean withdef);
436 
437 
451 extern status_t
452  db_api_send_getfilter (const xmlChar *filespec,
453  boolean withdef,
454  boolean get_config,
455  const xmlChar *xpath_filter);
456 
457 
480 extern status_t
481  db_api_start_patch (const xmlChar *patch_id_str,
482  boolean system_edit,
483  yang_patch_cb_t **retcb);
484 
485 
486 
514 extern status_t
515  db_api_start_patch2 (const xmlChar *patch_id_str,
516  boolean system_edit,
517  boolean skip_sil,
518  const xmlChar *comment,
519  yang_patch_cb_t **retcb);
520 
521 
542 extern status_t
543  db_api_add_edit (yang_patch_cb_t *pcb,
544  const xmlChar *edit_id_str,
545  const xmlChar *edit_target,
546  const xmlChar *edit_operation,
547  const xmlChar *edit_xml_value,
548  const xmlChar *insert_point,
549  const xmlChar *insert_where);
550 
551 
560 extern status_t
561  db_api_send_patch (yang_patch_cb_t *pcb);
562 
563 
569 extern void
570  db_api_free_patch (yang_patch_cb_t *pcb);
571 
572 
580 extern status_t
582 
583 
592 extern status_t
593  db_api_send_enter_maintmode_ex (boolean read_ok,
594  boolean operation_ok);
595 
596 
602 extern status_t
604 
605 
612 extern status_t
613  db_api_send_set_loglevel (const char *dlevel);
614 
615 
621 extern status_t
623 
624 
630 extern status_t
632 
633 
648 extern status_t
649  db_api_send_subrpc_request (const xmlChar *user_id,
650  const xmlChar *rpc_modname,
651  const xmlChar *rpc_name,
652  const xmlChar *in_filespec,
653  const xmlChar *out_filespec);
654 
655 
659 #ifdef __cplusplus
660 } /* end extern 'C' */
661 #endif
662 
663 #endif /* _H_db_api */
ERR_NCX_SKIPPED
@ ERR_NCX_SKIPPED
2001
Definition: status_enum.h:551
db_api_check_edit
status_t db_api_check_edit(void)
Check on the status of an edit in progress.
Definition: db_api.c:2853
ycontrol_get_service_object
obj_template_t * ycontrol_get_service_object(const xmlChar *service_name)
Get the service object from the payload container.
Definition: ycontrol.c:1088
db_api_free_patch
void db_api_free_patch(yang_patch_cb_t *pcb)
Free a patch control block.
Definition: db_api.c:3182
YCONTROL_MSG_SERVER_REQUEST
@ YCONTROL_MSG_SERVER_REQUEST
server-request sent from server to subsystem
Definition: ycontrol_types.h:72
db_api_send_edit_ex
status_t db_api_send_edit_ex(const xmlChar *edit_target, const xmlChar *edit_operation, const xmlChar *edit_xml_value, const xmlChar *patch_id_str, boolean system_edit)
Create a YANG Patch edit request and send it to the DB-API service on the main server.
Definition: db_api.c:2233
xml_strdup
xmlChar * xml_strdup(const xmlChar *copyFrom)
String duplicate for xmlChar.
Definition: xml_util.c:1553
val_find_child
val_value_t * val_find_child(const val_value_t *parent, const xmlChar *modname, const xmlChar *childname)
Find the first instance of the specified child node.
Definition: val.c:8560
yang_patch_add_edit
void yang_patch_add_edit(yang_patch_cb_t *pcb, yang_patch_edit_t *edit)
Malloc and add new YANG Patch edit control block.
Definition: yang_patch.c:393
ERR_NCX_DEF_NOT_FOUND
@ ERR_NCX_DEF_NOT_FOUND
250
Definition: status_enum.h:289
db_api_send_getconfig
status_t db_api_send_getconfig(const xmlChar *filespec, boolean withdef)
Create a <getconfig> request and send it to the main server.
Definition: db_api.c:2935
LOG_DEBUG_NONE
@ LOG_DEBUG_NONE
value not set or error
Definition: log.h:386
yang_patch_free_cb
void yang_patch_free_cb(yang_patch_cb_t *pcb)
Free a YANG Patch control block.
Definition: yang_patch.c:214
log_error
void log_error(const char *fstr,...) __attribute__((format(printf
Generate a new LOG_DEBUG_ERROR log entry.
val.h
Value Node Basic Support.
LOCK_ST_IDLE
@ LOCK_ST_IDLE
ready for use
Definition: db_api_types.h:137
val_make_simval_obj
val_value_t * val_make_simval_obj(obj_template_t *obj, const xmlChar *valstr, status_t *res)
Create and set a val_value_t as a simple type from an object template instead of individual fields Ca...
Definition: val_util.c:4389
VAL_UINT32
#define VAL_UINT32(V)
Access the value as an uint32 ONLY if NCX_BT_UINT32.
Definition: val.h:497
YANG_PATCH_WHERE_NONE
@ YANG_PATCH_WHERE_NONE
not set
Definition: yang_patch.h:109
val_child_find
val_value_t * val_child_find(const val_value_t *parent, const xmlChar *child_modname, const xmlChar *child_name)
Find the child node for the specified child name and modname.
Definition: val_child.c:1707
DB_API_ST_WAIT_EDIT
@ DB_API_ST_WAIT_EDIT
DB-API is waiting for a server response to an edit request.
Definition: db_api_types.h:119
YCONTROL_MSGBODY_ERROR
@ YCONTROL_MSGBODY_ERROR
error message
Definition: ycontrol_types.h:96
xml_wr.h
XML Write functions.
db_api_start_patch2
status_t db_api_start_patch2(const xmlChar *patch_id_str, boolean system_edit, boolean skip_sil, const xmlChar *comment, yang_patch_cb_t **retcb)
Start a YANG Patch request that can have multiple edits with complete parameters (YPW-1826)
Definition: db_api.c:2670
val_get_mod_name
const xmlChar * val_get_mod_name(const val_value_t *val)
Get the module name associated with this value node.
Definition: val.c:12223
YCONTROL_MSG_SUBSYS_REQUEST
@ YCONTROL_MSG_SUBSYS_REQUEST
subsystem-request sent from subsystem to server
Definition: ycontrol_types.h:81
DB_API_MOD
#define DB_API_MOD
DB-API YANG module.
Definition: db_api.h:89
db_api_send_subrpc_request
status_t db_api_send_subrpc_request(const xmlChar *user_id, const xmlChar *rpc_modname, const xmlChar *rpc_name, const xmlChar *in_filespec, const xmlChar *out_filespec)
Create a <subrpc-request> request and send it to the main server.
Definition: db_api.c:3396
YCONTROL_MSGBODY_OK
@ YCONTROL_MSGBODY_OK
OK message.
Definition: ycontrol_types.h:90
ERR_NCX_DUP_ENTRY
@ ERR_NCX_DUP_ENTRY
224
Definition: status_enum.h:263
db_api_send_set_loglevel
status_t db_api_send_set_loglevel(const char *dlevel)
Create a <set-log-level> request and send it to the main server.
Definition: db_api.c:3262
YANG_PATCH_EDIT_TYPE_SYSTEM
@ YANG_PATCH_EDIT_TYPE_SYSTEM
edit by system
Definition: yang_patch.h:103
DB_API_ST_WAIT_DB_LOCK_INIT
@ DB_API_ST_WAIT_DB_LOCK_INIT
DB-API is waiting for a server response to a db-lock init request.
Definition: db_api_types.h:125
VAL_NAME
#define VAL_NAME(V)
Access the value name.
Definition: val.h:399
ncxmod.h
NCX Module Load Manager.
ycontrol_register_service
status_t ycontrol_register_service(const xmlChar *service_name, ycontrol_service_start_t service_start, ycontrol_service_stop_t service_stop, ycontrol_service_msg_rcvr_t service_rcvr, ycontrol_service_shutdown_t service_shut)
Register a specific service with the YumaPro control message manager.
Definition: ycontrol.c:951
DB_API_ST_WAIT_REGISTER
@ DB_API_ST_WAIT_REGISTER
DB-API waiting for reply to register.
Definition: db_api_types.h:113
xml_clean_attrs
void xml_clean_attrs(xml_attrs_t *attrs)
clean an xml_attrs_t variable
Definition: xml_util.c:1243
db_api.h
Subsystem Database API.
ERR_NCX_UNKNOWN_PARM
@ ERR_NCX_UNKNOWN_PARM
227
Definition: status_enum.h:266
DB_API_ST_READY
@ DB_API_ST_READY
DB-API is ready for using request APIs.
Definition: db_api_types.h:116
yang_patch_edit_type_to_str
const xmlChar * yang_patch_edit_type_to_str(yang_patch_edit_type_t typ)
Convert a YANG Patch edit type enum to the string for the enumeration.
Definition: yang_patch.c:583
db_api_send_getfilter
status_t db_api_send_getfilter(const xmlChar *filespec, boolean withdef, boolean get_config, const xmlChar *xpath_filter)
Retrieve data from the server with complete parameters.
Definition: db_api.c:2961
log_info
void void void void void log_info(const char *fstr,...) __attribute__((format(printf
Generate a new LOG_DEBUG_INFO log entry.
xml_wr_file
status_t xml_wr_file(const xmlChar *filespec, val_value_t *val, xml_attrs_t *attrs, boolean docmode, boolean xmlhdr, boolean withns, boolean expand_varexpr, boolean with_owners, int32 startindent, int32 indent)
Write the specified value to a FILE in XML format.
Definition: xml_wr.c:4094
val_remove_child
void val_remove_child(val_value_t *child)
Remove a child value node from its parent value node.
Definition: val.c:8316
ERR_NCX_MISSING_PARM
@ ERR_NCX_MISSING_PARM
233
Definition: status_enum.h:272
LOCK_ST_WAIT_INIT
@ LOCK_ST_WAIT_INIT
waiting for server response to init request
Definition: db_api_types.h:134
NO_ERR
@ NO_ERR
000
Definition: status_enum.h:188
val_add_child
void val_add_child(val_value_t *child, val_value_t *parent)
Add a child (deprecated: use val_child_add instead)
Definition: val.c:8231
xml_val.h
Utility functions for creating value structs.
DB_API_ST_START
@ DB_API_ST_START
DB-API is starting up.
Definition: db_api_types.h:104
DB_API
#define DB_API
YControl service name.
Definition: db_api.h:86
val_dump_value
void val_dump_value(val_value_t *val, int32 startindent, log_debug_t lvl)
Printf the specified val_value_t struct to the logfile, or stdout if none set Uses conf file format (...
Definition: val.c:5688
xml_init_attrs
void xml_init_attrs(xml_attrs_t *attrs)
initialize an xml_attrs_t variable
Definition: xml_util.c:745
yang_patch_str_to_op
yang_patch_op_t yang_patch_str_to_op(const xmlChar *opstr)
Convert a YANG Patch operation string to the operation enumeration for the string.
Definition: yang_patch.c:465
obj_get_name
const xmlChar * obj_get_name(const obj_template_t *obj)
Get the name field for this obj.
Definition: obj.c:10511
ERR_NCX_OPERATION_FAILED
@ ERR_NCX_OPERATION_FAILED
274
Definition: status_enum.h:315
ERR_INTERNAL_VAL
@ ERR_INTERNAL_VAL
004
Definition: status_enum.h:194
val_child_add
status_t val_child_add(val_value_t *child, val_value_t *parent)
Add a child value node to a parent value node.
Definition: val_child.c:1542
val_util.h
Value Node Utilities.
LOCK_ST_ERROR
@ LOCK_ST_ERROR
db-lock error state
Definition: db_api_types.h:146
ERR_NCX_INVALID_VALUE
@ ERR_NCX_INVALID_VALUE
258
Definition: status_enum.h:299
rpc.h
NETCONF protocol remote procedure call common definitions.
db_api_send_edit_full2
status_t db_api_send_edit_full2(const xmlChar *edit_target, const xmlChar *edit_operation, const xmlChar *edit_xml_value, const xmlChar *patch_id_str, boolean system_edit, const xmlChar *insert_point, const xmlChar *insert_where, boolean skip_sil)
Create a YANG Patch edit request and send it to the DB-API service on the main server.
Definition: db_api.c:2391
ERR_INTERNAL_MEM
@ ERR_INTERNAL_MEM
003
Definition: status_enum.h:193
val_child.h
Value Node Child Access Support.
ERR_INTERNAL_INIT_SEQ
@ ERR_INTERNAL_INIT_SEQ
007
Definition: status_enum.h:197
db_api_request_local_db_lock
status_t db_api_request_local_db_lock(void)
API to request that the local system has the Db-Edit-Lock.
Definition: db_api.c:3282
get_error_string
const char * get_error_string(status_t res)
Get the error message for a specific internal error.
Definition: status.c:239
log_debug
void void void void void void void log_debug(const char *fstr,...) __attribute__((format(printf
Generate a new LOG_DEBUG_DEBUG log entry.
db_api_register_service
status_t db_api_register_service(void)
Register the DB-API service with the YControl layer.
Definition: db_api.c:2070
DB_API_ST_ERROR
@ DB_API_ST_ERROR
DB-API in error state.
Definition: db_api_types.h:110
yang_patch.h
YANG Patch Media Type.
agt.h
Multi-Protocol Network Management Server.
yang_patch_str_to_where
yang_patch_where_t yang_patch_str_to_where(const xmlChar *wherestr)
Convert a YANG Patch where string to the where enumeration for the string.
Definition: yang_patch.c:611
ERR_NCX_RESOURCE_DENIED
@ ERR_NCX_RESOURCE_DENIED
269
Definition: status_enum.h:310
db_api_start_patch
status_t db_api_start_patch(const xmlChar *patch_id_str, boolean system_edit, yang_patch_cb_t **retcb)
Start a YANG Patch request that can have multiple edits.
Definition: db_api.c:2634
db_api_send_enter_maintmode_ex
status_t db_api_send_enter_maintmode_ex(boolean read_ok, boolean operation_ok)
Create a <enter-maintmode> request and send it to the main server.
Definition: db_api.c:3223
db_api_types.h
Data structures for DB-API service layer.
ERR_NCX_NOT_FOUND
@ ERR_NCX_NOT_FOUND
225
Definition: status_enum.h:264
yang_patch_to_value
val_value_t * yang_patch_to_value(obj_template_t *patch_obj, yang_patch_cb_t *pcb, status_t *res)
Convert a YANG Patch control block to a val_value_t tree.
Definition: yang_patch.c:846
yang_patch_new_cb
yang_patch_cb_t * yang_patch_new_cb(const xmlChar *patch_id, const xmlChar *the_comment, const xmlChar *target)
Malloc a new YANG Patch control block.
Definition: yang_patch.c:162
ERR_NCX_OPERATION_NOT_SUPPORTED
@ ERR_NCX_OPERATION_NOT_SUPPORTED
273
Definition: status_enum.h:314
ERR_NCX_LOCK_DENIED
@ ERR_NCX_LOCK_DENIED
268
Definition: status_enum.h:309
YCONTROL_MSG_SERVER_RESPONSE
@ YCONTROL_MSG_SERVER_RESPONSE
server-response sent from server to subsystem
Definition: ycontrol_types.h:75
obj_get_mod_name
const xmlChar * obj_get_mod_name(const obj_template_t *obj)
Get the module name for this object.
Definition: obj.c:12176
DB_API_ST_STOPPED
@ DB_API_ST_STOPPED
DB-API is stopped.
Definition: db_api_types.h:107
ycontrol_send
status_t ycontrol_send(const xmlChar *service_id, uint32 *msgid, ycontrol_msgtype_t msgtype, val_value_t *service_payload, status_t msg_status)
Send a YControl message.
Definition: ycontrol.c:1116
obj_find_child
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:6116
db_api_register_service_ex
status_t db_api_register_service_ex(boolean with_db_lock)
Register the DB-API service with the YControl layer.
Definition: db_api.c:2084
YCONTROL_MSG_SERVER_EVENT
@ YCONTROL_MSG_SERVER_EVENT
server-event sent from server to subsystem
Definition: ycontrol_types.h:69
xml_strcmp
int xml_strcmp(const xmlChar *s1, const xmlChar *s2)
String compare for xmlChar.
Definition: xml_util.c:1746
val_make_external_value
val_value_t * val_make_external_value(obj_template_t *obj, xmlChar *fname)
Make an external value node.
Definition: val_util.c:7313
ncxmod_load_module
status_t ncxmod_load_module(const xmlChar *modname, const xmlChar *revision, dlq_hdr_t *savedevQ, ncx_module_t **retmod)
Determine the location of the specified module and then load it into the system, if not already loade...
Definition: ncxmod.c:4342
yang_patch_edit_count
uint32 yang_patch_edit_count(yang_patch_cb_t *pcb)
Get the number of edits in the PCB.
Definition: yang_patch.c:443
log.h
NCX System Logging Manager.
YANG_PATCH_OP_NONE
@ YANG_PATCH_OP_NONE
not set
Definition: yang_patch.h:88
LOGDEBUG
#define LOGDEBUG
Check if at least log-level=debug.
Definition: log.h:287
db_api_service_ready
boolean db_api_service_ready(void)
Check if the DB-API service is done initializing, and is now ready to send requests to the server.
Definition: db_api.c:2130
db_api_send_patch
status_t db_api_send_patch(yang_patch_cb_t *pcb)
Send a previously created patch request.
Definition: db_api.c:3012
db_api_add_edit
status_t db_api_add_edit(yang_patch_cb_t *pcb, 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: db_api.c:2775
db_api_send_exit_maintmode
status_t db_api_send_exit_maintmode(void)
Create a <exit-maintmode> request and send it to the main server.
Definition: db_api.c:3243
NCX_BT_UINT32
@ NCX_BT_UINT32
uint32
Definition: ncxtypes.h:213
LOCK_ST_LOCAL_LOCKED
@ LOCK_ST_LOCAL_LOCKED
currently locked by a local system user
Definition: db_api_types.h:140
DB_API_ST_WAIT_GETCONFIG
@ DB_API_ST_WAIT_GETCONFIG
DB-API is waiting for a server response to a get request.
Definition: db_api_types.h:122
LOCK_ST_SERVER_LOCKED
@ LOCK_ST_SERVER_LOCKED
currently locked by the main server
Definition: db_api_types.h:143
ycontrol_request_shutdown
void ycontrol_request_shutdown(void)
Request a control message handler shutdown.
Definition: ycontrol.c:914
VAL_BTYPE
#define VAL_BTYPE(V)
Access the base type : same as VAL_TYPE.
Definition: val.h:548
val_new_value
val_value_t * val_new_value(void)
Malloc and initialize the fields in a val_value_t.
Definition: val.c:2697
ncx_get_source
xmlChar * ncx_get_source(const xmlChar *fspec, status_t *res)
Expand a filespec into an absolute path.
Definition: ncx.c:8362
ncx.h
YANG module utility functions.
xml_attrs_t
dlq_hdr_t xml_attrs_t
queue of xml_attr_t
Definition: xml_util.h:151
obj.h
Data Object Support.
db_api_send_enter_maintmode
status_t db_api_send_enter_maintmode(void)
Create a <enter-maintmode> request and send it to the main server.
Definition: db_api.c:3201
ycontrol.h
YumaPro Subsystem Control Protocol.
db_api_check_edit_ex
status_t db_api_check_edit_ex(const xmlChar **errstr)
Check on the status of an edit in progress.
Definition: db_api.c:2883
ERR_NCX_IN_USE
@ ERR_NCX_IN_USE
match netconf errors (257 - 275)
Definition: status_enum.h:298
db_api_send_edit_full
status_t db_api_send_edit_full(const xmlChar *edit_target, const xmlChar *edit_operation, const xmlChar *edit_xml_value, const xmlChar *patch_id_str, boolean system_edit, const xmlChar *insert_point, const xmlChar *insert_where)
Create a YANG Patch edit request and send it to the DB-API service on the main server.
Definition: db_api.c:2309
val_init_from_template
void val_init_from_template(val_value_t *val, struct obj_template_t_ *obj)
Initialize a value node from its object template.
DB_API_REQ_OK
#define DB_API_REQ_OK(ST)
Check if DB-API state is ready.
Definition: db_api.h:95
YCONTROL_MSG_SUBSYS_RESPONSE
@ YCONTROL_MSG_SUBSYS_RESPONSE
subsystem-response sent from subsystem to server
Definition: ycontrol_types.h:84
DB_API_ST_WAIT_SUBRPC
@ DB_API_ST_WAIT_SUBRPC
DB-API is waiting for a server response to a subrpc request.
Definition: db_api_types.h:128
yang_patch_new_edit
yang_patch_edit_t * yang_patch_new_edit(const xmlChar *edit_id, yang_patch_op_t operation, const xmlChar *target, const xmlChar *point, yang_patch_where_t insert_where, val_value_t *value)
Malloc a new YANG Patch edit control block Any of the fields can be NULL to add later or not use.
Definition: yang_patch.c:255
YCONTROL_MSGBODY_PAYLOAD
@ YCONTROL_MSGBODY_PAYLOAD
payload message
Definition: ycontrol_types.h:93
VAL_STR
#define VAL_STR(V)
Access the value as a string ONLY if typ_is_string() is true.
Definition: val.h:464
val_make_internal_value
val_value_t * val_make_internal_value(const xmlChar *name, const xmlChar *value)
Create an NCX_BT_INTERNAL value that contains the raw XML for the value node.
Definition: val_util.c:7279
SET_ERROR
#define SET_ERROR(E)
macro SET_ERROR
Definition: status_enum.h:103
LOCK_ST_NONE
@ LOCK_ST_NONE
not set
Definition: db_api_types.h:131
db_api_send_edit
status_t db_api_send_edit(const xmlChar *edit_target, const xmlChar *edit_operation, const xmlChar *edit_xml_value)
Create a YANG Patch edit request and send it to the DB-API service on the main server.
Definition: db_api.c:2174
db_api_release_local_db_lock
status_t db_api_release_local_db_lock(void)
API to release the local system Db-Edit-Lock.
Definition: db_api.c:3334
NCX_BT_STRING
@ NCX_BT_STRING
string
Definition: ncxtypes.h:217
yang_patch_find_edit
yang_patch_edit_t * yang_patch_find_edit(yang_patch_cb_t *pcb, const xmlChar *edit_id)
Find an edit by its edit_id in the YANG Patch.
Definition: yang_patch.c:414
val_free_value
void val_free_value(val_value_t *val)
Scrub the memory in a val_value_t by freeing all the sub-fields and then freeing the entire struct it...
Definition: val.c:2842
status.h
Global error messages for status code enumerations.
YANG_PATCH_EDIT_TYPE_USER
@ YANG_PATCH_EDIT_TYPE_USER
edit by user
Definition: yang_patch.h:102
dlq.h
dlq provides general double-linked list and queue support:
LOGDEBUG3
#define LOGDEBUG3
Check if at least log-level=debug3.
Definition: log.h:297