Commit graph

2527 commits

Author SHA1 Message Date
Olof hagsand
04d5f52d90 Revert Temporar fix in clixon_custom.h: XPATH_CANONICAL_SKIP_CHECK 2023-04-19 10:45:21 +02:00
Olof hagsand
c56d5aa44e Fixed: RESTCONF: some client cert failure leads to restconf exit
Instead close and continue
2023-04-18 10:10:52 +02:00
Olof hagsand
f8324df917 Creator tagging for leafs, sort-modules: remove flag setting, yang_lib2yspec patch 2023-04-13 21:11:57 +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
819a0b5a9e New clixon-lib@2023-03-01.yang revision
* Added creator meta-object
2023-04-11 13:50:45 +02:00
Olof hagsand
45d8e5b6ce C-API xmldb_validate() removed. compare_db_names() added. 2023-04-09 21:13:12 +02:00
Olof Hagsand
7eb37273b8 Formatting of comments 2023-03-30 15:39:35 +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
1e136bc9df Added clicon_data_init API, and yang_mount_get API
Moved dynamic options from options to data API
2023-03-12 21:04:23 +01:00
Olof hagsand
5822c1a72a * clicon_msg_rcv: Added intr parameter for interrupting on ^C (default 0)
* Internal NETCONF (client <-> backend)
  * Ensure message-id increments
  * Separated rpc from notification socket in same session
* Removed coverage icon from homepage since it stopped working some time ago
2023-03-08 21:41:29 +01:00
Olof hagsand
453e97ef6b Test: removed http/1.0 test that seems to stop working in new curl version? 2023-03-04 10:58:29 +01:00
Olof Hagsand
360e4beb1f
Merge pull request #425 from vvsosed/fix_cli_via_ssh_issue
Error message stucks in stdout buffer
2023-03-03 17:54:55 +01:00
Olof hagsand
995c3b2c67 typo in rearrange includes; unused reason parameter in snmp_lib 2023-03-03 17:41:02 +01:00
Olof hagsand
1f5df800bc Restconf: Added fallback mechanism for non-ALPN HTTPS
* Set `CLICON_RESTCONF_NOALPN_DEFAULT` to `http/2` or `http/1.1`
  * For http/1 or http/2 only, that will be the default if no ALPN is set.
