Releases: clicon/clixon
Clixon 7.6.0
7.6.0
21 November 2025
The Clixon 7.6 release supports the private candidate draft and also NETCONF compare in RFC 9144, along with several smaller feature updates.
Features
- New: NETCONF and RESTCONF Private candidate datastores
- New: Compare RPC as defined in RFC9144 and yang module ietf-nmda-compare
- XPath:
- Support
concatandnumberXPath function XPATH_FUNCTION_NYI_IGNOREcompile-time constant to ignore unimplemented XPath functions
- Support
- All internal session clients start with NETCONF hello
- Yang features
- Tolerate "@latest.yang" as yang filename.
- New: Implement YANG "augment" as sub-statement of a "uses" statement
- New
[email protected]revision- Added
netconf-framing-type
- Added
- New
[email protected]revision- Added option:
CLICON_NETCONF_MONITORING_GETSCHEMA_CDATAto encode schema content with CDATA - Added option:
CLICON_XMLDB_PRIVATE_CANDIDATEto enable private candidate
- Added option:
C/CLI-API changes on existing features
Developers may need to change their code
- Renamed
clicon_strsep()-->clixon_strsep1() - Changed signature of send hello function:
clixon_client_hello(s, d, v)->clixon_client_hello(s, d, base10, base11, privcand)
- Change int to size_t in
cxvec_append()and related functions and data-types- Calling types may need to be adjusted
- Modified and re-factor datastore API
- Use API instead of direct access of db-elemnt struct
- eg
de->de_xml-->xmldb_cache_get(de)
- eg
clicon_db_elmnt_get()->xmldb_find()clicon_db_elmnt_set()is replaced byxmldb_new()but needs some rewritexmldb_get_cache(h, db, yb, xp, md, xe)->xmldb_get_cache(h, db, xp, xe)- Use indirect access to candidate-db, eg
- Instead of :
candidate_commit(h, xe, "candidate",...) - do:
xmldb_find_create(h, "candidate", ce->ce_id, &de, &db); candidate_commit(h, xe, db,...) - Same for
candidate_validate()
- Instead of :
- Use API instead of direct access of db-elemnt struct
- Modified and refactor rpc_msg API:
- Replaced
clicon_msgparameter with cbuf:clicon_rpc_msg(h, msg,...)->clicon_rpc_msg(h, cb,...)clicon_rpc_msg_persistent(h, msg, ...)->clicon_rpc_msg(h, cb, ...)clicon_rpc(..., msg, &xret, eof)->clixon_rpc11(..., cb, &cbret, eof)
- Removed
struct clicon_msgandclicon_msg_encode():- Replace:
struct clicon_msg *msg=clicon_msg_encode(..., cbuf_get(cb)); clicon_rpc_msg(h, msg, NULL);- With:
clicon_rpc_msg(h, cb, NULL); - Change receive message handling to create cb:
clixon_msg_rcv10(..., cb, eof)->clixon_msg_rcv10(..., &cb, eof)clixon_rpc10(..., cb, eof)->clixon_rpc10(, &cb, eof)
- Rename rpc connect API:
clicon_rpc_connect()->clixon_rpc_connect()clicon_rpc_connect_unix()->clixon_rpc_connect_unix()clicon_rpc_connect_inet()->clixon_rpc_connect_inet()
- Replaced
Corrected Bugs
- Fixed: RESTCONF GET/PUT across mountpoint for CLOSED device causes restconf_terminate
- Fixed: yang parsing of an identifier that is a multiline quoted string
- Fixed: Multiple deviations to same grouping when CLICON_YANG_USE_ORIGINAL doesnt work
- Fixed: YANG identityref from uses/grouping from separate module does not work
- Fixed: YANG error-app-tag identifies as error-message causing false duplicate
- Fixed: YANG error-app-tag not in range and length as it should
- Fixed: [https://github.com//issues/624](Circular YANG includes leads to SEGV)
- Fixed: Autocli of yang union if several elements are pattern strings may return ambiguos
- Fixed: YANG domain lost when parsing import/include YANGs
- Fixed: Restconf: Identity-refs in JSON RPC:s input statements did not work
- Fixed: Autocli: Completion in edit mode included other values
- Fixed: Restconf notification: Add "data:" as prefix to every line., not just first
- Fixed: memory error in rpc_get2 when error handling
- Fixed: RESTCONF crashes after sending request that ends with &
- Fixed: Do not use
d_typefromreaddir()
Clixon 7.5.0
7.5.0
29 July 2025
Features
- Autocli cache for faster loading of generated CLIspecs
- Support
local-namexpath function - Added label
leafref-no-referto control CLI leafref expansion - Added ability to switch between poll-based and select-based event handling
- New
[email protected]revision- Added option:
CLICON_EVENT_SELECT - Deprecated:
CLICON_CLI_EXPAND_LEAFREF - Obsoleted:
CLICON_STREAM_URL
- Added option:
- New
[email protected]revision- Added options:
clispec-cacheandclispec-cache-diroptions
- Added options:
- Revised NACM work
- Refactor read check with separate mark and purge functions to work with cache
- Generic handling of proxyusers, such as RESTCONF daemon
- Support for mount-points
- Improved debug trace
- See NACM for Clixon Controller
- Optimizations:
- Improved ptr2ptr search from linear to binary
- Leafref performance
C/CLI-API changes on existing features
Developers may need to change their code
- RESTCONF: GET /streams changed wrong return status from
201to correct200 - Changed C-API:
clixon_json_parse_string(str,...)->clixon_json_parse_string(h, str,...)xml_bind_yang(..., xerr)->xml_bind_yang(..., 0, xerr)xml_bind_yang0(..., xerr)->xml_bind_yang0(..., 0, xerr)
- Modified data-missing/instance-required error-info field to include tag:
- Instead of eg
<error-info>42</error-info>--><error-info><tag>42</tag></error-info>
- Instead of eg
Corrected Bugs
- Fixed: Candidate CLICON_AUTOLOCK not automatically removed
- Fixed: Restconf POST/PUT leaf-list URI encoding failed
- Fixed: Bug Clixon 7.4.0 about leafref
- Fixed: Unexpected entry in candidate DB while deleting configuration
- Fixed: Applying a service twice causes error
- Fixed: RESTCONF PUT/POST data does sometimes not work across mountpoint
- Fixed: Only single edit possible if CLICON_AUTOLOCK=true
- Fixed: Error when removing leafs in choice
- Fixed: Mandatory in service code does not work
- Fixed: Confusing error message if clixon_server.py is missing
- Fixed: Remove "checkroot" from Makefiles
Clixon 7.4.0
7.4.0
3 April 2025
The Clixon 7.4 release supports RESTCONF for mount-points and changes the event handling using poll to scale better. It also fixes some bugs introduced in 7.3.
Features
- Event handling: replace
selectwithpoll - Enabled dropping privileges with multiple datastores
- Partly fixes: controller to run as non root user
- Added generic callbacks for hello, not only rpc:s.
- Added new
ca_userdefcallback - New
[email protected]revision- Added timeout parameter
Corrected Bugs
- Fixed: Startup mem issue of end callback: copy target db before writing to running
- Fixed: Diff of top-level default values on startup stopped working in 7.3
- Fixed: cli_show_auto don't work
- Fixed: XPath * stopped working in 7.3
- Fixed: Templates with nc:operation "merge" causes bad diffs to be shows
Clixon 7.3.0
7.3.0
30 January 2025
Clixon 7.3 features "system-only-config" for secure in-mem handling of selected config data, several cycle optimizations, generic CLI pipe callbacks and lots of bug-fixes.
Features
- Added support for system-only-config data
- Store sensitive data in the "system" instead of in datastores
- New
CLICON_XMLDB_SYSTEM_ONLY_CONFIGconfiguration option - New
system-only-configextension - New
ca_system_onlybackend callback for reading system-only data
- New
[email protected]revision- Changed:
CLICON_NETCONF_DUPLICATE_ALLOWto not only check but remove duplicates - Added:
CLICON_CLI_PIPE_DIR - Added:
CLICON_XMLDB_SYSTEM_ONLY_CONFIG - Deprecated:
CLICON_YANG_SCHEMA_MOUNT_SHARE
- Changed:
- Performance optimization
- New no-copy
xmldb_get_cachefunction for performance, as alternative toxmldb_get - Optimized duplicate detection of incoming NETCONF requests
- New no-copy
- New: CLI generic pipe callbacks
- Add scripts in
CLICON_CLI_PIPE_DIR
- Add scripts in
- New: feature request: support xpath functions for strings
- Added:
re-match,substring,string,string-length,translate,substring-before,substring-after,starts-with
- Added:
C/CLI-API changes on existing features
Developers may need to change their code
- Moved callbacks starting programs from libclixon_cli to example code
- The functions are:
cli_start_shellandcli_start_program - If you need them, add them to your application plugin code instead
- The functions are:
- Changed C-API: add
system-onlyparameter with default value0last:clixon_json2file()->clixon_json2file(,0)clixon_json2cbuf()->clixon_json2cbuf(,0)
Corrected Bugs
- Fixed: YANG: added extension/unknown-stmt to rpc/input+output
- Fixed: Incorrect fields displayed for "show compare" and "commit diff"
- Fixed: Documentation corresponding to specific release
- https://clixon-docs.readthedocs.io/en/stable points to lastest release, starting with 7.2.0
- Fixed: Backend hangs when doing "process services restart" in the CLI
- Fixed: Autocli: error when empty YANG group and grouping-treeref=true
- Fixed: Mem error when more multiple uses on top level with multiple statements in grouping
- Fixed: Change CLICON_NETCONF_DUPLICATE_ALLOW to remove duplicates
- Fixed: Segv in canonical xpath transform
- Fixed: Error with submodules and feature Interaction
- Fixed: Expansion removes the double quote
- Add escaping in expand_dbvar instead of automatic in cligen expand
- Fixed: string length validation doesn't work for the entry "" in case it has default value specified
- Fixed: SNMP: snmpwalk is slow and can timeout
Clixon 7.2.0
7.2.0
28 October 2024
The 7.2.0 release feature lots of minor changes and bug-fixes including memory optimizations and package builds.
Features
- Restconf: Support for list of media in Accept header
- Rearranged YANG top-levels into YANG domains, mounts, and specs
- Deb build script
- Optimize YANG memory
- Autocli
- Late evaluation of uses/grouping
- YANG
- Added union and extended struct for uncommon fields
- Removed per-object YANG linenr info
- Yang-type cache only for original trees (not derived via grouping/augment)
- Added option
CLICON_YANG_USE_ORIGINALto use original yang object in grouping/augment
- Autocli
- New: CLI simple alias
- List pagination more ietf-draft compliance
- Added where, sort-by and direction parameter for configured data
- New
[email protected]revision- Added: disable operation for module rules
- New
[email protected]revision- Added:
CLICON_YANG_DOMAIN_DIR - Added:
CLICON_YANG_USE_ORIGINAL
- Added:
API changes on existing protocol/config features
Users may have to change how they access the system
- Capability announce urn:ietf:params:netconf:capability:yang-library:1.1 (instead of 1.0)
- RFC 7950->8526
- New version string on the form:
7.1.0-1+11+g2b25294 - Restconf: Better RFC compliance with Accept errors: 406 vs 415
- Removed YANG line-number in error-messages for memory optimization
- Re-enable by setting
YANG_SPEC_LINENRcompile-time option
- Re-enable by setting
- NETCONF error returns of failed leafref references, see #536
C/CLI-API changes on existing features
Developers may need to change their code
- Added
domainargument to yang parse functions. Upgrade as follows:yang_file_find_match(h, m, r, f)->yang_file_find_match(h, m, r, NULL, f)yang_parse_module(h, m, r, y, o)->yang_parse_module(h, m, r, y, NULL, o)
- Replaced
clixon_get_logflags()withclixon_logflags_get() - New
yn_iter()yang iterator replacesyn_each()- Use an integer iterator instead of yang object
- Replace:
y1 = yn_each(y0, y1) { ... - with:
int inext = 0; y1 = yn_iter(y0, &inext) { ...
- Add
keywargument toyang_stats()
Corrected Bugs
- Fixed: YANG 'when' does not work in multiple grouping
- Fixed: Error when changing choice/case with different structure
- Fixed: Clixon <handle if-feature incorrectly
- Fixed: Clixon fails to load yang with extension
- Fixed: Double top-levels in xmldb_get that could occur with xpath containing choice.
- Fixed: RESTCONF exit on cert error + complex accept
- Fixed: Deletion of leaf in YANG choice removes leaf in a different choice/case
- Fixed: Deviated types were resolved in target context, not lexically in deviation context
- Fixed: Signal handling of recv message
Revert to signal handling in 6.5 that was changed in the netconf uniform handling in 7.0 - Fixed: NETCONF error reply from failed leafref rquire-instance does not comply to RFC 7950
Clixon 7.1.0
7.1.0
3 July 2024
The 7.1.0 release features RESTCONF notifications for native mode,
multi-datastore, and many new configure options.
Features
- RESTCONF notification for native mode
- Previously only for FCGI
- The following does not work: Regular subscription + stop-time
- Optimization of yang schema mount: share yang-specs if all YANGs are equal
- This reduces memory if many mount-points share YANGs
- Changed datastore modstate to be last in file, as prior to 7.0
- Event priority. Backend socket has higher prio
- Multi-datastore
- You can split configure datastore into multiple sub-files
- On edit, only changed sub-files are updated.
- Curently only implemented for mount-points
- Code for SHA digests.
- Option for automatic lock of datastore on edit-config
- See Autolock
- Option to set default CLI output format
- CLI support for multiple inline commands separated by semi-colon
- New
[email protected]revision- Added options:
CLICON_NETCONF_DUPLICATE_ALLOW: Disable duplicate check in NETCONF messagesCLICON_LOG_DESTINATION: Default log destinationCLICON_LOG_FILE: Which file to log to if file loggingCLICON_DEBUG: Debug flagsCLICON_YANG_SCHEMA_MOUNT_SHARE: Share same YANGs of several moint-pointsCLICON_SOCK_PRIO: Enable socket event priorityCLICON_XMLDB_MULTI: Split datastore into multiple sub filesCLICON_CLI_OUTPUT_FORMAT: Default CLI output formatCLICON_AUTOLOCK: Implicit locks
- Added options:
- New
[email protected]revision- Added: debug bits type
- Added: xmldb-split extension
- Added: Default format
API changes on existing protocol/config features
Users may have to change how they access the system
- Changed intermediate version numbers to be git-style, eg
7.0.0-39instead of7.1.0-PRE - If
CLICON_XMLDB_MULTIis set, datastores are stored in a new directory- Previously:
CLICON_XMLDB_DIR/<db>_db - New:
CLICON_XMLDB_DIR/<db>d/ - In particular, the top-level is moved from
<db>_dbto<db>.d/0.xml - Backward-compatible:
- If backend is started with
-s startupor-s runningthen<db>_dbis read if<db>.d/0.xmlis not found
- If backend is started with
- Previously:
- Autoconf: Openssl mandatory for all configure, not only restconf, due to digest code
C/CLI-API changes on existing features
Developers may need to change their code
- XML encoding added a
quotesparameter for attribute encoding, update as follows:xml_chardata_encode(e, fmt,...)-->xml_chardata_encode(e, 0, fmt,...)xml_chardata_cbuf_append(cb, str)-->xml_chardata_cbuf_append(cb, 0, str)
Corrected Bugs
- Fixed: Invalid api-path errors thrown when displayin qfx family device conf in CLI
- Fixed: Error message from CLI if terminal is modified
- Fixed: backend exit when receiving invalid NETCONF get select XPath
- Added XML encoding to XPaths in
selectattribute
- Added XML encoding to XPaths in
- Fixed: Fail on return errors when reading from datastore
- Can happen if running is not upgraded for example
- Fixed: Duplicate config files in configdir causes merge problems -> set ? = NULL
Clixon 7.0.1
7.0.1
3 April 2024
Three issues detected in post-testing of 7.0.0 are fixed in the 7.0.1 release
Corrected Bugs
Clixon 7.0.0
7.0.0
8 March 2024
Clixon 7.0.0 is a major release with changes to the debug/log/error API, other APIs,
standardized internal framing protocol and many other changes.
It also supports the 1.0 clixon controller release.
Features
- Changed framing between backend and frontend to RFC6242 "chunked-encoding"
- Previous a propriatary framing method was used
- Added micro-second resolution to logs via stderr/stdout
- New command-line debug mechanism
- Separation between subject-area and details
- Multiple subject-areas
- Symbolic and combined debug names, example:
-D debug -D detail - See https://clixon-docs.readthedocs.io/en/latest/errors.html#customized-errors for more info
- Made coverity analysis and fixed most of them
- Some were ignored being for generated code (eg lex) or not applicable
- Feature: Add support for -V option to give version
- All clixon applications added command-line option
-Vfor printing version - New ca_version callback for customized version output
- All clixon applications added command-line option
- Optimization:
- Removed reply sanity if
CLICON_VALIDATE_STATE_XMLnot set - Improved performance of GET and PUT operations
- Optimized datastore access by ensuring REPORT_ALL in memory and EXPLICIT in file
- Added mountpoint cache as yang flag
YANG_FLAG_MTPOINT_POTENTIAL - Optimized
yang_find, especially namespace lookup - Filtered state data if not match xpath
- Removed reply sanity if
- Added reference count for shared yang-specs (schema mounts)
- Allowed for sharing yspec+modules between several mountpoints
- Added "%k" as extra flag character to api-path-fmt
API changes on existing protocol/config features
Users may have to change how they access the system
- Changed framing between backend and frontend to RFC6242 "chunked-encoding"
- Should only affect advanced usage between clixon frontend and backend
- This should allow standard netconf utilities to be used as frontend (may be some caveats)
- Revert the creators attribute feature introduced in 6.2. It is now obsoleted.
It is replaced with a configuredcreatorsand user/application semantics - New
[email protected]revision- Replaced container creators to grouping/uses
- New
[email protected]revision- Changed semantics:
CLICON_VALIDATE_STATE_XML- disable return sanity checks if false
- Marked as obsolete:
CLICON_DATASTORE_CACHEReplaced with enhanced datastore read APICLICON_NETCONF_CREATOR_ATTRreverting 6.5 functionality
- Changed semantics:
C/CLI-API changes on existing features
Developers may need to change their code
- Rename function
xml_yang_minmax_recurse()->xml_yang_validate_minmax() - Modified msg functions for clearer NETCONF 1.0 vs 1.1 API:
clicon_rpc1-->clixon_rpc10clicon_msg_send1-->clixon_msg_send10clicon_msg_rcvandclicon_msg_decode-->clixon_msg_rcv11- Rewrite by calling
clixon_msg_rcv11and explicit xml parsing
- Rewrite by calling
clicon_msg_rcv1-->clixon_msg_rcv10
- Added
yspecparameter toapi_path_fmt2api_path():api_path_fmt2api_path(af, c, a, c)-->api_path_fmt2api_path(af, c, yspec, a, c)
- Added flags parameter to default functions:
xml_default_recurse(...)->xml_default_recurse(..., 0)xml_defaults_nopresence(...)->xml_default_nopresence(..., 0)- Also renamed (defaults -> default)
- Changed function name:
choice_case_get()->yang_choice_case_get() - New
[email protected]revision- Removed container creators, reverted from 6.5
- Changed ca_errmsg callback to a more generic variant
- Includes all error, log and debug messages
- See Customized NETCONF error message
- See https://clixon-docs.readthedocs.io/en/latest/errors.html#customized-errors for more info
- Refactoring basic clixon modules and some API changes
- Changes marked in code with
COMPAT_6_5- Most common functions have backward compatible macros through the 6.6 release
- Handle API
- Renamed
clicon_handle->clixon_handle clicon_handle_init()-> `clixon_handle_init()clicon_handle_exit()-> `clixon_handle_exit()
- Renamed
- Log/Debug API
- Changed function names. You need to rename as follows:
clicon_log_init()->clixon_log_init(h,)NOTE added "clixon_handle h"clicon_log()->clixon_log(h,)NOTE added "clixon_handle h"clixon_debug_init(d, f)->clixon_debug_init(h, )NOTE h added, f removedclicon_log_xml()->clixon_debug_xml(h,)NOTE added "clixon_handle h"clixon_debug_xml()->clixon_debug_xml(h,)NOTE added "clixon_handle h"
- Changed function names. You need to rename as follows:
- Error API:
- Added
clixon_err_init(h)function - Renaming, make the following changes:
clicon_err()->clixon_err()clicon_err_reset()->clixon_err_reset()clicon_strerror(int)->clixon_err_str()clicon_netconf_error(h, x, fmt)-> clixon_err_netconf(h, OE_XML, 0, x, fmt)`netconf_err2cb(...)-->netconf_err2cb(h, ...)- Likewise for some other minor functions:
clicon_err_*->clixon_err_*
- Replaced global variables with access functions. Replace variables with functions as follows:
clicon_errno->clixon_err_category()clicon_suberrno->clixon_err_subnr()clicon_err_reason->clixon_err_reason()
- Added
- Changed process API:
clixon_proc_socket(...)-->clixon_proc_socket(h, ..., sockerr)
- Changes marked in code with
Corrected Bugs
- Fixed: If services add duplicate entries, controller does not detect this
- Fixed: Problems with diff of YANG lists ordered-by user
- Fixed: show compare does not show correct diff while load merge xml
- Fixed: commit goes 2 times
- Fixed: Problem with cl:ignore attribute for show compare
- Fixed: yang_enum_int_value() fails if no explicit values are assigned to enums
Remaining work:yang_enum2valstr() - Fixed: show compare/diff problems with sorted-by user
- Fixed: Choice and Leafref
- Fixed: Problem deleting non-last list element if ordered-by user
- Fixed: Tab completion mounted devices with lists
- Fixed: kill-session cleanup when client none existant, and for all db:s
- Fixed: Using the characters '<' and '>' might cause an invalid diff
Clixon 6.5.0
6.5.0
6 December 2023
Clixon 6.5 includes bugfixes, removed utility functions to a separate repo and some API changes.
API changes on existing protocol/config features
Users may have to change how they access the system
- All clixon test utilities in util/ have been moved to a separate repo: clicon/clixon-util
- To run tests you need to clone, build and install them separately
- Moved and split install of main example config file
- From
/usr/local/etc/example.xmlto/usr/local/etc/clixon/example.xml - Added
/usr/local/etc/clixon/example/autocli.xmland/usr/local/etc/clixon/example/restconf.xml
- From
C/CLI-API changes on existing features
Developers may need to change their code
- Changed return value of
xml_add_attrfrom 0/-1 to xa/NULL- You need to change eg
if (xml_add_attr < 0)to if (xml_add_attr == NULL)`
- You need to change eg
- Changed signature of
clicon_netconf_error()andnetconf_err2cb()- You need to add the clixon handle as first parameter:
clicon_netconf_error(...)-->clixon_netconf_error(h, ...)netconf_err2cb(...)-->netconf_err2cb(h, ...)
- You need to add the clixon handle as first parameter:
- Changed function name for
clicon_debugfunctions. You need to rename as follows:- clicon_debug() -> clixon_debug()
- clicon_debug_init() -> clixon_debug_init()
- clicon_debug_get() -> clixon_debug_get()
- clicon_debug_xml() -> clixon_debug_xml()
- There are backward compatible macros during a transition period
Minor features
- New feature: Customized NETCONF error message
- Added new callback
.ca_errmsg - See https://clixon-docs.readthedocs.io/en/latest/errors.html#customized-errors for more info
- Added new callback
- New
[email protected]revision- Added
CLICON_NETCONF_CREATOR_ATTRoption
- Added
- New
[email protected]revision- Added ignore-compare extension
- Added creator meta configuration
Corrected Bugs
Clixon 6.4.0
6.4.0
30 September 2023
This release is mainly for bugfixes and improvements of existing functionality, such as CLI output pipes.
Minor features
- New
[email protected]revision- Added argument to alias extension
- CLI show compare example function:
- Improved diff algorithm for XML and TEXT/curly, replaced UNIX diff with structural in-mem algorithm
- JSON: Added unicode BMP support for unicode strings as part of fixing (#453)
- Example cli pipe grep command quotes vertical bar for OR function
- Added: Feature request: node's alias for CLI
- Note: "Skip" is for all nodes, but "Alias" is only for leafs
- New command-line option for dumping configuration options for all clixon applications after load
- Syntax is
-C <format> - Example:
clixon_backend -1C json
- Syntax is
- Removed sending restconf config inline using -R when CLICON_BACKEND_RESTCONF_PROCESS=true
- Define RESTCONF_INLINE to revert
- Clarified clixon_cli command-line:
clixon_cli [options] [commands] [-- extra-options]
C/CLI-API changes on existing features
Developers may need to change their code
-
Renamed
clixon_txt2file()toclixon_text2file() -
Changed parameters of example clispec function
compare_dbs()- New parameters are:
db1,db2,format
- New parameters are:
-
Add
fromrootparameter tocli_show_common()cli_show_common(...xpath...)-->cli_show_common(...xpath,0...)
-
Low-level message functions added
descrargument for better logging- In this way, message debugs in level 2 are more descriptive
- The descr argument can be set to NULL for backward-compability, see the following translations:
clicon_rpc(s, ...)-->clicon_rpc(s, NULL, ...)clicon_rpc1(s, ...)-->clicon_rpc1(s, NULL, ...)clicon_msg_send(s, ...)-->clicon_msg_send(s, NULL, ...)clicon_msg_send1(s, ...)-->clicon_msg_send1(s, NULL, ...)clicon_msg_rcv(s, ...)-->clicon_msg_rcv(s, NULL, ...)clicon_msg_rcv1(s, ...)--> `clicon_msg_rcv1(s, NULL, ...)clicon_msg_notify_xml(h, s, ...)-->clicon_msg_notify_xml(h, s, NULL, ...)send_msg_reply(s, ...)-->send_msg_reply(s, NULL, ...)clixon_client_lock(s, ...)-->clixon_client_lock(s, NULL, ...)clixon_client_hello(s, ...)-->clixon_client_hello(s, NULL, ...)
-
CLI pipe function: added arg to
pipe_tail_fn()
Corrected Bugs
- Fixed: "show compare" and "show compare | display cli" differs #23
- Fixed: JSON backslash string decoding/encoding not correct
- Fixed: CLI show config | display exits over mountpoints with large YANGs
- JSON string fixed according to RFC 8259: encoding/decoding of escape as defined in Section 8
- No need to bind for xml and json, only cli and text
- Fixed several issues with including multiple configure-files in a config-directory, including overwriting of structured sub-configs.
- Fixed: YANG error when poking on EOS configuration
- Fixed: CLICON_CONFIGDIR with external subsystems causes endless looping
- Fixed: "show configuration devices" and "show configuration devices | display cli" differs
- Fixed: Configuring Juniper PTX produces CLI errors
- Fixed: CLI output pipes: Add
CLICON_PIPETREEto any cli files, not just the first