Commit graph

1106 commits

Author SHA1 Message Date
Olof hagsand
67e6e5e5e1 Preparations for Clixon 6.0 release
Test:
- netconf-monitoring using http-data disabled for restconf=fcgi
- updated cicd.sh script with detail and change logfile
2022-11-29 10:00:41 +01:00
Olof hagsand
c94e9dad67 Feature Request: Support RFC 6022 (NETCONF Monitoring)
* Added capabilities and schema state, and get-schema rpc
* New `clixon-config@2022-11-01.yang` revision
  * Added option:
    * `CLICON_NETCONF_MONITORING`
    * `CLICON_NETCONF_MONITORING_LOCATION`
2022-11-28 15:53:24 +01:00
Olof hagsand
f82ce896a9 Typos and docker test fix for ubuntu-22.04 2022-11-10 11:40:54 +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
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
779fcf5458 Fixed xpath crashes discovered by fuzzing
Added fuzz code for xpath
Test: added negative xpath tests
2022-11-04 17:45:54 +01:00
Olof hagsand
05cdbf5c4f * List-pagination: Adhere to ietf-draft: Removed list-pagination "presence"
* Remove default expansion in NETCONF client
* C-API: Added `expanddefault` parameter to `xml_yang_validate_rpc()`
2022-11-02 11:25:06 +01:00
Olof hagsand
c2faf8b96c Main example: Removed dependency of external IETF RFCs
+  * See [Can't initiate clixon_backend](https://github.com/clicon/clixon/issues/382)
2022-11-01 12:20:30 +01:00
Olof hagsand
e3d621c66d Fixed: SEGV when using NETCONF get filter xpath and non-existent key
* eg `select="/ex:table[ex:non-exist='a']`
2022-11-01 11:13:40 +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
83f71529d7 Fixed: [CLI Show config JSON with multiple top-level elements is broken](https://github.com/clicon/clixon/issues/381)
C API: Added skiptop parameter to xml2json_vec
2022-10-28 15:19:41 +02: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
a9d1ab006c Confirmed commit: lock check on running 2022-10-26 20:18:57 +02:00
Olof hagsand
7976303ef2 Confirmed-commit handle drop privileges
Create and drop priv of rollback datastore on startup
Reverted xmldb to truncate instead of deleting datastores due to privileges drop
2022-10-26 14:39:47 +02:00
Olof hagsand
05b31508a1 * Fixed: [Non-obvious behavior of clixon_snmp after snmpset command when transaction validation returns an error](https://github.com/clicon/clixon/issues/375)
* Fixed by validating writes on ACTION instead of COMMIT since libnetsnmp seems not to accept commit errors
2022-10-25 16:32:48 +02:00
Olof hagsand
6f0bd01a6a Confirm-commit RESTCONF support 2022-10-18 10:56:14 +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
83663d4d15 Fixed: [Trying to change the "read-only" node through snmpset](https://github.com/clicon/clixon/issues/376) 2022-10-09 17:02:08 +02:00
Olof hagsand
aff69127b6 Fixed: [Trying to change the "config false" node through snmpset](https://github.com/clicon/clixon/issues/377)
* Fixed by returning `SNMP_ERR_NOTWRITABLE` when trying to reserve object
2022-10-09 11:59:26 +02:00
Olof hagsand
575429caa1 * Fixed: [Non-obvious behavior of clixon_snmp after snmpset command when transaction validation returns an error](https://github.com/clicon/clixon/issues/375)
* Changed `clicon_rpc_commit()` and `clicon_rpc_validate`: Added three-value return.
2022-10-08 17:17:04 +02:00
Olof hagsand
d29c81fce0 Fixed: [clixon_snmp module crashes on snmpwalk command](https://github.com/clicon/clixon/issues/378) 2022-10-07 17:54:42 +02:00
Phil Heller
8abcda6f85 confirmed-commit fixes, tests
- fixed typo preventing evaluation of confirmed-commit logic in backend_startup
- fixed uninitialized variable warnings
- added details to CHANGELOG.MD
- added capabilities advertisement for confirmed-commit 1.0 and 1.1
- added xml hello message that uses only eom framing, for simplicity in asynch tests
- add stty restore after wait_restconf to fix console corruption in tests
- adjust test_confirmed_commit to drop perms and run as the invoking user.  This will require running user to have permissions on /usr/local/var/example
- added CLI tests
2022-10-03 21:47:09 -06:00
Olof hagsand
954e5d56fd Fixed: [unneeded trailing zero character on SNMP strings](https://github.com/clicon/clixon/issues/367) 2022-10-03 18:39:32 +02:00
Olof hagsand
f0c8201762 Added warning if modstate is not present in datastore if is set 2022-10-03 10:29:48 +02:00
Olof hagsand
bae92488e9 * Added defaults parameter to clicon_rpc_get_pageable_list()
* Test: Replaced bash coverage script with binary
2022-09-28 15:16:02 +02:00
Olof hagsand
e3f3d772c7 Fixed: [message-id present on netconf app "hello"](https://github.com/clicon/clixon/issues/369) 2022-09-28 15:04:11 +02:00
Olof hagsand
6063d9a147 Fixed: [SNMP smiv2 yang extension doesn't work on augmented nodes](https://github.com/clicon/clixon/issues/366) 2022-09-27 15:47:48 +02:00
Olof hagsand
f0def17b85 New pre version: 6.0.0.PRE 2022-09-26 12:37:52 +02:00
Olof hagsand
33297925cb Clixon 5.9.0 autoconf 2022-09-24 17:06:48 +02:00
Olof hagsand
d06594ca0a Release 5.9.0 2022-09-24 17:01:44 +02:00
Olof hagsand
fcc9245c35 Test: make streams optional, remove dependency on main example 2022-09-20 14:44:30 +02:00
Olof hagsand
51d1a2d41c Improved netconf error handling for data-not-unique and missing-choice
* Follows RFC7950 Sec 15.1 and 15.6 more closely
* Fixed: [When multiple lists have same key name, need more elaborate error message in case of configuration having duplicate keys](https://github.com/clicon/clixon/issues/362)
2022-09-19 14:58:16 +02:00
Olof hagsand
3bf8a7dca3 Assigned meta-data for the ietf-netconf-with-defaults:default attribute for JSON (RFC8040 Sec 5.3.2) 2022-09-16 14:49:20 +02:00
Olof hagsand
a6f67755b3 Refactor of cli show commands:
- Changed `cli_show_config()`
- Removed `cli_show_config_state()`
- Replaced `cli_auto_show()` with `cli_show_auto_mode()`
2022-09-15 17:42:57 +02:00
Olof hagsand
9a224ea4a0 Fixed: [All values in list don't appear when writing "show <list>" in cli](https://github.com/clicon/clixon/issues/359)
CLISPEC change:
* Changed signature of `cli_show_auto()`,
* remove: `cli_show_auto_state()`
2022-09-15 09:48:08 +02:00
Olof hagsand
76c1566d00 Restconf callhome: idle-timeout activity timer 2022-09-14 10:43:34 +02: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
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
2eb9c6cda1 Refactored YANG min/max validation code, created new clixon_validate_minmax.[ch]
Added new recursive minmax check for non-presence containers
This makes validation checks stricter, including check of incoming RPCs
Renamed xml_yang_check_list_unique_minmax() to xml_yang_minmax_recurse()
Fixed again: [YANG min-elements within non-presence container does not work](https://github.com/clicon/clixon/issues/355)
2022-09-01 18:29:17 +02:00
Olof hagsand
f3ab3006e8 Fixed: [with-defaults=trim does not work due to dodgy handling of state data marked as default](https://github.com/clicon/clixon/issues/348) 2022-08-29 18:29:31 +02:00
Olof Hagsand
70ed85f413 Various typos 2022-08-26 12:22:30 +00:00
Olof hagsand
a516ee173d Fixed: [YANG ordering fails for nested choice and action](YANG ordering fails for nested choice and action) 2022-08-24 13:02:38 +02:00
Olof hagsand
ba39f88936 Fixed: [YANG min-elements within non-presence container does not work](https://github.com/clicon/clixon/issues/355) 2022-08-23 19:40:16 +02:00
Olof hagsand
ba9b313295 Restconf callhome: idle-timeout for periodic callhome 2022-08-22 11:27:02 +02:00
Olof hagsand
9a5504eed0 Fixed: [Issues with ietf-snmp modules](https://github.com/clicon/clixon/issues/353) 2022-08-18 18:07:29 +02:00
Olof hagsand
74da966096 Fixed: [Missing/no namespace error in YANG augments with default values](https://github.com/clicon/clixon/issues/354)
Tests: ensure all netconf requests with identityref have declared namespaces.
  * This is part of fixing [Yang identityref XML encoding is not general](https://github.com/clicon/clixon/issues/90)
2022-08-18 16:38:24 +02:00
Olof hagsand
7e783952eb Restconf callhome: Added YANG connection-type, test: added NACM 2022-08-12 15:05:18 +02:00
Olof hagsand
d1553471f7 Fixed: [Validation of mandatory in choice/case does not work in some cases](https://github.com/clicon/clixon/issues/349) 2022-08-10 13:25:30 +02:00
Olof hagsand
7d8ddf7697 Restconf RFC8071 call-home first working prototype 2022-07-31 09:59:52 +02:00