Commit graph

148 commits

Author SHA1 Message Date
Olof hagsand
b09e326307 C-API: string to pointer map
Optimization of yspec+namespace lookup
Optimization of non-presence container default tree
2025-01-10 16:29:50 +01:00
Olof hagsand
ead9e8d666 C-API: New no-copy xmldb_get_cache function for performance
Added SKIP flag to XML for skipping nodes in xml_diff
2024-12-18 16:54:01 +01:00
Roman Khromenok
2a6bbac712
replace select to poll (#584)
* replace select

* Added poll/select selection during compilation

---------

Co-authored-by: Olof Hagsand <olof@hagsand.se>
2024-12-17 14:30:40 +01:00
Olof hagsand
081a541c6b XPath: refactored XPath match, documented localonly and prefixonly api 2024-12-17 13:47:23 +01:00
Olof hagsand
4c57edfc57 System-only config: revert clearing of candidate after commit
Add compile-time option SYSTEM_ONLY_CONFIG_CANDIDATE_CLEAR to document
2024-11-25 15:09:10 +01:00
Olof hagsand
1994a405dd Replaced compile-time with CLICON_YANG_USE_ORIGINAL
Use original yang object in grouping/augment
2024-09-26 15:17:57 +02:00
Olof hagsand
7cc94b3ac5 Some fixex on list pagination remaining attribute 2024-08-20 10:07:03 +02:00
Olof hagsand
781c9d9d27 YANG optimize, add orig pointer for derived trees
Skip some yang objects in derived trees
Add function to remove USES in augment/grouping trees
2024-08-09 12:03:14 +02:00
Olof hagsand
af29a0f974 Added YANG_SPEC_LINENR compile-time option 2024-07-31 14:33:31 +02:00
Olof hagsand
07a1fa164f List pagination, uniform config/state handling with new attributes
New `clixon-lib@2024-04-01.yang` revision and list_pagination_partial_state extension
2024-07-17 14:39:48 +02:00
Olof hagsand
3e07a1d279 configure version major/minor derived from git
Remove compile-time COMPAT_6_5 and IDENTITYREF_KLUDGE
2024-07-03 12:55:02 +02:00
Olof hagsand
419e8312f9 Replaced YANG find share algorithm, use direct yanglib diff 2024-06-30 09:46:15 +02:00
Olof hagsand
54ba56a41e YANG schema shared fix
YANG_SCHEMA_MOUNT_YANG_LIB_FORCE caused equality to fail
2024-06-11 11:35:31 +02:00
Olof hagsand
1336a4ccfb RESTCONF notification for native mode 2024-05-19 17:44:24 +02:00
Olof hagsand
37e9429ec8 Optimization of yang schema mount: share yang-specs if equal 2024-05-19 10:04:31 +02:00
Olof hagsand
2b2a2ec1ad Restconf native stream support 2024-05-13 08:29:48 +02:00
Olof hagsand
f511cb0030 Split config into multiple sub-files on mount-point boundaries and dont write clean subfiles
Added CLICON_XMLDB_MULTI option, added cl:xmldb-split extension
2024-04-25 14:58:14 +02:00
Olof hagsand
28050f44f8 Clixon 7.0.0 2024-03-08 09:41:57 +01:00
Olof hagsand
520f8a9a42 Remove propriatary internal framing functions
Changed send/rcv API using NETCONF 10 and 11 suffixes
2024-02-28 13:38:32 +01:00
Olof hagsand
e4834b9896 NETCONF internal: Enable RFC 6242 chunked encoding 2024-02-27 13:22:50 +01:00
Olof hagsand
db11b5ef99 Changed framing between backend and frontend to RFC6242 "chunked-encoding" 2024-02-27 09:56:48 +01:00
Olof hagsand
344f5ec39d Remove USE_CONFIG_FLAG_CACHE, been enabled long time 2024-01-12 11:24:24 +01:00
Olof hagsand
f25a77734e More updates for Error/Log/Debug API changes 2023-12-18 17:19:14 +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
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
7352894c7e Removed sending restconf config inline using -R when CLICON_BACKEND_RESTCONF_PROCESS=true
Define RESTCONF_INLINE to revert
2023-08-15 20:45:15 +02:00
Olof hagsand
836ec5dde5 Renamed custom constant to better reflect usage, fixed some vagrant problems 2023-07-28 16:56:08 +02:00
Olof hagsand
05c082b202 init variables, vagrant with-cligen 2023-07-28 12:49:51 +02:00
Olof hagsand
f526d5b7a0 Autocli optimization feature for generating smaller CLISPECs for large YANGs using treerefs
New `grouping-treeref` option added to clixon-autocli.yang
Default is disabled, set to true to generate smaller memory footprint of clixon_cl
Add prefix "mtpoint:" to cli api-paths to identify change of yang schemas
2023-07-23 15:21:59 +02:00
Renato Botelho do Couto
d7d81fbd13 clixon_custom.h: Remove RESTCONF_NETNS_DEFAULT
It's now defined under clixon_config.h
2023-07-06 19:55:23 +02:00
Olof hagsand
e8a8b17e1b Removed obsolete compile options introduced in 6.1:
`NETCONF_DEFAULT_RETRIEVAL_REPORT_ALL` and `AUTOCLI_DEPRECATED_HIDE`
2023-05-05 08:55:47 +02:00
Olof hagsand
5d1c6b5759 Preparations for 6.2.0
Openssl 3.0 and autoconf 2.71
2023-04-29 16:23:54 +02:00
Olof hagsand
447b8eb1d3 test fix breaking actions. Minor doc changes 2023-04-25 16:22:25 +02:00
Olof hagsand
e7c9f3d075 Unified netconf input function
First for external use, later internal
2023-04-20 21:28:01 +02:00
Olof hagsand
04d5f52d90 Revert Temporar fix in clixon_custom.h: XPATH_CANONICAL_SKIP_CHECK 2023-04-19 10:45:21 +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
0ef0970c04 Implemented: [Request to suppress auto-completion for "deprecated" / "obsolete" status and warn the user.](https://github.com/clicon/clixon/issues/410) 2023-02-14 16:42:43 +01:00
Olof hagsand
91034e5361 YANG schema mount, added configure option --enable-yang-schema-mount 2023-01-30 11:49:11 +01:00
Olof Hagsand
a8e13047fc * YANG schema mount RFC 8528, state data 2023-01-27 15:11:08 +01:00
Olof Hagsand
b3dcee9639 * YANG schema mount RFC 8528, Initial commit (work in progress)
* Keep track of YANG unknowns with ys_cvec of EXTENSION
* C-API: Init ys_cvec to NULL, added yang_cvec_add() and adjusted code to use it
2023-01-20 16:16:02 +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
571e26e0d6 Revert with-defaults option,
Added clarifying NETCONF_DEFAULT_RETRIEVAL_REPORT_ALL compile-time option instead
2022-12-08 20:28:32 +01:00
Olof hagsand
d5c657bde3 Removed YANG_ORDERING_WHEN_LAST compile-time option (obsolete since 5.4) 2022-11-07 10:47:08 +01:00
Olof hagsand
1683723b1d Removed JSON_CDATA_STRIP compile-time option (obsolete since 5.4) 2022-11-07 10:07:10 +01:00
Olof hagsand
4b21a05bcc Fixed IDENTITYREF_KLUDGE removal #2 2022-11-07 09:19:29 +01:00
Olof hagsand
b0f898cf66 Fixed: [Yang identityref XML encoding is not general](https://github.com/clicon/clixon/issues/90)
* Revisiting this issue now seems to work, there are no regressions that fail when disabling IDENTITYREF_KLUDGE.
2022-11-05 12:07:44 +01:00
Olof hagsand
56f4bb45cc * Added PRETTYPRINT_INDENT compile-time option controlling indentation level for XML,JSON and TEXT
* Default value is `3`
2022-10-31 14:20:14 +01:00
Olof hagsand
c1e4595949 Refactoring of RESTCONF/TLS close code
Single closing function: restconf_close_ssl_socket
Added constant HTTP_ON_HTTPS_REPLY for http request on https socket
2022-09-13 23:01:19 +02:00
Olof hagsand
7d8ddf7697 Restconf RFC8071 call-home first working prototype 2022-07-31 09:59:52 +02:00