Commit graph

  • 764e9c628c Added checks of changed handlers or blocked signal after plugin function calls Olof hagsand 2021-10-19 16:42:34 +02:00
  • 4ac1f0bad0
    Implementation of OpenConfig path compression. Kristofer Hallin 2021-10-15 13:55:31 +02:00
  • 2f56357adb
    Added enum OC_COMPRESS to Clixon yang. Kristofer Hallin 2021-10-15 13:54:44 +02:00
  • aeff754110
    Added tests for OpenConfig compress. Kristofer Hallin 2021-10-15 13:46:38 +02:00
  • a242cf47bd Pagination callback modifications: ensure xml is bound to yang, removed code not used (eg remaining) and avoiding an extra xpath_vec call. Moved debug prints from plugin-callback-one to plugin-callback-all Fixed memory error in data-cvec access function Olof hagsand 2021-10-14 13:14:10 +02:00
  • 2bfb02de64 Typo: forgot clixon_util_dispatcher.c Olof hagsand 2021-10-14 09:14:12 +02:00
  • 93d1149925 Dispatcher test additions Olof hagsand 2021-10-14 08:58:35 +02:00
  • d2d3454177 Dispatcher: modified key handling and added print function also added dispatcher utility and test functions Olof hagsand 2021-10-13 21:03:59 +02:00
  • e0ea85d6d5 Configure: changed --with-restconf= to say fcgi is NOT default test_openconfig: Fixed upgrade of git added new dependencies (openconfig-platform) Olof hagsand 2021-10-13 10:00:15 +02:00
  • daf37f6ad7 Fixed: [Doxygen - Typo in Input #275](https://github.com/clicon/clixon/issues/275) Olof hagsand 2021-10-12 15:26:38 +02:00
  • a74fbdecdb Dispatcher fixes: user callback arg, changing handler to NULL Olof hagsand 2021-10-12 14:45:10 +02:00
  • fccf315235 Added .editorconfig, added licensing section to CONTRIB Olof hagsand 2021-10-12 13:35:21 +02:00
  • 5dd876e86f Clixon data access functions use the generic ptr api Olof hagsand 2021-10-11 10:57:28 +02:00
  • 8469664075 Updated contribution and statedata callback docs Olof hagsand 2021-10-10 18:48:10 +02:00
  • 8ede8a87b2 Moved fuzz dir to test/fuzz Extended contributing document to testing and licensing Olof hagsand 2021-10-10 18:03:33 +02:00
  • edbbb43e1f Removed remaining and replaced pagination-mode with locked parameter Dispatcher: Added dispatcher_free(), fixed mem-leaks and malloc return checks Olof hagsand 2021-10-09 15:50:13 +02:00
  • ce06f25be7 Merge branch dispatcher and broke out pagination callbacks to use it Olof hagsand 2021-10-07 09:17:25 +02:00
  • 3459e6a34f Merge branch 'master' of https://github.com/dcornejo/clixon into dcornejo-master Olof hagsand 2021-10-07 09:17:11 +02:00
  • 7631c3f0a3 coverage: added tests for all ints Olof hagsand 2021-10-06 08:36:34 +02:00
  • 26d37352f4 NETCONF hello error handling, changed YANG PATCH enabling, refactored static linking Olof hagsand 2021-10-05 11:34:09 +02:00
  • 8f55b8490d Refactored Makefile for static linking, removed netconf soap encoding Olof hagsand 2021-10-04 10:44:14 +02:00
  • 42e61f461c - Memleaks in xpath parse error - Static linkage cli fix (worked in 5.3.0 but restructuring broke it) - Renamed all cligen_ph_active_get to cligen_pt_active_get - Added AFL deferred init - test_install.sh for static .a suffix Olof hagsand 2021-10-03 18:33:06 +02:00
  • d175720b7e Cleaned up Makefiles, especially LINKAGE=static vs dynamic Added LIBSTATIC_SUFFIX instead of hardcoded .a Changed building of build.c not to be triggered by install Olof hagsand 2021-09-30 21:36:36 +02:00
  • 3ec0c42959
    Merge pull request #271 from s-bauer/s-bauer-patch-4 Olof Hagsand 2021-09-30 16:30:20 +02:00
  • 820e2f0837
    Merge pull request #270 from s-bauer/patch-3 Olof Hagsand 2021-09-30 16:25:21 +02:00
  • 499e3f862a
    Merge pull request #269 from s-bauer/s-bauer-patch-2 Olof Hagsand 2021-09-30 16:24:44 +02:00
  • 5f741ce978
    Merge pull request #267 from s-bauer/s-bauer-patch-1 Olof Hagsand 2021-09-30 16:20:41 +02:00
  • 648b3f41f2 Make ready for clixon 5.4.0 development Olof hagsand 2021-09-30 16:16:00 +02:00
  • f65c90f151 Regenerated configure script Simon Bauer 2021-09-30 12:25:25 +00:00
  • c0bbe607ed Added --without-sigaction option Simon Bauer 2021-09-30 11:56:38 +00:00
  • 1d2114cbe0
    Updated warnroot and checkroot Commands Simon Bauer 2021-09-30 13:08:46 +02:00
  • dc85b220a5
    Fixed CFLags for debug mode Simon Bauer 2021-09-30 12:53:03 +02:00
  • bdda35d95b
    Fixed SH_SUFFIX Simon Bauer 2021-09-30 10:37:19 +02:00
  • 9b6bb3ecbf - Added transaction_arg_set() - Modifed coverage script Olof hagsand 2021-09-27 16:31:21 +02:00
  • 51278d5901 Fixed static linking for coverage and fuzzing Preparations for Clixon 5.3 release Olof hagsand 2021-09-27 12:23:34 +02:00
  • 5a875e3152 Fix some LINKAGE=static compile issues: - Makefile circularity by fixing .so suffix - simplify example/main Makefile Olof hagsand 2021-09-26 11:06:41 +02:00
  • c00162aec1 - Modified linkage constant in makefile to test for dynamic only - CLIXON_STATIC_PLUGIN to support statically linked plugins - Added -H option to clixon_netconf: Do not require hello before request Olof hagsand 2021-09-25 16:25:41 +02:00
  • b70e22096e - Pagination: enabled LIST_PAGINATION and remobved constant - Changed logic on how to find clixon_restconf in pseudo plugin - Removed ==== in constants to avoid conflict with git merge - Remove assert - Added fuzzing for netconf Olof hagsand 2021-09-23 13:22:40 +02:00
  • 47141089c2 - Added netconf to fuzz - Restconf internal start more robust - Restconf fcgi fix Olof hagsand 2021-09-22 09:43:07 +02:00
  • 55377786c1 Fix tests for http/1 and http/2 only respectively Olof hagsand 2021-09-21 21:23:33 +02:00
  • a7a699a8b5 New state plugin callback for pagination. * You need to change all statedata plugin callback for the new pagination feature * If you dont use pagination you can ignore the values of the new parameters * See [User manual pagination](https://clixon-docs.readthedocs.io/en/latest/misc.html#pagination) * The updated callback signature is as follows: `` int statedata(clicon_handle h, cvec *nsc, char *xpath, pagination_mode_t pagmode, // NEW uint32_t offset, // NEW uint32_t limit, // NEW uint32_t *remaining, // NEW cxobj *xstate) `` Olof hagsand 2021-09-21 15:02:46 +02:00
  • 384ce70d7c memory leak and nacm recovery test fix Olof hagsand 2021-09-21 13:24:34 +02:00
  • d23153e25a Removed ietf-origin and ietf-netconf-with-defaults YANGS Olof hagsand 2021-09-08 13:32:45 +02:00
  • ff3f600920 Renamed paging to pagination Olof hagsand 2021-09-08 11:50:07 +02:00
  • 60193cca0d - Add remaining argument to state callback Olof hagsand 2021-09-06 12:31:34 +02:00
  • 6e316b519b - Refactoring of get_common/get_list_pagination with two sub-functions - Fixed memory leak Olof hagsand 2021-09-05 12:04:07 +02:00
  • caabfd464e * New state callback signature (ca_statedata2) * The new callback contains parameters for paging * Goal is to replace ca_statedata callback * New plugin callback when lock/unlock occurs * Add ca_lockdb tro plugin init to use it. * Fixed: Typing 'q' in CLI more paging did not properly quit output * Output continued but was not shown, for a very large file this could cause considerable delay * Fixed: Lock was broken in first get get access * if the first netconf operation to a backend was lock;get;unlock, the lock was broken in the first get access. Olof hagsand 2021-09-04 11:35:27 +02:00
  • aaf9a89183 - Added an extended state plugin callback: ca_statedata2 with offset and limit parameters - Fixed memory errors Olof hagsand 2021-09-02 12:35:48 +02:00
  • 28f58fb7d6 - Fixed list pagination for CLI Olof hagsand 2021-08-31 17:25:54 +02:00
  • a046306270 - New netconf-specific uint32 parse functions - Added failure handling to xpath traverse_canonical - Started pagination cli code Olof hagsand 2021-08-30 14:43:24 +02:00
  • 390b0886ed - pageing offset working Olof hagsand 2021-08-27 14:22:47 +02:00
  • fb0b9409f3 - Moved restrconf code from pageing rpc to get Olof hagsand 2021-08-24 17:35:18 +02:00
  • c9843b34a6 - Rewrite of netconf get/get-config code - Unified get and get-config code to single function get_common - Integrated list-pagination code - Moved get code to new files backend_get.[ch] Olof hagsand 2021-08-22 12:41:45 +02:00
  • b03cf426a4 * Protyped netconf native pagination Olof hagsand 2021-08-19 13:37:45 +02:00
  • 6bf3112fe7 * JSON encoding of YANG metadata according to RFC 7952 * XML -> JSON translation Olof hagsand 2021-08-17 15:15:37 +02:00
  • 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 Olof hagsand 2021-08-05 18:08:32 +02:00
  • 0c7f2043f3 * Pagination according to new draft * count/skip -> limit/offset * ietf-yang-metadata RFC 7952 support, placeholder parsing and extension Olof hagsand 2021-07-27 21:36:47 +02:00
  • 77bacc93bb - Updated code to clixon 5.2 status - Added LIST_PAGINATION clixon_custom constant - Fix: leafs added as augments on rpc input/output lacked cv:s Olof hagsand 2021-07-21 14:40:58 +02:00
  • 2485bec483 fixes for compilation Olof hagsand 2021-07-11 20:35:57 +02:00
  • ba835346a5 cli-pagination Olof hagsand 2020-12-29 14:06:19 +01:00
  • 2b5dceb82c cli pagination Olof hagsand 2020-11-24 13:14:21 +01:00
  • 8e266dd136 skip+count Olof hagsand 2020-11-09 11:54:23 +01:00
  • 8008fa01b7 Pagination draft Olof hagsand 2020-11-05 15:26:11 +01:00
  • c4b1051b1f * Changed first parameter from int fd to FILE *f in the following functions: * clixon_xml_parse_file(), clixon_json_parse_file(), yang_parse_file() * See [Bytewise read() of files is slow #146](https://github.com/clicon/clixon/issues/146) Olof hagsand 2020-11-04 22:17:41 +01:00
  • acc6a0fec7 First working prototype Olof hagsand 2020-10-27 09:20:30 +01:00
  • 78f5a6983c Pagination draft Olof hagsand 2020-11-05 15:26:11 +01:00
  • ab0bc0ea4b * Changed first parameter from int fd to FILE *f in the following functions: * clixon_xml_parse_file(), clixon_json_parse_file(), yang_parse_file() * See [Bytewise read() of files is slow #146](https://github.com/clicon/clixon/issues/146) Olof hagsand 2020-11-04 22:17:41 +01:00
  • 2e857bb417 First working prototype Olof hagsand 2020-10-27 09:20:30 +01:00
  • 6b357dc038 * Partly Fixed: [String concatenation in YANG model leads to syntax error](https://github.com/clicon/clixon/issues/265) * In this case, eg "uses", single quotes can now be used, but not qstring + qstring in this case Olof hagsand 2021-09-20 22:54:14 +02:00
  • 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 Olof hagsand 2021-09-20 20:30:56 +02:00
  • 3cd3f7987d - Cannot reproduce https://github.com/clicon/clixon/issues/245, added sanity chaeck and regression test Olof hagsand 2021-09-09 14:01:48 +02:00
  • ca14879e8c - Fixed: [Duplicate lines emitted by cli_show_config (cli output style) when yang list element has composite key](https://github.com/clicon/clixon/issues/258) Olof hagsand 2021-09-09 13:33:51 +02:00
  • d1ed4ecd7d - Refactor yang patch code according to Clixon coding style - Fixed all memory leaks Olof hagsand 2021-09-08 10:36:48 +02:00
  • 3344adb487 initial import of dispatcher Dave Cornejo 2021-09-07 08:26:01 -10:00
  • e3d0566d3c - CLICON_RESTCONF_HTTP2_PLAIN set to default false Olof hagsand 2021-08-27 15:10:14 +02:00
  • 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 Olof hagsand 2021-08-27 15:10:14 +02:00
  • cdacca125c Native restconf: SSL client certs failures are returned as http 405 errors, not fail during SSL negotiation Olof hagsand 2021-08-27 09:33:59 +02:00
  • 7794c619cc test: curl error codes in github/actions Olof hagsand 2021-08-26 18:45:12 +02:00
  • ef4d082f4b * Restconf native HTTP/2: * Added option CLICON_RESTCONF_HTTP2_PLAIN * if disabled non-tls HTTP/2 is disabled: both direct and upgrade Olof hagsand 2021-08-26 16:58:52 +02:00
  • 562320dcbc * Fixed: [JSON leaf-list output single element leaf-list does not use array](https://github.com/clicon/clixon/issues/261) Olof hagsand 2021-08-24 17:08:31 +02:00
  • 9fce0a1214 - IPC socket: add REUSEADDR when using IP (remove comment) - Test: remove variable to use backend restconf, since that is the only option - Docs C-style: describe return values better Olof hagsand 2021-08-24 13:46:47 +02:00
  • 6e0e45aab7 * Fixed: Some native restconf error messages did not end with \r\n. * Specifically the error when sending http request on https. Olof hagsand 2021-08-20 15:41:40 +02:00
  • c35ca82083 * Fixed: Netconf diff callback did not work with choice and same value replace * Eg if YANG is choice c { leaf x; leaf y } and XML changed from <x>42</x> to <y>42</y> the datastrore changed, but was not detected by diff algorithms and provided to validate callbacks. * Thanks: Alexander Skorichenko, Netgate Olof hagsand 2021-08-17 16:51:08 +02:00
  • 8352e25860 * Restconf internal start: fail early if clixon_restconf binary is not found * If CLICON_BACKEND_RESTCONF_PROCESS is true Olof hagsand 2021-08-17 10:08:04 +02:00
  • 980718178a * YANG Leafref feature update * Closer adherence to RFC 7950. Some of this is changed behavior, some is new feature. * Essentially instead of looking at the referring leaf, context is referred(target) node * Validation uses referred node * Validation changed to use type of referred node, instead of just "string" * Auto-cli * Changed to use type of referred node for typecheck * Completion uses referred node * Required instance / less strict validation * New: Leafrefs must refer to existing data leaf ONLY IF YANG required-instance is true * Previous: All leafrefs must refer to existing data leaf node * Fixed: [Autocli does not offer completions for leafref to identityref #254](https://github.com/clicon/clixon/issues/254) Olof hagsand 2021-08-16 13:57:51 +02:00
  • 8db716ca07 - Moved yang patch code to new files restconf_methods_patch.[ch] - Started modifying patch code to style guidelines - Made patch test independent of example - Added developers style guidelines Olof hagsand 2021-08-15 20:38:45 +02:00
  • 629757d1fd Merge branch 'alanyanigersiklu-yang-patch-test' Olof hagsand 2021-08-15 17:11:48 +02:00
  • 89ca5ac154 Merge branch 'yang-patch-test' of https://github.com/alanyanigersiklu/clixon into alanyanigersiklu-yang-patch-test Olof hagsand 2021-08-15 17:09:39 +02:00
  • bf14df3c40
    Merge pull request #257 from PlushBeaver/diff-path Olof Hagsand 2021-08-15 17:08:44 +02:00
  • 18170fabbc Merge branch 'yang-patch-test' of github.com:alanyanigersiklu/clixon into yang-patch-test Alan Yaniger 2021-08-14 21:22:03 +03:00
  • 2f9485800b Added test for YANG patch with XML media Alan Yaniger 2021-08-14 21:21:09 +03:00
  • 56bfd9c36f Remove hardcoded path to diff binary Dmitry Kozlyuk 2021-08-13 11:25:27 +03:00
  • c2c0a6210a re-add CLICON_RESTCONF_INSTALLDIR Olof hagsand 2021-08-12 21:20:31 +02:00
  • 95a3664882
    Merge branch 'master' into yang-patch-test alanyanigersiklu 2021-08-12 21:06:57 +03:00
  • 8f110331d5 Add tests for yang patch Alan Yaniger 2021-08-12 21:01:48 +03:00
  • bd8cbbc393 Merge branch 'alanyanigersiklu-yang-patch-alanfork' Olof hagsand 2021-08-10 19:50:27 +02:00
  • 8fafe4a67e revert main example Olof hagsand 2021-08-10 19:47:46 +02:00
  • e780ed963b * Fixed: [clixon_netconf errors on client XML Declaration with valid encoding spec](https://github.com/clicon/clixon/issues/250) Olof hagsand 2021-08-05 21:44:52 +02:00
  • b200361620 Testing dependency fixes, Netconf XML declaration and filter logic fix Phil Heller 2021-07-29 21:07:15 -06:00
  • 26a8cfcedb Removed default of CLICON_RESTCONF_INSTALLDIR * The default behaviour is changed to use the config $(sbindir) to locate clixon_restconf when starting restconf internally Olof hagsand 2021-07-27 10:53:47 +02:00