clixon/lib/src
Olof hagsand 19e21be0bc Very large commit for upcoming 4.4 release
Major New features

* New and updated search functions using xpath, api-path and instance-id
  * New search functions using api-path and instance_id:
    * C search functions: `clixon_find_instance_id()` and `clixon_find_api_path()`
  * Binary search optimization in lists for indexed leafs in all three formats.
    * This improves search performance to O(logN) which is drastical improvements for large lists.
  * You can also register explicit indexes for making binary search (not only list keys)
  * For more info, see docs at [paths](https://clixon-docs.readthedocs.io/en/latest/paths.html) and
[search](https://clixon-docs.readthedocs.io/en/latest/xml.html#searching-in-xml)

API changes on existing features (you may need to change your code)
* On failed validation of leafrefs, error message changed from: `No such leaf` to `No leaf <name> matching path <path>`.
* CLI Error message (clicon_rpc_generate_error()) changed when backend returns netconf error to be more descriptive:
  * Original: `Config error: Validate failed. Edit and try again or discard changes: Invalid argument`
  * New (example): `Netconf error: application operation-failed Identityref validation failed, undefined not derived from acl-base . Validate failed. Edit and try again or discard changes"

Minor changes

* Test framework
  * Added `-- -S <file>` command-line to main example to be able to return any state to main example.
  * Added `test/cicd` test scripts for running on a set of other hosts
* C-code restructuring
  * clixon_yang.c partitioned and moved code into clixon_yang_parse_lib.c and clixon_yang_module.c and move back some code from clixon_yang_type.c.
    * partly to reduce size, but most important to limit code that accesses internal yang structures, only clixon_yang.c does this now.
2020-02-02 15:52:30 +01:00
..
clixon_api_path_parse.h Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_api_path_parse.l Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_api_path_parse.y Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_data.c nacm external mem leak 2019-12-22 18:00:46 +01:00
clixon_datastore.c * Internal backend socket protocol changed: uint32_t session-id added, see clixon_proto.h 2019-10-19 19:52:09 +02:00
clixon_datastore_read.c * Added namespace-context parameter nsc to xpath_first and xpath_vec, (xpath_vec_nsc and xpath_first_nsc` are removed). 2019-12-07 20:46:13 +01:00
clixon_datastore_read.h * Optimized validation by making xml_diff work on raw cache tree (not copies) 2019-04-07 15:55:53 +02:00
clixon_datastore_tree.c clang warnings 2019-12-23 14:03:42 +00:00
clixon_datastore_tree.h New XMLDB_FORMAT added: tree. An experimental record-based tree database for direct access of records. 2019-04-26 13:38:55 +02:00
clixon_datastore_write.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_datastore_write.h * Structural change: removed datastore plugin and directory, and merged into regulat clixon lib code. 2019-03-31 18:17:40 +02:00
clixon_err.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_event.c 2019 2019-01-02 15:48:30 +01:00
clixon_file.c * Implemented backend daemon drop privileges after initialization to 2019-09-14 18:34:32 +02:00
clixon_handle.c All hash_ functions have been prefixed with clicon_ to avoid name collision with other packages (frr) 2019-06-18 14:49:18 +02:00
clixon_hash.c All hash_ functions have been prefixed with clicon_ to avoid name collision with other packages (frr) 2019-06-18 14:49:18 +02:00
clixon_json.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_json_parse.h Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_json_parse.l Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_json_parse.y Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_log.c * C-API: Added xpath_first_localonly() as an xpath function that skips prefix and namespace checks. 2019-12-20 18:21:46 +01:00
clixon_nacm.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_netconf_lib.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_options.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_path.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_plugin.c Configure and test modification for better Freebsd port 2019-09-20 06:09:48 -10:00
clixon_proto.c clang warnings 2019-12-23 14:03:42 +00:00
clixon_proto_client.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_regex.c empty unquoted string; unknown in anydata/xml 2019-05-29 19:36:23 +02:00
clixon_sha1.c renamed .h and libs clicon->clixon 2016-02-28 15:27:36 +01:00
clixon_sig.c Demon->Daemon, FreeBSD grep changes 2019-10-14 07:47:08 -10:00
clixon_stream.c * Added namespace-context parameter nsc to xpath_first and xpath_vec, (xpath_vec_nsc and xpath_first_nsc` are removed). 2019-12-07 20:46:13 +01:00
clixon_string.c * C-API: Added xpath_first_localonly() as an xpath function that skips prefix and namespace checks. 2019-12-20 18:21:46 +01:00
clixon_uid.c memerror in uid-get. reinsert save config yang spec (removed for wrong reasons previously causing memleaks) 2019-12-01 16:48:45 +01:00
clixon_validate.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_xml.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_xml_changelog.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_xml_map.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_xml_nsctx.c * C-API: Added xpath_first_localonly() as an xpath function that skips prefix and namespace checks. 2019-12-20 18:21:46 +01:00
clixon_xml_parse.h Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_xml_parse.l XML parser failed on ]]]> termination of CDATA. 2019-12-19 21:43:03 +01:00
clixon_xml_parse.y use cbuf for xml value code 2019-11-18 21:16:12 +01:00
clixon_xml_sort.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_xpath.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_xpath_ctx.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_xpath_eval.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_xpath_eval.h * C-API: Added xpath_first_localonly() as an xpath function that skips prefix and namespace checks. 2019-12-20 18:21:46 +01:00
clixon_xpath_optimize.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_xpath_parse.h Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_xpath_parse.l Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_xpath_parse.y Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_yang.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_yang_cardinality.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_yang_cardinality.h The Clixon API has been extended with namespaces, or namespace contexts in the following cases: 2019-07-08 10:36:37 +02:00
clixon_yang_internal.h Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_yang_module.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_yang_parse.h The Clixon API has been extended with namespaces, or namespace contexts in the following cases: 2019-07-08 10:36:37 +02:00
clixon_yang_parse.l * Pushed tag to 4.0.1.PRE 2019-07-23 22:11:14 +02:00
clixon_yang_parse.y Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_yang_parse_lib.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
clixon_yang_type.c Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00
Makefile.in Very large commit for upcoming 4.4 release 2020-02-02 15:52:30 +01:00