Olof hagsand
f2cad01fc6
Updated openconfig and yangmodels repos lead to some changed in testscript and a minor parsing lapsus
2019-11-16 17:34:18 +01:00
Olof Hagsand
5f7d011654
memleaks
2019-07-25 11:39:17 +00:00
Olof hagsand
e7b60619da
* Pushed tag to 4.0.1.PRE
...
* Restconf RFC 8040 increased feature compliance
* Cache-Control: no-cache added in HTTP responses (RFC Section 5.5)
* Restconf monitoring capabilities (RFC Section 9.1)
* Added support for Yang extensions
* New plugin callback: ca_extension
* Main backend example includes example code on how to implement a Yang extension in a plugin.
* JSON changes
* Non-pretty-print output removed all extra spaces.
* Example: `{"nacm-example:x": 42}` --> {"nacm-example:x":42}`
* Empty JSON container changed from `null` to `{}`.
* Empty list and leafs remain as `null`
* Removed unnecessary configure dependencies
* libnsl, libcrypt, libm, if_vlan,...
* pseudo-plugin added, to enable callbacks also for main programs. Useful for extensions
* Yang Unique statements with multiple schema identifiers did not work on some platforms due to memory error.
2019-07-23 22:11:14 +02:00
Olof hagsand
67b8685bab
The Clixon API has been extended with namespaces, or namespace contexts in the following cases:
...
* CLIspec functions have added namespace parameter:
* `cli_show_config <db> <format> <xpath>` --> `cli_show_config <db> <format> <xpath> <namespace>`
* `cli_copy_config <db> <xpath> ...` --> `cli_copy_config <db> <xpath> <namespace> ...`
* Xpath API
* `xpath_first(x, format, ...)` --> `xpath_first(x, nsc, format, ...)`
* `xpath_vec(x, format, vec, veclen, ...)` --> `xpath_vec(x, nsc, format, vec, veclen, ...)`
* `xpath_vec_flag(x, format, flags, vec, veclen, ...)` --> `xpath_vec_flag(x, format, flags, vec, veclen, ...)`
* `xpath_vec_bool(x, format, ...)` --> `xpath_vec_bool(x, nsc, format, ...)`
* `xpath_vec_ctx(x, xpath, xp)` --> `xpath_vec_ctx(x, nsc, xpath, xp)`
* xmldb_get0 has an added `nsc` parameter:
* `xmldb_get0(h, db, xpath, copy, xret, msd)` --> `xmldb_get0(h, db, nsc, xpath, copy, xret, msd)`
* The plugin statedata callback (ca_statedata) has been extended with an nsc parameter:
* `int example_statedata(clicon_handle h, cvec *nsc, char *xpath, cxobj *xstate);`
* rpc get and get-config api function has an added namespace argument:
* `clicon_rpc_get_config(clicon_handle h, char *db, char *xpath, char *namespace, cxobj **xt);`
* `int clicon_rpc_get(clicon_handle h, char *xpath, char *namespace, cxobj **xt);`
2019-07-08 10:36:37 +02:00
Olof hagsand
0ef704563b
empty unquoted string; unknown in anydata/xml
2019-05-29 19:36:23 +02:00
Olof hagsand
2fe185d683
* Support for multiple patterns as described in RFC7950 Section 9.4.7
...
* Added regex cache to type resolution
* Added compiled regexp parameter as part of internal yang type resolution functions
* All internal `ys_populate_*()` functions (except ys_populate()) have switched parameters: `clicon_handle, yang_stmt *)`
2019-05-29 11:39:09 +02:00
Olof hagsand
d775eb5374
* Improved submodule implementation, as part of [Yang submodule import prefix restrictions #60 ]( https://github.com/clicon/clixon/issues/60 ).
2019-05-14 14:09:02 +02:00
Olof hagsand
65c809b1c3
Removed external direct access to the yang_stmt struct.
2019-04-24 15:13:19 +02:00
Olof hagsand
b5f1f7346e
Structural C-code change: Merged yang_spec and yang_node types into yang_stmt
2019-04-02 12:27:33 +02:00
Olof hagsand
a68174897d
leaf-list default; yangmodels/junos models
2019-04-01 16:04:02 +02:00
Olof hagsand
31304380cd
memleak for unknown in yang parser
2019-02-28 14:39:16 +01:00
Olof hagsand
a20865846e
new try: optimized yang string parsing
2019-02-20 17:36:40 +01:00
Olof hagsand
8279c015d8
Revert "optimized string lex parsing"
...
This reverts commit 5b6bdbfd3a .
2019-02-20 16:26:01 +01:00
Olof hagsand
5b6bdbfd3a
optimized string lex parsing
2019-02-20 15:37:10 +01:00
Olof Hagsand
2b596591f1
Added Clixon example full system docker container, see [docker/system].
2019-02-07 22:23:58 +01:00
Olof hagsand
207858e20d
* Support of yangmodels supported, see test_yangmodels.sh
...
* Added -o "<option>=<value>" command-line option to all programs: backend, cli, netconf, restconf.
* Ignore CR(\r) in yang files for DOS files
2019-01-10 20:52:19 +01:00
Olof hagsand
bd67a2a5f2
Support for empty yang string added, eg default "";
...
if-feature added in yang parser at several places.
2019-01-06 16:31:36 +01:00
Olof hagsand
058a14579f
Yang choice functionality improved and stricter validation for CLI generation, mandatory flags, etc.
2019-01-04 11:37:26 +01:00
Olof hagsand
0103d58994
2019
2019-01-02 15:48:30 +01:00
Olof hagsand
7d5bfe5c81
YANG parser cardinality checked ( https://github.com/clicon/clixon/issues/48 )
2018-12-05 22:18:28 +01:00
Olof hagsand
39a5086218
* Yang Support of submodule, include and belongs-to.
...
* Improved unknown handling
* Configure option `CLICON_YANG_DIR` is changed from a single directory to a path of directories
* Note CLIXON_DATADIR (=/usr/local/share/clixon) need to be in the list
2018-12-01 18:17:42 +01:00
Olof hagsand
56da97cb5b
Openconfig yang specs parsed: https://github.com/openconfig/public
2018-11-25 18:24:13 +01:00
Olof hagsand
a8f0aad411
* Yang parser is stricter (see cardinality below) which may break parsing of slack yang specs.
...
* YANG parser cardinality checked (only modules level yet)
* See https://github.com/clicon/clixon/issues/48
2018-11-18 20:55:57 +01:00
Olof hagsand
366cf041bd
YANG keywords "action" and "belongs-to" implemented by syntactically by parser (but not proper semantics).
2018-11-04 18:36:55 +01:00
Olof hagsand
507e03742d
Yang 1.1 action syntax added (but function is not supported)
2018-10-10 22:27:46 +02:00
Olof hagsand
0631be19cb
* Notification event streams enhancements
...
* Yang 1.1 notification support
* Event stream discovery support according to RFC 5277 Sec 3.2.5.1 (netconf) and RFC 8040 (restconf)
2018-09-18 22:49:29 +02:00
Olof hagsand
deb89600ed
memleaks
2018-07-20 23:16:26 +02:00
Olof hagsand
85c4782e36
Dedicated xml,json,yang and xsl parser utility programs added
...
Sanity check of stdarg (...) added
Cleanup of error messages.
2018-06-17 19:40:06 +02:00
Olof hagsand
1ac57dedaf
Some memleaks and last minute 3.6 release changes.
2018-04-29 18:35:06 +02:00
Olof hagsand
1913407e52
Replacing remaining badrequest() with proper restconf error msg.
2018-04-22 20:13:54 +02:00
Olof hagsand
35b142cf4d
* Added Yang "extension" statement. This includes parsing unknown
...
statements and identifying them as extensions or not. However,
semantics for specific extensions must still be added.
* Renamed ytype_id and ytype_prefix to yarg_id and yarg_prefix, respectively
* Added cli_show_version()
2018-02-25 20:01:53 +01:00
Olof hagsand
38f0b446fa
2017->2018
2018-01-01 12:25:33 +01:00
Olof hagsand
056b5c97dd
experimental netconf yang spec
2017-12-08 19:37:09 +01:00
Olof hagsand
f5d2473618
Yang anyxml and extensions; yang dir with ietf-netconf and clixon-config yang specs
2017-07-02 10:52:24 +02:00
Olof hagsand
319e7707d8
Empty yang type. Relaxed yang types for unions, eg two strings with different length.
2017-01-09 21:26:50 +01:00
Olof hagsand
bc2b606167
dual license
2016-12-30 16:14:48 +01:00
Olof Hagsand
79b77943f9
renamed .h and libs clicon->clixon
2016-02-28 15:27:36 +01:00