Olof hagsand
e0c3f5467c
* Added new startup-mode: running-startup: First try running db, if it is empty try startup db.
...
* See [Can startup mode to be extended to support running-startup mode? #234 ](https://github.com/clicon/clixon/issues/234 )
* Improved error message on failed MUST condition
2021-05-27 13:18:01 +02:00
Olof hagsand
69af2884d0
* Fixed: [restconf patch method unable to chage value to empty string #229 ]( https://github.com/clicon/clixon/issues/229 )
2021-05-26 22:41:28 +02:00
Olof hagsand
164aa1cb4c
* Restconf: added inline configuration using -R <xml> command line as an alternative to making advanced restconf configuration
2021-05-26 11:24:39 +02:00
Olof hagsand
1ef7a280d7
* Fixed: [when condition error under augment in restconf #227 ]( https://github.com/clicon/clixon/issues/227 )
...
* As part of this fix added custom constant XML_PARENT_CANDIDATE
2021-05-25 15:25:26 +02:00
Olof hagsand
5b39418e92
* [Need an option to disable restconf mandatory action of overwriting startup_db #230 ]( https://github.com/clicon/clixon/issues/230 )
...
* Disable RFC 8040 mandatory copy of running to startup after commit
* Rename CLICON_RESTCONF_INSTALL_DIR -> CLICON_RESTCONF_INSTALLDIR
2021-05-25 11:07:41 +02:00
Olof hagsand
60c9172d21
Fixed: [Using YANG union with decimal64 and string leads to regexp match fail #226 ]( https://github.com/clicon/clixon/issues/226 )
2021-05-24 21:05:06 +02:00
Olof hagsand
603f70e51f
Vagrant and test updates for restconf /www-data mods
2021-05-23 19:55:01 +02:00
Olof hagsand
c20c672d83
* Changed config and install options for Restconf
...
* clixon_restconf daemon is installed in /usr/local/sbin (as clixon_backend), instead of /www-data
* `configure --with-wwwdir=<dir>` remains but only applies to fcgi socket and log
* New option `CLICON_RESTCONF_INSTALL_DIR` is set to where clixon_restconf is installed, with default `/usr/local/sbin/`
* Restconf drop privileges user is defined by `CLICON_RESTCONF_USER`
* `configure --with-wwwuser=<user>` is removed
* clixon_restconf drop of privileges is defined by `CLICON_RESTCONF_PRIVILEGES` option
* New clixon-restconf@2020-05-20.yang revision
* Added: restconf `log-destination`
2021-05-23 17:14:18 +02:00
Olof hagsand
c3e26b004c
* Fixed: [xpath function count did not work properly #224 ]( https://github.com/clicon/clixon/issues/224 )
2021-05-20 15:16:29 +02:00
Olof hagsand
37bcceac02
* Fixed: RESTCONF Native: Failed binding of socket in network namespace caused process zombie
2021-05-17 22:50:07 +02:00
Olof hagsand
376f2a8143
* Fixed problems with XPATH composite operations and functions in netconf get/get-config operations.
...
* See [XPATH issues #219 ](https://github.com/clicon/clixon/issues/219 )
2021-05-17 10:07:09 +02:00
Olof hagsand
5baf8642ea
* Fixed union in XPATH [XPATH issues #219 ]( https://github.com/clicon/clixon/issues/219 )
2021-05-15 22:28:10 +02:00
Olof hagsand
783b0a4857
* YANG when statement in conjunction with grouping/uses/augment
...
* Several cases were not implemented fully according to RFC 7950
* Do not extend default values if when statements evaluate to false
* Do not allow edit-config of nodes if when statements evaluate to false (Sec 8.3.2)
* If a key leaf is defined in a grouping that is used in a list, the "uses" statement MUST NOT have a "when" statement. (See 7.21.5)
* See [yang uses's substatement when has no effect #218 ](https://github.com/clicon/clixon/issues/2$
2021-05-13 14:26:02 +02:00
Olof hagsand
ad08200931
- Added Restconf-style xml/json message bodies everywhere
...
- Added api_return_err0() and changed many calls to that instead of api_return_err
- Added netconf_operation_not_supported_xml()
2021-05-08 20:20:01 +02:00
Olof hagsand
ac51cb0293
* Fix: XPath:s used in netconf (eg get-config) did not correctly access default values
2021-05-07 13:07:34 +02:00
Olof hagsand
17e7b25537
* RESTCONF in Clixon used empty key as "wildchar". But according to RFC 8040 it should mean the "empty string".
...
* Example: `GET restconf/data/x:a=`
* Previous meaning (wrong): Return all `a` elements.
* New meaning (correct): Return the `a` instance with empty key string: "".
* [RESTCONF GET request of single-key list with empty string returns all elements #213 ](https://github.com/clicon/clixon/issues/213 )
* [RESTCONF GETof lists with empty string keys does not work #214 ](https://github.com/clicon/clixon/issues/214 )
2021-05-05 15:04:22 +02:00
Olof hagsand
af04ec9e9d
Completed: Yang deviation [deviation statement not yet support #211 ]( https://github.com/clicon/clixon/issues/211 )
2021-05-04 11:38:39 +02:00
Olof hagsand
5a72626aa4
- Yang deviation [deviation statement not yet support #211 ]( https://github.com/clicon/clixon/issues/211 )
...
- Added "depth" parameter to yang_apply
- Added extra API function to yang_cardinality to check individual relation
2021-05-03 14:34:35 +02:00
Olof hagsand
6981daf595
Fixed: [Multiple http requests in native restconf yields same reply #212 ]( https://github.com/clicon/clixon/issues/212 )
2021-04-24 17:43:05 +02:00
Olof hagsand
d48b8a8fad
-Yang Deviation/deviate : added yacc/lex syntax
2021-04-24 12:31:40 +02:00
Olof hagsand
1c7e52f829
Merge branch 'autocli' of https://github.com/shmuelnatan/clixon into shmuelnatan-autocli
2021-04-22 20:56:04 +02:00
Olof hagsand
ecd5f7de70
* Add default network namespace constant: RESTCONF_NETNS_DEFAULT with default value "default".
2021-04-22 13:45:02 +02:00
Olof hagsand
1d29d29415
- Fixed: [xml2txt last param not used #204 ]( https://github.com/clicon/clixon/issues/204 )
...
- test: coverage test scripts for CI
2021-04-20 13:05:23 +02:00
Olof hagsand
7ebb538ebf
- Changed master to 5.2.0.PRE
...
- Modified Makefiles for static linkage and coverage
- test namespace abstractions
2021-04-17 15:23:10 +02:00
Olof hagsand
ae943d485e
prepare for 5.1.0
2021-04-15 20:14:25 +02:00
Olof hagsand
307378227d
preparing for 5.1.0
2021-04-15 14:26:57 +02:00
Olof hagsand
172cfd69b3
- Fixed [clixon_proc can't start new process with PATH env #202 ]( https://github.com/clicon/clixon/issues/202 )
...
- Memory errors in tests
2021-04-14 17:02:24 +02:00
Olof hagsand
5af7ea9b38
* Added check of old config in upgrade scenarios.
...
* Added to clixon-config.yang `CLICON_XMLDB_UPGRADE_CHECKOLD`, set to false to keep less strict check
2021-04-12 21:03:20 +02:00
Olof hagsand
8469a0962e
* Add multiple yang support also for obsolete versions
...
* This means that files and datastores supporting modstate also looks for deleted or updated yang modules.
* A stricter binding which gives error if loading outdated YANG file does not exist.
* Stricter yang checks: you cannot do get-config on datastores that have obsolete YANG
* Added xerr output parameter to `xmldb_get0()`
2021-04-12 12:42:26 +02:00
Olof hagsand
953326d39f
- Rewrote process control to simpler state model: stopped/running/exiting
...
- Stricter CLICON_BACKEND_RESTCONF_PROCESS :
- if set, restconf daemon queries backend for its config
- if not set, restconf daemon reads its config from main config file
2021-04-12 10:31:17 +02:00
Olof hagsand
692dc12c03
* Fixed ["aux" folder issue with Windows. #198 ]( https://github.com/clicon/clixon/issues/198 )
...
* Updated config scripts
* removed unused expand_dir util cli function
* Fixed again [making cli_show_options's output more human readable #199 ](https://github.com/clicon/clixon/issues/199 )
2021-04-07 09:44:18 +02:00
Olof hagsand
7412bb7b3d
Fixed [changing interface name not support with openconfig module #195 ]( https://github.com/clicon/clixon/issues/195 )
2021-04-06 22:36:46 +02:00
Olof hagsand
d8be601606
* To configure native mode use: configure --with-restconf=native, changed from: configure --with-restconf=evhtp
2021-04-06 08:48:45 +02:00
Olof hagsand
2def5d2367
* Fixed Yang parsing of comments in (extension) unknown statements, to allow multiple white space
...
* Fixed cli_start_shell: comments and cli_error
* Fixed [making cli_show_options's output more human readable #199 ](https://github.com/clicon/clixon/issues/199 )
* Fixed SSL/evhtp limited read buffer problem
2021-04-01 15:56:56 +02:00
Olof hagsand
c7e7598e3b
* Updated "evhtp" restconf mode
...
* No reliance on libevent or libevhtp, but on libssl >= 1.1 directly
* Moved out event handling to clixon event handling
* Moved out all ssl calls to clixon
* New code MUST use libevhtp from https://github.com/clixon/clixon-libevhtp.git
* This does NOT work: libevhtp from https://github.com/criticalstack/libevhtp.git
2021-03-30 16:00:03 +02:00
Olof hagsand
477059f33d
Fixed again: [backend start resconf failed due to path string truncated #192 ]( https://github.com/clicon/clixon/issues/192 )
2021-03-24 12:23:00 +01:00
Olof hagsand
709459304f
* Removed cli_debug(). Use cli_debug_backend() or cli_debug_restconf() instead.
...
* Created restconf debug rpc stub function and documented restconf debugging
2021-03-22 14:56:05 +01:00
Olof hagsand
6d23963d8b
Fixed: [clixon_restconf not properly configed and started by clixon_backend #193 ](clixon_restconf not properly configed and started by clixon_backend #193 )
2021-03-22 12:20:52 +01:00
Olof hagsand
5ec8965d18
Fixed: [backend start resconf failed due to path string truncated #192 ]( https://github.com/clicon/clixon/issues/192 )
2021-03-22 12:16:52 +01:00
Olof hagsand
43db8dd5c5
Fixed: [state showing error in cli with CLICON_STREAM_DISCOVERY_RFC8040 #191 ]( https://github.com/clicon/clixon/issues/191 )
2021-03-18 10:41:08 +01:00
Olof hagsand
afdf6ffcf8
Fixed: [state showing error in cli with CLICON_STREAM_DISCOVERY_RFC8040 #191 ]( https://github.com/clicon/clixon/issues/191 )
2021-03-18 09:43:13 +01:00
Olof hagsand
f8830dc27e
Fixed: [yang submodule show error in modules-state #190 ](yang submodule show error in modules-state #190 )
2021-03-17 15:44:45 +01:00
Olof hagsand
fb9917e81e
* Removed endtag parameter of clixon_xml_parse_file()
2021-03-15 13:24:27 +01:00
Olof hagsand
f536b1dc67
Added: CLICON_CLI_AUTOCLI_EXCLUDE
...
Added openconfig interfaces tests
2021-03-15 13:08:42 +01:00
Olof hagsand
9087694b58
Fixed: [Backend can not read datastore with container named config #147 ]( https://github.com/clicon/clixon/issues/147 )
2021-03-13 17:15:00 +01:00
Olof hagsand
07d196dfd0
Added several fields to process-control status operation: active, description, command, status, starttime, pid
2021-03-12 17:22:22 +01:00
Olof hagsand
7e9a207ab2
* New clixon-lib@2020-03-08.yang revision
...
* Changed: RPC process-control output to choice dependent on operation
2021-03-12 12:10:25 +01:00
Olof hagsand
7762b10cbb
* Changed signal handling
...
* Moved clixon-proc sigchild handling from handler to clixon_events
2021-03-11 18:12:43 +01:00
Olof hagsand
dea3962cc0
* Fixed: [The config false leaf shouldn't be configed in startup stage #189 ]( https://github.com/clicon/clixon/issues/189 )
2021-03-11 09:11:14 +01:00
Olof hagsand
5692072d36
* Fixed: [CLIXON is not waiting for the hello message #184 ]( https://github.com/clicon/clixon/issues/184 )
...
* Hello message semantics has been made stricter according to RFC 6241 Sec 8.1, for example:
* A client MUST send a <hello> element.
* Each peer MUST send at least the base NETCONF capability, "urn:ietf:params:netconf:base:1.1" (or 1.0 for RFC 4741)
* The netconf client will terminate (close the socket) if the client does not comply
* You can set `CLICON_NETCONF_HELLO_OPTIONAL` to true to use the old behavior of essentially ignoring hellos.
* New clixon-config@2020-03-08.yang revision
* Added: `CLICON_NETCONF_HELLO_OPTIONAL`
* The base capability has been changed to "urn:ietf:params:netconf:base:1.1" following RFC6241.
2021-03-10 14:18:16 +01:00