Olof hagsand
f87ff859a6
Removed list-pagination-partial-state extension
...
Refactored pagination code
Reverted clixon-lib.yang to 2024-04-01 revision
2024-10-16 10:46:54 +02:00
Olof hagsand
c1ea72bcb3
Restconf: Support for list of media in Accept:
...
Restconf: Better RFC compliance with Accept errors: 406 vs 415
Fixed: [RESTCONF exit on cert error + complex accept](https://github.com/clicon/clixon/issues/551 )
2024-09-02 16:37:11 +02:00
Olof hagsand
dfe5c1bac1
Refactoring of schema mount-points
...
Add new top-level `Y_MOUNTS` and add top-level yangs and mountpoints in yspecs
2024-08-29 17:24:44 +02:00
Olof hagsand
c08dac2e5d
YANG optimization: move "when" and "mymodule" to external maps
2024-08-11 14:07:33 +02:00
Olof hagsand
2b2a2ec1ad
Restconf native stream support
2024-05-13 08:29:48 +02:00
Olof hagsand
3b0b734de1
Fix same -V version string
...
Restconf exit segv
2024-02-17 22:11:35 +01:00
Olof hagsand
d660c01a58
Optimization of xldb_put
...
Added flags parameter to default functions
removed call to bind
2024-02-06 09:27:51 +01:00
Olof hagsand
4e3bd6fbdd
Symbolic and combined debug names in cmd-line of all applications
...
New debug levels: BACKEND, CLI, NETCONF,RESTCONF, SNMP, STREAM
2024-02-02 11:54:12 +01:00
Olof hagsand
121cd3ed2e
Debug: ensured all exit logs are on the format: retval:%s
2024-01-24 10:03:28 +01:00
Philip Prindeville
cf2e27b43d
Drop __FUNCTION__ from clixon_debug() calls
2024-01-11 17:29:37 +01:00
Philip Prindeville
0ec1e0a686
Discriminate APP debugging
2024-01-10 20:06:38 +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
bbcb4a7b03
Creator attribute changes: added as xmldb metadata
...
clixon-config.yang: New revision and Added `CLICON_NETCONF_CREATOR_ATTR` option
clixon-lib.yang: Added creator meta
Changed return value of xml_add_attr
2023-11-28 14:44:01 +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
585823a609
Memory leaks
2023-02-14 16:42:43 +01:00
Olof hagsand
3916fa919c
Netconf monitoring RFC 6022 Sessions ( https://github.com/clicon/clixon/issues/370 )
...
- statistics and transport/source-host parameters
- extended internal NETCONF hello with transport and source-host attributes
clixon-lib,yang
- Moved all extended internal NETCONF attributes to the clicon-lib namespace
C-API:
- wrapped most attribute creation into new fn xml_add_attr()
2023-01-15 12:36:59 +01: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
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
ba9b313295
Restconf callhome: idle-timeout for periodic callhome
2022-08-22 11:27:02 +02:00
Olof hagsand
b748d68912
RESTCONF callhome, periodic and persistent connection-types, multiple clients
2022-08-18 16:38:24 +02:00
Olof hagsand
3a9b276deb
Fixed struct sockaddr memory issues
...
Test: fixed docker yang repo copy
Test: disable restconf-callhome for fcgi
2022-07-31 11:33:02 +02:00
Olof hagsand
7d8ddf7697
Restconf RFC8071 call-home first working prototype
2022-07-31 09:59:52 +02:00
Olof hagsand
463aa15544
Restconf compile warnings and docs
2022-05-02 10:28:24 +02:00
Olof hagsand
5551d753ef
Logging fixes
...
* Fixed: [Error message seen twice in some cases](https://github.com/clicon/clixon/issues/325 )
* Extended `-l` command-line option to all clixon commands with a `none` option, eg `-l n` directs logging to `dev/null`
2022-04-30 11:31:51 +02:00
Olof hagsand
e0100a6e3c
Fixed: YANG if-feature in config file did not work, was always on
...
Test: unset test variables
2022-04-23 16:49:09 +02:00
Olof hagsand
404d05950a
HTTP data server updates
...
Check of enable-http-data config option
HTTP/2 Return 400 bad request if no path match
Test: updated yang file revisions, extended restconf config with http-data
2022-04-22 15:23:38 +02:00
Olof hagsand
ff37ce808c
* Rename demon -> daemon
2022-03-07 11:18:27 +01:00
Olof hagsand
77b4468eb3
Updated copyright statements to 2022
2022-01-18 16:36:00 +01:00
Olof hagsand
50ac510803
* Fixed: Configure option CLICON_RESTCONF_PATH was marked as obsolete but was still used.
...
* `CLICON_RESTCONF_PATH` is now obsolete for sure
* Instead if you use fgci/nginx:
* Use `restconf/fcgi-socket`
* Ensure `<CLICON_FEATURE>clixon-restconf:fcgi</CLICON_FEATURE>` is set
* Added default values to restconf-config and save fcgi-socket-path in memory
2022-01-01 11:52:18 +01:00
Olof hagsand
3117332ddd
Changes in clixon-config.yang:
...
* Removed obsolete options:
* `CLICON_YANG_LIST_CHECK`
* `CLICON_RESTCONF_PATH` (moved to restconf/fcgi-path)
* Fixed: Configure option `CLICON_RESTCONF_PRETTY` was marked as obsolete but was still used.
* `CLICON_RESTCONF_PRETTY` is now obsolete for sure
* Instead restconf/pretty is used with API function restconf_pretty_get()
2021-12-28 11:44:19 +01:00
Olof hagsand
a4b4dc97ce
Pagination updated
...
* Pagination is updated to new drafts:
* [https://datatracker.ietf.org/doc/html/draft-wwlh-netconf-list-pagination-00 >]
* [https://datatracker.ietf.org/doc/html/draft-wwlh-netconf-list-pagination-nc-02 ]
* [https://datatracker.ietf.org/doc/html/draft-wwlh-netconf-list-pagination-rc-02 ]
* See also updated [https://clixon-docs.readthedocs.io/en/latest/pagination.html ]
* Added IETF RFC:s (included by pagination):
* ietf-netconf-nmda@2019-01-07.yang
* ietf-origin@2018-02-14.yang
* ietf-netconf-with-defaults@2011-06-01.yang
* Dropped pcvec parameter to many restconf api functions
2021-11-10 18:35:24 +01:00
Olof hagsand
fb0b9409f3
- Moved restrconf code from pageing rpc to get
2021-09-21 11:24:53 +02:00
Olof hagsand
76e59873c2
- Changed media name: yang.collection+xml/yang to application-collection+xml/json
...
- Modified ietf-netconf-list-pagination.yang:
- changed get-pagable -> get-pageable
- renamed count -> limit
- renamed skip -> offset
- added import ietf-yang-metadata
- added md:annotation remaining
2021-09-21 11:22:41 +02:00
Olof hagsand
2e857bb417
First working prototype
2021-09-21 11:22:40 +02:00
Olof hagsand
392e6679c5
* JSON errors are now labelled with JSON and not XML
...
* Fixed: [Performance issue when parsing large JSON param](https://github.com/clicon/clixon/issues/266 )
* Moved strlen() from for end condition
* Fixed debugging of xpath parser
2021-09-20 21:35:01 +02:00
Olof hagsand
aed7dbfd8b
- Restconf error: added special case for translating from netconf invalid-value to 400 vs 404
...
- Added media to restconf sanity checks, such as bad client cert error
2021-08-27 15:12:50 +02:00
Olof hagsand
e0ee365958
* Fixed: RFC 8040 yang-data extension allows non-key lists
...
* Added YANG_FLAG_NOKEY as exception to mandatory key lists
2021-07-19 11:15:49 +02:00
Olof hagsand
84f5762ab5
* Most tests work with HTTP/2 support using nghttp2
...
* except non-ssl http/1->/2 upgrade
* Restconf: ensure HEAD method works everywhere GET does.
2021-06-08 20:53:43 +02:00
Olof hagsand
b680e3c5ac
- Restconf nghttp2 compiles
2021-06-03 22:47:54 +02:00
Olof hagsand
0ad577fa81
- Started nghttp2 work
...
- Added autoconf config options, temporary for nghttp2 development: `--disable-evhtp`and `--enable-nghttp2`.
- Added special case for api-path:s beginning with //
2021-05-31 19:11:19 +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
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
ecd5f7de70
* Add default network namespace constant: RESTCONF_NETNS_DEFAULT with default value "default".
2021-04-22 13:45:02 +02:00
Olof hagsand
b88722fa25
- Restructure plugin module using a "module struct" rather than global variables.
...
This include plugin module init and exit functions
New type: clixon_plugin_t exposed via public API while struct clixon_plugin is private
- Makefile changes for static linkage using "LINKAGE=static"
- Moved nacm external init to later stage in backend_main
2021-04-19 11:06:40 +02:00
Olof hagsand
c43e216d67
- Restconf bind: continue with other sockets if bind fails, print address on log
...
- Multi-yang: Look in CLICON_YANG_MAIN_DIR, not only CLICON_MAIN_DIRs for old yangs
- Backend -q quit option enhanced for multi-yang case
2021-04-13 18:00:27 +02:00
Olof hagsand
0020c7ff3f
cicd test fixes for libevhtp and warnings
2021-04-01 11:20:48 +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
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
7762b10cbb
* Changed signal handling
...
* Moved clixon-proc sigchild handling from handler to clixon_events
2021-03-11 18:12:43 +01:00