Commit graph

  • c7aed5e7a7 er image build and changed it to build a single clixon docker\ image which can be found at olofhagsand/clixon Olof Hagsand 2018-07-21 13:55:21 +00:00
  • deb89600ed memleaks Olof hagsand 2018-07-20 23:16:26 +02:00
  • b894c30bfb obsoleted xpath_each Olof Hagsand 2018-07-20 15:52:32 +00:00
  • e79e48b46f xpath unitialized vecs Olof Hagsand 2018-07-20 10:02:35 +00:00
  • 912d1df853 Merge branch 'develop' of https://github.com/clicon/clixon into develop Olof hagsand 2018-07-20 10:54:07 +02:00
  • 226c59f25a Backward compatible XPATH via symbols, not macros Olof hagsand 2018-07-20 10:51:12 +02:00
  • 9245ef222a util warnings Olof Hagsand 2018-07-19 08:03:07 +00:00
  • c71791f168 Added util directory containing test applications Olof hagsand 2018-07-19 09:57:38 +02:00
  • cc6c7ae7a4 started min/max-element Olof hagsand 2018-07-18 21:45:13 +02:00
  • 0eb9e6c8b2 * Support for YANG conditionals "must" and "when" according to RFC 7950 Sec 7.5.3 and 7.21.5 * XPATH checked at validation time Olof hagsand 2018-07-18 09:51:33 +02:00
  • ba7f84afee * Much better support for XPATH 1.0 according to https://www.w3.org/TR/xpath-10 using yacc/lex * NOTE: Due to an error in the previous implementation, all XPATH calls on the form x[a=str] where str is a string (not a number or XML symbol), must be changed to: x[a='str'] or x[a="str"] * This includes all calls to xpath_vec, xpath_first, etc. * All calls to cli_copy_config in CLI spec files must replace 2nd argument from x[%s=%s] to x[%s='%s'] * The old API is stillenabled. To define the new, define XPATH_USE_NEW in include/clixon_custom.h and recompile Olof hagsand 2018-07-17 16:59:32 +02:00
  • 5d7c4a8d18 Merge branch 'develop' of https://github.com/clicon/clixon into develop Olof hagsand 2018-07-16 16:18:36 +02:00
  • bf728b37b8 * Full support of XPATH 1.0 according to https://www.w3.org/TR/xpath-10 using yacc/lex * The previous XPATH imlementation was very restricted. * The only function implemented is the Yang extension "current()". No other functions are implemented (eg last(), count()). Olof hagsand 2018-07-16 16:13:31 +02:00
  • 0c5ef826d2 clicon group in example clarification Olof hagsand 2018-07-13 16:58:19 +02:00
  • d61f86c1e0 restconf www-data group membership clarification Olof hagsand 2018-07-13 16:51:51 +02:00
  • 719ea93398 Conformance to RFC-8040 operations where prefix was used instead of module name. * Proper specification for an operation is POST /restconf/operations/<module_name>:<rpc_procedure> HTTP/1.1 * See https://github.com/clicon/clixon/issues/31, https://github.com/clicon/clixon/pull/32 and https://github.com/clicon/clixon/issues/30 * Thanks David Cornejo and Dmitry Vakhrushev of Netgate for pointing this out Olof hagsand 2018-07-13 16:31:39 +02:00
  • fd19640579 Added systemd example files under example/systemd Olof hagsand 2018-07-13 13:13:11 +02:00
  • ee946a00f5 Changed plugin_init() backend return semantics: If returns NULL, _without_ calling clicon_err(), the module is disabled. Also, example documentation corrected according to: https://github.com/clicon/clixon/issues/33 Olof hagsand 2018-07-13 12:44:59 +02:00
  • 60ce7b12bd * Prefix of rpc was ignored * https://github.com/clicon/clixon/issues/30 Olof hagsand 2018-06-20 20:53:34 +02:00
  • 578a96eff7 Jenkinsfile sudo Olof hagsand 2018-06-17 23:12:39 +02:00
  • 5304acb086 remove xml x_cv; added makes to jenkinsfile Olof hagsand 2018-06-17 23:09:36 +02:00
  • 5a8660afb6 removed void ptr debug print Olof Hagsand 2018-06-17 18:02:54 +00:00
  • a0d4569488 64-bit vars Olof Hagsand 2018-06-17 17:58:59 +00:00
  • 85c4782e36 Dedicated xml,json,yang and xsl parser utility programs added Sanity check of stdarg (...) added Cleanup of error messages. Olof hagsand 2018-06-17 19:40:06 +02:00
  • 1306174071 Jenkins pipeline file Olof hagsand 2018-06-14 20:20:21 +02:00
  • 9eff879458 CDATA Encode and decode (parsing) support Olof hagsand 2018-06-13 22:55:46 +02:00
  • 8b31d83806 CDATA xml support (patch by David Cornejo, Netgate) Olof hagsand 2018-06-13 21:46:32 +02:00
  • 5e587b3a01 Validation of yang bits type space-separated list value Olof hagsand 2018-06-10 10:41:06 +02:00
  • a576951e57 Add validation of yang bits value Olof hagsand 2018-06-10 10:32:20 +02:00
  • dacd2fe3a0 replace obsolete cvec_find_var with cvec_find Olof hagsand 2018-06-08 15:54:43 +02:00
  • ff5f93ac1e tag all netconf msg with username Olof hagsand 2018-06-08 13:23:43 +02:00
  • e2ee6e6757 handle newlines in CDATA properly Dave Cornejo 2018-06-07 17:56:07 -10:00
  • 8f9a38d2aa add handling of CDATA to XML parser Dave Cornejo 2018-06-07 13:26:18 -10:00
  • 5cabc11bfb * Added -U <user> command line to clixon_cli and clixon_netconf for NACM pseudo-user tests Olof hagsand 2018-06-07 21:34:52 +02:00
  • de69b253dc check null ptr Olof Hagsand 2018-06-07 21:10:01 +02:00
  • c5991c9844 * Added a generated CLI show command that works on the generated parse tree with auto completion. * A typical call is: show @datamodel:example, cli_show_auto("candidate", "json"); * The example contains a more elaborate example. * Thanks ngashok for request, see https://github.com/clicon/clixon/issues/24 Olof hagsand 2018-06-05 16:45:43 +02:00
  • 0ad6703663 xmlns sanity check Olof hagsand 2018-06-05 16:43:43 +02:00
  • 849e46191e * Added xmlns validation * for eg <a xmlns:x="uri"><x:b/></a> Olof hagsand 2018-06-05 09:42:11 +02:00
  • 39538461c2 dont exit cli when expand gets auth denied from backend Olof hagsand 2018-06-03 20:18:43 +02:00
  • 7e4e1d6deb * Support for YANG identity and identityref according to RFC 7950 Sec 7.18 and 9.10 * Previous support did no validation of values. * Validation of types and CLI expansion * Example extended with inclusion of iana-if-type RFC 7224 interface identities Olof hagsand 2018-06-03 15:36:05 +02:00
  • ea13727e97 * Removed cli callback vector functions. Set COMPAT_COMPAT_CLIV if you need to keep these functions in clixon_custom.h. * Added --enable-debug. Olof hagsand 2018-05-30 22:38:12 +02:00
  • c8733e5ed8 Merge branch 'develop' of https://github.com/clicon/clixon into develop Olof hagsand 2018-05-29 22:44:49 +02:00
  • 5bc39a9bc0 from 3.6.1: * https://github.com/clicon/clixon/issues/23 clixon_cli failing with error * The example included a reference to nacm yang file which did not exist and was not used * Added clixon-config@2018-04-30.yang Olof hagsand 2018-05-29 22:27:41 +02:00
  • 8b7cabeb36 * https://github.com/clicon/clixon/issues/23 clixon_cli failing with error * The example included a reference to nacm yang file which did not exist and was not used * Added clixon-config@2018-04-30.yang Olof hagsand 2018-05-29 22:03:23 +02:00
  • cfe4702069 * Added cligen variable translation. * See FAQ and example Olof hagsand 2018-05-28 22:50:22 +02:00
  • 0622f6aafe xml/xsl test programs Olof Hagsand 2018-05-27 18:31:19 +00:00
  • b230215eaf unit test pgm Olof hagsand 2018-05-19 00:27:53 +02:00
  • 958c1c0197 Merge branch 'develop' of https://github.com/clicon/clixon into develop Olof Hagsand 2018-05-18 22:17:40 +00:00
  • a14c8c9778 unit test Olof Hagsand 2018-05-18 22:17:09 +00:00
  • 353f2e6038 added merge of json trees Olof Hagsand 2018-05-15 22:24:44 +02:00
  • 20a677cb6c code cleanup and doc Olof Hagsand 2018-05-12 19:00:46 +02:00
  • 82351afde3 header docs Olof Hagsand 2018-05-08 21:53:46 +02:00
  • 4257999df5 Fixed JSON unbalanced braces resultin assert Olof hagsand 2018-05-06 21:06:52 +02:00
  • 697c021d49 Starting 3.7.0 branch Olof hagsand 2018-05-06 20:55:38 +02:00
  • c439c97dbc Merge branch 'master' into develop Olof hagsand 2018-05-06 20:53:41 +02:00
  • 15ec033f6c 3.6.0 Olof hagsand 2018-04-30 19:06:37 +02:00
  • 2469978ac9 Merge branch 'develop' Olof hagsand 2018-04-30 19:02:52 +02:00
  • 5d4abbff38 Merge branch 'develop' of https://github.com/clicon/clixon into develop Olof Hagsand 2018-04-30 18:57:50 +02:00
  • 7532fdde77 * INSTALLFLAGS added with default value -s(strip). * For debug do: CFLAGS=-g INSTALLFLAGS= ./configure Olof hagsand 2018-04-30 12:06:19 +02:00
  • 1ac57dedaf Some memleaks and last minute 3.6 release changes. Olof hagsand 2018-04-29 18:35:06 +02:00
  • 3df4a8a190 Added keyword arg to find schemanode functions Olof Hagsand 2018-04-27 19:15:11 +02:00
  • aa2ada1f5c
    Merge pull request #21 from rbgarga/fix_install_lib Olof Hagsand 2018-04-26 23:10:33 +02:00
  • 680753a5e2 Improve permissions and strip binaries (part 2) Renato Botelho do Couto 2018-04-25 13:56:25 -05:00
  • d57a6cf53c * plugin_start() callbacks added for restconf * Hard-wired users for authentication example Olof hagsand 2018-04-24 17:43:19 +02:00
  • 602f5034b4 NACM external file support. CLICON_NACM_FILE config option, if CLICON_NACM_MODE is external Olof hagsand 2018-04-23 23:09:55 +02:00
  • d032dbe1cb
    Merge pull request #20 from dcornejo/develop Olof Hagsand 2018-04-23 21:39:51 +02:00
  • d624cf7513
    Merge pull request #19 from rbgarga/improve_makefile Olof Hagsand 2018-04-23 21:32:54 +02:00
  • 513df9b19d include limits.h for non-Linux compatibility Dave Cornejo 2018-04-23 08:49:45 -10:00
  • dabf0e5918 Improve permissions and strip binaries Renato Botelho do Couto 2018-04-23 13:28:08 -05:00
  • 50522df3d9 Showing syntax using CLI commands was broekn and is fixed. Olof hagsand 2018-04-22 21:36:55 +02:00
  • 1913407e52 Replacing remaining badrequest() with proper restconf error msg. Olof hagsand 2018-04-22 20:13:54 +02:00
  • 3ed1c98556 * Fixed issue https://github.com/clicon/clixon/issues/18 RPC response issues reported by Stephen Jones at Netgate Olof hagsand 2018-04-22 16:53:12 +02:00
  • 67c0abead7 Fixed issue https://github.com/clicon/clixon/issues/17 special character in strings can break RPCs Olof hagsand 2018-04-21 16:32:46 +02:00
  • 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 Olof hagsand 2018-04-19 22:44:15 +02:00
  • 04a3f4db1b Merge branch 'develop' of https://github.com/clicon/clixon into develop Olof Hagsand 2018-04-15 10:53:12 +01:00
  • b2abab71f0 local restconf rpc callback sent error and then main restconf handler sent ok. Callback should just return xml buffer, not do actual restconf callback Olof Hagsand 2018-04-15 10:52:52 +01:00
  • ea792a7850 CHANGELOG typos Olof hagsand 2018-04-09 06:27:15 +02:00
  • 24de61f14a Ignore \r - common http/restconf end-of-line Olof Hagsand 2018-04-09 04:24:22 +00:00
  • a2e9a05902 mv api_return_err to restconf_lib.c Olof Hagsand 2018-04-08 16:07:24 +00:00
  • 0907574acf renamed plugin_find/each to clixon_plugin_find/each Olof Hagsand 2018-04-08 14:10:06 +00:00
  • 2e00411621 CLI plugin API restructuring completed. Now all plugin APIs have the generic form documented in README and FAQ. Olof hagsand 2018-04-08 11:32:43 +02:00
  • afb6aa31db Cleaned up apps/* Makefile.in:s Olof hagsand 2018-04-07 19:04:56 +02:00
  • 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. Olof hagsand 2018-04-07 18:20:33 +02:00
  • 7a4371e76f debug function Olof Hagsand 2018-04-07 08:09:55 +00:00
  • 843b6abbcb plugin API remake Olof Hagsand 2018-04-04 09:51:47 +00:00
  • b9a54f07f3 Restructure and more generic plugin API for backend Olof hagsand 2018-04-02 19:27:57 +02:00
  • 7fbd95d491 Updated ietf-netconf-acm to ietf-netconf-acm@2018-02-14.yang from RFC 8341 Olof hagsand 2018-04-02 13:33:24 +02:00
  • 6ed769e082 The Clixon example has changed name from routing to example affecting all config files, plugins, tests, etc. Olof hagsand 2018-04-02 13:18:47 +02:00
  • 0e52e86c0f CHANGELOG formatting Olof hagsand 2018-04-02 11:15:24 +02:00
  • 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) Olof hagsand 2018-04-02 10:38:53 +02:00
  • b8e35742b9 README update Olof hagsand 2018-03-25 16:04:30 +02:00
  • bfce20c760 * Added Clixon Restconf library * Builds and installs a new restconf library: libclixon_restconf.so and clixon_restconf.h * The restconf library can be included by a restconf plugin. * Example code in example/Makefile.in and example/restconf_lib.c * Authorization * Example extended with authorization * Test added with http basic authorization (test/test_auth.sh) * Documentation in FAQ.md * README.md extended with new yang, netconf, restconf, datastore, and auth sections. Olof hagsand 2018-03-25 15:47:27 +02:00
  • cce76faa79 Fixed three-key list entry problem (reported by jdl@netgate) Olof hagsand 2018-03-24 14:37:36 +01:00
  • 835674bbe0 \r\n in restconf code and tests Olof hagsand 2018-03-22 21:33:41 +01:00
  • ba3ca7e07f added clixon_netconf_lib.h Olof hagsand 2018-03-20 18:39:24 +01:00
  • 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 Olof hagsand 2018-03-18 18:06:02 +00:00
  • 52e510cfdf The key-value datastore is no longer supported. Use the default text datastore. Olof hagsand 2018-03-18 16:57:18 +00:00
  • 9b951b5ce6 restconf json err return: too many {} Olof hagsand 2018-03-13 23:17:36 +00:00
  • 03be9c0567 Restconf error handling Olof hagsand 2018-03-11 22:49:10 +01:00
  • 96a3b586b8 Restconf error handling Olof hagsand 2018-03-11 20:25:31 +01:00