Olof Hagsand
e48f8dd00e
clixon_netconf -S is obsolete. Use clixon_netconf -l s instead.
...
* Unified log handling for all clicon applications using -l e|o|s|f.
* The options stand for e:stderr, o:stdout, s: syslog, f:file
2018-07-29 19:41:10 +02:00
Olof Hagsand
5164db3603
Added clicon_log_init(.., CLICON_LOG_FILE) option and clicon_log_file() for c\
...
ases where neither syslog or stderr is useful.
2018-07-26 20:13:02 +02:00
Olof Hagsand
539a60d613
backend socket options -a -u
2018-07-25 11:40:06 +02:00
Olof hagsand
d57a6cf53c
* plugin_start() callbacks added for restconf
...
* Hard-wired users for authentication example
2018-04-24 17:43:19 +02:00
Dave Cornejo
513df9b19d
include limits.h for non-Linux compatibility
2018-04-23 08:49:45 -10:00
Olof hagsand
7650803475
* Experimental NACM RFC8341 Network Configuration Access Control Model.
...
* CLICON_NACM_MODE config option, default is disabled.
* Added username attribute to all rpc:s from frontend to backend
* Added NACM backend module in example
2018-04-19 22:44:15 +02:00
Olof hagsand
d541c49c6f
Plugin RPC callback interface have been unified between backend, netconf and restconf.
...
* Backend RPC register callback function (Netconf RPC or restconf operation POST) has been changed from: `backend_rpc_cb_register()` to `rpc_callback_register()`
* Backend RPC callback signature has been changed from: `int cb(clicon_handle h, cxobj *xe, struct client_entry *ce, cbuf *cbret, void *arg)` has been changed to : `int cb(clicon_handle h, cxobj *xe, struct client_entry *ce, cbuf *cbret, void *arg)`
* Frontend netconf and restconf plugins can register callbacks as well with same API as backends.
2018-04-07 18:20:33 +02:00
Olof Hagsand
7a4371e76f
debug function
2018-04-07 08:09:55 +00:00
Olof Hagsand
843b6abbcb
plugin API remake
2018-04-04 09:51:47 +00:00
Olof hagsand
b9a54f07f3
Restructure and more generic plugin API for backend
2018-04-02 19:27:57 +02:00
Olof hagsand
6ed769e082
The Clixon example has changed name from routing to example affecting all config files, plugins, tests, etc.
2018-04-02 13:18:47 +02:00
Olof hagsand
79e3fbdaa9
* Restructure and more generic plugin API (cli,backend,restconf,netconf)
...
* For preparation for authorization RFC8341
* Plugins add clixon_plugin_init() and api struct for function pointers, eg:
```
static const struct clixon_plugin_api api = {
"example",
clixon_plugin_init,
...
}
clixon_plugin_api *clixon_plugin_init(clicon_handle h)
{
return (void*)&api;
}
```
* Moved specific plugin functions from apps/ to generic functions in lib/
* New generic plugin load function: clixon_plugins_load()
* Removed client-local netconf plugins netconf_plugin_callbacks()
* This was code used before generic YANG rpc calls
* Added username to clixon handle:
* clicon_username_get() / clicon_username_set()
* Added authentication plugin callback
* Removed some obscure plugin code that seem not to be used (please report if needed!)
* CLI parse hook
* CLICON_FIND_PLUGIN
* clicon_valcb()
* Removed username to rpc calls (added below)
2018-04-02 10:38:53 +02:00
Olof hagsand
835674bbe0
\r\n in restconf code and tests
2018-03-22 21:33:41 +01:00
Olof hagsand
efa72e9e6f
* Proper RFC 6241 Netconf error handling
...
* New functions added in clixon_netconf_lib.[ch]
* Datastore code modified for RFC 6241
* Remaining: validate, generic restconf and netconf code
2018-03-18 18:06:02 +00:00
Olof hagsand
03be9c0567
Restconf error handling
2018-03-11 22:49:10 +01:00
Olof hagsand
990700b68d
https://github.com/clicon/clixon/issues/16
...
Added restconf/operations get, see RFC8040 Sec 3.3.2:
2018-03-04 21:24:38 +01:00
Olof hagsand
278f3de840
Adding username to all restconf backend calls
2018-02-13 09:17:32 +07:00
Olof hagsand
55010e7541
restconf credentials plugin
2018-02-09 12:18:39 +07:00
Olof hagsand
e40d785d5c
* Added a "user" parameter to plugin_credentials() restconf callback.
...
To enable authentication and in preparation for access control a la RFC 6536.
* yang string length "max" keyword set to MAXPATHLEN
2018-02-08 15:24:05 +07:00
Olof hagsand
26667b2c2f
Restconf: get well-known, top-level resource, yang library version, put whole datastore,
...
check for different keys in put lists.
2018-01-21 14:31: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
548ffd2da6
Disabled key-value datastore; Removed mandatory requirements for BACKEND, NETCONF, RESTCONF and CLI dirs
2017-11-19 18:04:23 +01:00
Olof Hagsand
2d9e4666eb
restconf dbg
2017-10-08 19:44:00 +02:00
Olof hagsand
5cea5fa768
xml config default; api_path_fmt2api_path cleanup
2017-10-03 22:41:12 +02:00
Olof hagsand
265ed859de
mem leak
2017-08-01 19:39:19 +02:00
Olof hagsand
fd91bb2933
restconf RPC
2017-07-30 16:16:10 +02:00
Olof hagsand
5ae1aeb427
Added support for YANG anyxml; Yang union CLI generation and validation; Removed yang string escaping
2017-07-27 11:54:28 +02:00
Olof hagsand
3453dae0db
- removed api_path extension from internal netconf
...
- Strings in xmldb_put not properly encoded, eg eth/0 became eth.00000
2017-05-30 21:57:06 +02:00
Olof hagsand
f6b3e95100
Created xmldb plugin api
2017-04-09 22:53:48 +02:00
Olof hagsand
31c45e5c62
removed cli single callback arg code
2017-04-06 10:26:10 +02:00
Olof hagsand
c59869a44e
Alternative yang spec option -y added to all applications
2017-04-04 21:37:42 +02:00
Olof hagsand
236b661e43
cleaned up string functions
2017-04-04 17:11:21 +02:00
Olof hagsand
19813a4d9c
restconf post/put/head/patch, memtests
2017-03-26 15:14:37 +02:00
Olof hagsand
2fcefda831
Change internal protocol from clicon_proto.h to netconf.
2017-03-25 11:10:50 +01:00
Olof hagsand
4461cc9598
Netconf startup configuration support. Set CLICON_USE_STARTUP_CONFIG to 1 to
...
enable. Eg, if backend_main is started with -CIr startup will be copied to
running.
Added .. as valid step in xpath
2017-02-10 11:54:34 +01:00
Olof hagsand
7f0b9909b3
Library functions in clixon_cli_api.h (e.g cli_commit) is rewritten in new
...
for (eg cli_commitv). See clixon_cli_api.h for new names.
Use restconf format for internal xmldb keys. Eg /a/b=3,4
Changed example to use multiple cli callbacks
2017-01-31 22:36:14 +01:00
Olof hagsand
bc2b606167
dual license
2016-12-30 16:14:48 +01:00
Olof Hagsand
5c938febf4
xpath multiple match, int main, etc
2016-11-17 21:25:49 +01:00
Olof Hagsand
303f4a35a8
json escape etc
2016-10-06 20:58:41 +02:00
Olof Hagsand
3443dbd33f
restconf plugins and figthing with xml->json translation
2016-09-26 21:44:17 +02:00
Olof hagsand
64f197cb00
restconf plugins
2016-09-23 12:36:40 +02:00
Olof hagsand
b82a8bae26
better json printing
2016-09-22 16:57:26 +02:00
Olof Hagsand
fe91ba707d
json print revert
2016-09-21 21:24:39 +02:00
Olof hagsand
b744a4ad8a
restconf; xmlput extended with api_path; xmldb_put_tree
2016-09-20 21:51:08 +02:00
Olof hagsand
9552aeebbb
restconf get working alpha
2016-08-21 19:12:10 +02:00
Olof hagsand
0356b2225f
experimental restconf
2016-05-20 18:33:48 +02:00