2023-03-03 16:05:31 +01:00
Olof hagsand
5f2978d06c Files: Rearranged backend .h files: moved client_entry to clixon_backend_client.h 2023-03-03 16:05:31 +01:00
Volodymyr Sosiedkin
9a6a378c99 Fix cli via ssh error log output issue 2023-03-01 17:52:38 +02:00
Olof Hagsand
d6c523d27a
Merge pull request #422 from dima1308/master
Add support decimal64 for SNMP
2023-02-23 12:35:48 +01:00
Olof hagsand
55422f4187 PERF: Added a recurse parameter to xml_yang_minmax_recurse() to avoid "double recursion"
C-API: `candidate_commit()`: validate_level (added in 6.1) marked obsolete
2023-02-23 11:42:15 +01:00
Olof hagsand
2db5961169 Example: fixed mismatch between install dirs and DIRs in example.xml.in
Docker: Removed example from test container, fixed example container
2023-02-22 23:24:50 +01:00
Olof hagsand
a8c4e8699c Docker: Fixed broken config file in clixon-example 2023-02-22 14:08:38 +01:00
Olof hagsand
fe8636bb77 Move validation flag to include diff 2023-02-21 20:19:59 +01:00
Olof hagsand
48a7eac096 yang load add test to not parse files if not already loaded 2023-02-21 12:02:40 +01:00
stass
980c7d082f Add support decimal64 for snmp
Signed-off-by: Dmitry Grinberg <dima.g@siklu.com>
2023-02-21 11:57:00 +02:00
Olof hagsand
411a67f9d6 Start of 6.2.0.PRE development.
Removed autoconf requirement to have libcurl
2023-02-20 09:40:12 +01:00
Olof hagsand
72a4494b69 Clixon 6.1
Reviewed documentation, changelog, etc
2023-02-19 11:35:37 +01:00
Olof hagsand
994632daac Test adaption to new openconfig version
Last minute changes to readme:s before 6.1.0
2023-02-18 12:10:58 +01:00
Olof hagsand
585e725aec Yang schema mount: replaced config --enable-yang-schame-mount with runtime option CLICON_YANG_SCHEMA_MOUNT
Added config and validation-level as parameters to ca_yang_mount
2023-02-17 16:39:39 +01:00
Olof hagsand
02841e5c36 CI: changed curl dependency 2023-02-17 11:48:43 +01:00
Olof Hagsand
ecd60fbcfe
Merge pull request #418 from kernelkit/kkit
Misc. build fixes encountered when cross-compiling
2023-02-17 09:52:42 +01:00
Olof hagsand
204c704b3a Test: moved unsetting of vars to endtest 2023-02-15 13:59:21 +01:00
Joachim Wiberg
058d3f7597 .github: add curl-dev dependency for regression tests
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-02-14 20:38:41 +01:00
Olof hagsand
585823a609 Memory leaks 2023-02-14 16:42:43 +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
Joachim Wiberg
e36a4e3016 test: temporary fixes DROP BE BEFORE PUSH
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-02-14 15:39:23 +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
d358387d39 * Fixed: [State XML validation error when CLICON_MODULE_LIBRARY_RFC7895=true and ietf-yang-libra$
* Removed obsolete option: `CLICON_MODULE_LIBRARY_RFC7895'
  * Obsolete config options given in the confi file are considered an error
* Added section in CONTRIBUTING relating to optimzation
* Changed reset merge to implicit default values.
  * This avoids a potential overwriting of explicitly set default values in the existing config
* Adapted some code to [Make cligen_* functions const ](https://github.com/clicon/cligen/pull/83)
* Test: fixed test for * Fixed: [datamodel tree generated from basemodel tree is not proper when a list has more than one key and key is of enum type](https://github.com/clicon/clixon/issues/417)
2023-02-12 16:19:27 +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
Joachim Wiberg
1283270504 configure.ac: fix string comparison operator, == vs =
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-02-09 15:53:52 +01:00
Joachim Wiberg
726394d97c apps/restconf: fix compiler warning 'addr' may be used uninitialized
Natvie build with GCC 11.3 generates the following warning.  The patch
is silly and the code path should never be reached, but it silences the
compiler.

restconf_main_native.c:572:9: warning: ‘addr’ may be used uninitialized in this function [-Wmaybe-uninitialized]

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-02-09 15:53:52 +01:00
Joachim Wiberg
9cd764f031 example/main: replace hard-coded path with variables from configure
Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-02-09 15:53:52 +01:00
Joachim Wiberg
b48c6ad982 example/main: add missing $(DESTDIR) to standard include path
This is used everywhere else so looks loke a simple omission.  Needed
when cross-compiling (or packaging) Clixon.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-02-09 15:53:52 +01:00
Joachim Wiberg
e84d43c8e3 configure.ac: add proper check for libcurl + curl/curl.h
Both util/clixon_util_stream.c and lib/src/clixon_stream.c depend on
libcurl.  The latter has `#ifdef CLIXON_PUBLISH_STREAMS` but the former
does not.  So `make util` fails without `--enable-publish` if libcurl
is not installed.

To preserve the original behavior (libcurl is an implicit dependency),
this patch adds a `--without-libcurl` option to indicate this default.
The check for libcurl and curl/curl.h is factored out as a separate
check before checking for `--enable-publish`.  If the two build options
are in conflict we exit with a clear error code.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-02-09 15:53:52 +01:00
Joachim Wiberg
a7693c8856 configure.ac: find include path to libxml2 using xml2-config tool
This patch replaces the hard-coded `-I /usr/include/libxml2` used when
building clixon_util_regexp with the output from `xml2-config --cflags`.

To support cross-compiling, and preserve backwards compatibility with
the `--with-libxml2` option, we allow the user to pass the path to the
xml2-config tool as an optional argument.  Similar to what python-lxml,
and other packages, that rely on libxml2 do.  The argument is optional
to ensure that we default to use the hard-coded path from before.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-02-09 15:51:33 +01:00
Olof hagsand
8f7ae33262 Yang schema mount: repaired yanglib statedata mountpoint
Example: patch to fix "dual xpath" issue
2023-02-08 15:00:07 +01:00
Olof Hagsand
8699af97fb
Merge pull request #419 from jarrodb/doc_faq_hello
Update FAQ.md hello world example url
2023-02-08 14:53:10 +01:00
Jarrod Baumann
d65a6b14c2 [docs] update FAQ hello world example url 2023-02-07 21:38:11 -06:00
Olof Hagsand
fcb6e5cb03 yang path sanity checks and use of real module as root 2023-02-07 11:14:58 +01:00
Olof hagsand
56f15aeefd SNMP mem tests: increase timeout for walk and table, use single snmp tools macro 2023-02-06 12:46:55 +01:00
Olof hagsand
ba861bc619 Merge branch 'StasSt-siklu-DEV-5396-tg-snmp-snmp-walk-in-tg-not-as-snmp-in-eth-8010' 2023-02-06 10:51:03 +01:00