Commit graph

274 commits

Author SHA1 Message Date
Olof hagsand
9826ac16ff Formatting and CHANGELOG updates 2024-04-03 17:40:32 +02:00
Mico Micic
d3587b8646 Fix pr review findings (typos and formatting) 2024-03-12 15:22:50 +01:00
Mico Micic
4f306056ea Add helper functions for bits data type 2024-03-12 15:22:50 +01:00
Olof hagsand
9f73014500 Added yspec parameter to api_path_fmt2api_path()
Added "%k" as extra flag character to api-path-fmt
2024-02-26 13:18:26 +01:00
Olof hagsand
96f94114e2 Fixed: [Problems with diff of YANG lists ordered-by user](https://github.com/clicon/clixon/issues/496) 2024-02-23 22:08:15 +01:00
Olof hagsand
01938b7a64 Generalized template and variable substitution functions
Modified api-path-fmt to uri-encoded only =restval
2024-02-22 12:31:48 +01:00
Olof hagsand
b551e9e5c7 Added xml_template_apply 2024-02-19 12:20:52 +01:00
Olof hagsand
3b0b734de1 Fix same -V version string
Restconf exit segv
2024-02-17 22:11:35 +01:00
Olof hagsand
6ff1588397 Changed cl:ignore-compare to also include core diff algorithm 2024-02-09 16:18:47 +01:00
Olof hagsand
840233d6fa Part 2: Added volatile flag for datastores 2024-02-07 17:42:58 +01:00
Olof hagsand
9f592911f5 More fix problems with cl:ignore attribute for xml_diff2cbuf & co 2024-02-07 15:57:49 +01:00
Olof hagsand
99deddb47e Fixed: Problem with cl:ignore attribute for show compare 2024-02-06 20:15:48 +01:00
Olof hagsand
f8de2b7c0a Optimized datastore access by ensuring REPORT_ALL in memory and EXPLICIT in file 2024-02-01 20:42:25 +01:00
Olof hagsand
9ecc7e0791 Refactor enum2int API 2024-01-29 10:59:04 +01:00
Olof hagsand
a97a06d15a Fixed: [yang_enum_int_value() fails if no explicit values are assigned to enums](https://github.com/clicon/clixon/issues/483) 2024-01-24 23:16:57 +01:00
Olof hagsand
60ded12ea7 Fixed: [show compare/diff problems with sorted-by user](https://github.com/clicon/clixon/issues/482) xml_diff() 2024-01-24 10:20:21 +01:00
Olof hagsand
88b60daa75 Revert and obsolete the creators attribute feature introduced in 6.2. 2024-01-21 12:58:51 +01:00
Philip Prindeville
cf2e27b43d Drop __FUNCTION__ from clixon_debug() calls 2024-01-11 17:29:37 +01:00
Philip Prindeville
86667a0190 Don't use literal for CLIXON_DBG_XXX 2024-01-10 20:06:38 +01:00
Philip Prindeville
11e28eedec Discriminate XML debugging 2024-01-10 20:06:38 +01:00
Olof hagsand
ea645d1334 New clixon-lib@2024-01-01.yang revision
* Replaced container creators to grouping/uses
2024-01-09 10:42:33 +01:00
Olof hagsand
04a548ad78 Fixed: [Problem deleting non-last list element if ordered-by user](https://github.com/clicon/clixon/issues/475) 2024-01-07 16:52:04 +01:00
Olof hagsand
9e54f0602f Changed ca_errmsg callback to a more generic variant
Includes all error, log and debug messages
See [Customized NETCONF error message](https://github.com/clicon/clixon/issues/454)
2024-01-05 16:41:53 +01:00
Olof hagsand
24a4991ec8 Restructured error,debug anf log API
Renamed functions clicon->clixon, replaced global variables w access functions
Unified clicon_netconf_error with clixon_err()
2023-12-18 08:29:14 +01:00
Olof hagsand
2f88ef3ed6 Fixed: [cl:creator attribute must be persistent](https://github.com/clicon/clixon-controller/issues/54) 2023-11-03 14:06:41 +01:00
Olof hagsand
e7313fc9a2 New clixon-lib@2023-11-01.yang revision with ignore-compare extension 2023-10-25 18:09:40 +02:00
Olof hagsand
62348fc9c7 C-style update: Unified comment, retvals in order, remove trailing spaces
Changed function name for `clicon_debug` functions
2023-10-23 09:58:13 +02:00
Olof hagsand
2603b6f139 CLI show compare example function
Improved diff algorithm for XML and TEXT/curly, replaced UNIX diff with structural in-mem algorithm
Fixed: ["show compare" and "show compare | display cli" differs #23](https://github.com/clicon/clixon-controller/issues/23)
Changed parameters of example clispec function `compare_dbs()`
Added show2cbuf functions for TEXT/CLI
Renamed clixon_txt2file to clixon_text2file
2023-09-22 10:42:00 +02:00
Olof hagsand
90b7a550b2 Added configure option CLICON_PLUGIN_DLOPEN_GLOBAL for config of dlopen() 2023-07-06 17:34:28 +02:00
Olof hagsand
0460c093cc Moved datastore-format datastype from clixon-config.yang to clixon-lib.yang 2023-06-20 10:06:52 +02:00
Olof hagsand
b3a7e39d26 C-API: Added specialized xml_child_each_attr function to counter perf issue 2023-05-29 12:25:39 +02:00
Olof hagsand
ad07eb3adf API change: remove yang2cli_yspec last argument printgen, removed obsolete: `cli_auto_show() 2023-05-11 16:57:19 +02:00
Olof hagsand
6335f810d3 C-API: clixon_xml2file and clixon_xml2cbuf added prefix argument
Added in-mem xml diff function: `xml_tree_diff_print`
2023-04-12 10:44:58 +02:00
Olof hagsand
2c104daee2 Since 6.1 RESTCONF PUTs have added clixon-lib namespace for attributes.
These empty namespaces are removed.
2023-03-27 12:57:24 +02:00
Olof hagsand
da2edceb7e * Added new functions: xml_tree_equal and xpath2xml
* RFC 8528 yang schema mount-points:
  * Made expand_dbvar and cli_dbxml mountpoint-aware (RFC 8528)
  * autocli supportgenerate
  * Made api_path2xml and xml2api_path mount-point-aware
  * Temporar fix in clixon_custom.h: XPATH_CANONICAL_SKIP_CHECK
* `xml2xpath()`: Added `apostrophe` as 4th parameter, default 0
* removed extra assert.h includes
2023-03-23 22:16:33 +01:00
Olof Hagsand
fcf9a8b0b0 C-API: Exposed diff function
Test: double leaf validate test
2023-02-13 20:23:18 +01:00
Olof hagsand
7868cf0a0d Docker example: fixed scripts to run multiple instances
Fixed parenthesis typo in purge code
2023-02-10 11:51:41 +01:00
Olof Hagsand
a5220805b1 New plugin callback: ca_yang_patch - for modifying existing YANG modules
C-API: Added `spec` parameter to `xml2xpath()`
2023-02-05 14:14:57 +01:00
Olof hagsand
da9bfcbb53 * Changed debug levels in clicon_debug() to be based on maskable flags
* Added flag names: `CLIXON_DBG_*`
  * Added maskable flags that can be combined when debugging:
    * `DEFAULT` = 1: Basic debug message, espcially initialization
    * `MSG` = 2: Input and output packets, read datastore
    * `DETAIL` = 4: Details: message dump in hex, xpath parse trees, etc
    * `EXTRA` = 8: Extra detailed logs
* Test: some errors in yang-lib where content-id was in wrong place
2023-01-27 14:56:58 +01:00
Olof Hagsand
bc6cc2b31f C-API: All calls to clicon_log_xml() changed to new function `clicon_debug_xml()\
Debugging, moved many detailed debugs from level 1 to 2
2023-01-15 13:17:58 +01:00
Olof hagsand
3916fa919c Netconf monitoring RFC 6022 Sessions (https://github.com/clicon/clixon/issues/370)
- statistics and transport/source-host parameters
  - extended internal NETCONF hello with transport and source-host attributes
clixon-lib,yang
  - Moved all extended internal NETCONF attributes to the clicon-lib namespace
C-API:
  - wrapped most attribute creation into new fn xml_add_attr()
2023-01-15 12:36:59 +01:00
Olof hagsand
ffe918dd0e Fixed: [Defaults in choice does not work properly](https://github.com/clicon/clixon/issues/390)
C: Added new file clixon_xml_default.[ch] and moved all default handling there
2022-12-22 12:13:20 +01:00
Olof hagsand
0d41d49fa9 Moved with-defaults processing from get(-config) to xmldb_get when reading db
With-defaults: fixed cornercase in xpath used in list pagination
C-API: Added `with-defaults` parameter (default 0) to `xmldb_get0()`
2022-12-18 19:59:02 +01:00
Olof hagsand
d84c529ff1 [Code formatting: Change indentation style to space](https://github.com/clicon/clixon/issues/379)
* Applies to all c/h/y/l/sh files and .editorconfig
2022-10-27 14:21:17 +02:00
Olof hagsand
1eb78a78f8 Fixed: [YANG when condition evaluated as false combined with a mandatory leaf does not work](https://github.com/clicon/clixon/issues/380)
Replaced yang_mandatory() with yang_xml_mandatory() by extending existing it with when check
2022-10-17 13:49:55 +02:00
Olof hagsand
e532543cea Fixed: With-defaults: top-level container not properly trimmed 2022-09-20 10:52:44 +02:00
Olof hagsand
743076b171 With-defaults CLI support
Extended cli_auto_show() with with-defaults argument, also changing its signature
Example: Added with-defaults argument to clispec
C-API: Added with-defaults argument to clicon_rpc_get_config
Replaced with-defaults prefix/namespace with constants
2022-09-09 13:46:20 +02:00
Olof hagsand
38f501be19 Extended purge argument to xml_defaults_nopresence to handle non-config case
Test: with-defaults: added headings to all test cases
2022-09-09 13:46:20 +02:00
Olof hagsand
15fcae3c23 Fixed: [Clixon backend transaction callback fails for empty types](https://github.com/clicon/clixon/issues/360)
Fixed: [Clixon backend transactions for choice/case is not logical](https://github.com/clicon/clixon/issues/361)
2022-09-07 10:02:30 +02:00
Olof hagsand
c8bf718db8 replace xml_nopresence functions with xml_defaults_nopresence 2022-08-29 18:29:31 +02:00