diff --git a/CHANGELOG.md b/CHANGELOG.md index 30851305..48d42933 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,17 +1,23 @@ # Clixon Changelog -## 4.3.1 (2 February 2020) - -Patch release based on testing by Dave Cornejo, Netgate +## 4.3.2 (Upcoming) ### API changes on existing features (you may need to change your code) * Session-id CLI functionality delayed: "lazy evaluation" * C-api: Changed `clicon_session_id_get(clicon_handle h, uint32_t *id)` * From a cli perspective this is a revert to 4.1 behaviour, where the cli does not immediately exit on start if the backend is not running, but with the new session-id function - + ### Corrected Bugs +* Fixed: Enabling modstate (CLICON_XMLDB_MODSTATE), changing a revision on a yang, and restarting made the backend daemon exit at start (thanks Matt). + * Also: ensure to load `ietf-yang-library.yang ` if CLICON_XMLDB_MODSTATE is set * Fixed: Pretty-printed XML using prefixes not parsed correctly. * eg ` ` could lead to errors, wheras (` `) works fine. + +## 4.3.1 (2 February 2020) + +Patch release based on testing by Dave Cornejo, Netgate + +### Corrected Bugs * XML namespace merge bug fixed. Example: two xmlns attributes could both survive a merge whereas one should replace the other. * Compile option `VALIDATE_STATE_XML` introduced in `include/custom.h` to control whether code for state data validation is compiled or not. * Fixed: Validation of user state data led to wrong validation, if state relied on config data, eg leafref/must/when etc. diff --git a/apps/backend/backend_main.c b/apps/backend/backend_main.c index 42820090..15f69092 100644 --- a/apps/backend/backend_main.c +++ b/apps/backend/backend_main.c @@ -745,6 +745,10 @@ main(int argc, if (clicon_option_bool(h, "CLICON_STREAM_DISCOVERY_RFC5277") && yang_spec_parse_module(h, "clixon-rfc5277", NULL, yspec)< 0) goto done; + /* Load yang YANG module state */ + if (clicon_option_bool(h, "CLICON_XMLDB_MODSTATE") && + yang_spec_parse_module(h, "ietf-yang-library", NULL, yspec)< 0) + goto done; /* Here all modules are loaded * Compute and set canonical namespace context */ diff --git a/lib/src/clixon_plugin.c b/lib/src/clixon_plugin.c index 3541d0a1..8bfdefd8 100644 --- a/lib/src/clixon_plugin.c +++ b/lib/src/clixon_plugin.c @@ -716,7 +716,7 @@ upgrade_callback_call(clicon_handle h, int ret; if (upgrade_cb_list == NULL) - return 0; + return 1; uc = upgrade_cb_list; do { /* For matching an upgrade callback: