Commit graph

1113 commits

Author SHA1 Message Date
Olof Hagsand
d6c523d27a
Merge pull request #422 from dima1308/master
Add support decimal64 for SNMP
2023-02-23 12:35:48 +01:00
Olof hagsand
55422f4187 PERF: Added a recurse parameter to xml_yang_minmax_recurse() to avoid "double recursion"
C-API: `candidate_commit()`: validate_level (added in 6.1) marked obsolete
2023-02-23 11:42:15 +01:00
Olof hagsand
fe8636bb77 Move validation flag to include diff 2023-02-21 20:19:59 +01:00
stass
980c7d082f Add support decimal64 for snmp
Signed-off-by: Dmitry Grinberg <dima.g@siklu.com>
2023-02-21 11:57:00 +02:00
Olof hagsand
585e725aec Yang schema mount: replaced config --enable-yang-schame-mount with runtime option CLICON_YANG_SCHEMA_MOUNT
Added config and validation-level as parameters to ca_yang_mount
2023-02-17 16:39:39 +01:00
Olof Hagsand
ecd60fbcfe
Merge pull request #418 from kernelkit/kkit
Misc. build fixes encountered when cross-compiling
2023-02-17 09:52:42 +01:00
Olof hagsand
585823a609 Memory leaks 2023-02-14 16:42:43 +01:00
Olof hagsand
0ef0970c04 Implemented: [Request to suppress auto-completion for "deprecated" / "obsolete" status and warn the user.](https://github.com/clicon/clixon/issues/410) 2023-02-14 16:42:43 +01:00
Olof Hagsand
fcf9a8b0b0 C-API: Exposed diff function
Test: double leaf validate test
2023-02-13 20:23:18 +01:00
Olof hagsand
d358387d39 * Fixed: [State XML validation error when CLICON_MODULE_LIBRARY_RFC7895=true and ietf-yang-libra$
* Removed obsolete option: `CLICON_MODULE_LIBRARY_RFC7895'
  * Obsolete config options given in the confi file are considered an error
* Added section in CONTRIBUTING relating to optimzation
* Changed reset merge to implicit default values.
  * This avoids a potential overwriting of explicitly set default values in the existing config
* Adapted some code to [Make cligen_* functions const ](https://github.com/clicon/cligen/pull/83)
* Test: fixed test for * Fixed: [datamodel tree generated from basemodel tree is not proper when a list has more than one key and key is of enum type](https://github.com/clicon/clixon/issues/417)
2023-02-12 16:19:27 +01:00
Olof hagsand
7868cf0a0d Docker example: fixed scripts to run multiple instances
Fixed parenthesis typo in purge code
2023-02-10 11:51:41 +01:00
Joachim Wiberg
726394d97c apps/restconf: fix compiler warning 'addr' may be used uninitialized
Natvie build with GCC 11.3 generates the following warning.  The patch
is silly and the code path should never be reached, but it silences the
compiler.

restconf_main_native.c:572:9: warning: ‘addr’ may be used uninitialized in this function [-Wmaybe-uninitialized]

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2023-02-09 15:53:52 +01:00
stass
3436a19ee4 Scalars do not have a .0 suffix
See https://github.com/clicon/clixon/issues/401
2023-02-06 10:47:03 +01:00
Olof Hagsand
a5220805b1 New plugin callback: ca_yang_patch - for modifying existing YANG modules
C-API: Added `spec` parameter to `xml2xpath()`
2023-02-05 14:14:57 +01:00
Olof hagsand
6681eb99d3 Netconf monitoring statistics frm RFC 6022 2023-02-04 17:13:45 +01:00
Olof hagsand
5da8ce211a Patch of previous commit: ca_reset plugin 2023-02-02 16:07:35 +01:00
Olof hagsand
3d64eddaf2 All calls to ca_reset plugin callback has db=tmp 2023-02-02 14:46:53 +01:00
Olof hagsand
a203f6cde7 Updated extraxml reset callback example and added a regression test 2023-02-02 12:17:52 +01:00
Olof hagsand
af1f5a037d Fixed: [SNMP: snmpwalk is slow and can timeout #404 ](https://github.com/clicon/clixon/issues/404)
Optimized yang_extension_value
2023-02-01 14:57:51 +01:00
Olof hagsand
91034e5361 YANG schema mount, added configure option --enable-yang-schema-mount 2023-01-30 11:49:11 +01:00
Olof Hagsand
034ab632f1 * C-API: Added vlev validate level parameter to candidate_commit
* `vlev` : validate level
2023-01-29 20:02:56 +01:00
Olof Hagsand
a8e13047fc * YANG schema mount RFC 8528, state data 2023-01-27 15:11:08 +01:00
Olof hagsand
51ebbdf12f * C-API: Added clicon_handle parameter to all xml_bind_* calls 2023-01-27 14:56:58 +01:00
Olof hagsand
da9bfcbb53 * Changed debug levels in clicon_debug() to be based on maskable flags
* Added flag names: `CLIXON_DBG_*`
  * Added maskable flags that can be combined when debugging:
    * `DEFAULT` = 1: Basic debug message, espcially initialization
    * `MSG` = 2: Input and output packets, read datastore
    * `DETAIL` = 4: Details: message dump in hex, xpath parse trees, etc
    * `EXTRA` = 8: Extra detailed logs
* Test: some errors in yang-lib where content-id was in wrong place
2023-01-27 14:56:58 +01:00
Olof Hagsand
b3dcee9639 * YANG schema mount RFC 8528, Initial commit (work in progress)
* Keep track of YANG unknowns with ys_cvec of EXTENSION
* C-API: Init ys_cvec to NULL, added yang_cvec_add() and adjusted code to use it
2023-01-20 16:16:02 +01:00
Olof Hagsand
b58635554c
Merge pull request #406 from StasSt-siklu/SNMP_accepts_only_u32_and_u64
Added translation from Yang type to SNMP type
2023-01-19 09:10:48 +01:00
Olof Hagsand
fe291fe73d
Merge pull request #402 from doron2020/Yang_leaves_without_smiv2_oid_directive_are_not_shown+well_in_snmpwalk
Fixed: [Yang leaves without smiv2:oid directive are not shown well in…
2023-01-19 09:02:23 +01:00
Olof hagsand
46137e1394 Fixed: [Netconf commit confirm session-id mismatch #407](https://github.com/clicon/clixon/issues/407) 2023-01-18 15:55:49 +01:00
Olof hagsand
923b998774 * Fixed: Initialized session-id to 1 instead of 0 following ietf-netconf.yang
* Clearer debug levels `clicon_debug()`:
  1: Logical debug message
  2: Input and output packets
  3: Message dump in hex, xpath parse trees
2023-01-18 15:51:31 +01:00
doronb
c0526fad9c Fixed: [Yang leaves without smiv2:oid directive are not shown well in snmpwalk] (https://https://github.com/clicon/clixon/issues/398) 2023-01-18 14:53:25 +02:00
stass
11560e7d4f Added translation from Yang type to SNMP type 2023-01-17 17:57:56 +02:00
Olof hagsand
3428f4d5ff Fixed: [snmpwalk doesn't show properly SNMP boolean values which equal false](https://github.com/clicon/clixon/issues/400) 2023-01-16 12:10:16 +01:00
Olof hagsand
0324135043 Loosened strict RFC6022 session transport requirement due to race condition in clixon_snmp 2023-01-16 11:03:21 +01:00
Olof hagsand
000cb866c2 RFC 8525:
- Change from RFC 7805: Remove revision if empty instead of sending empty revision
RFC 6022
  - Added cli identity to RFC6022 transport
  - Added source-host for natove restconf, bit no other sessions
2023-01-15 22:44:00 +01:00
Olof Hagsand
bc6cc2b31f C-API: All calls to clicon_log_xml() changed to new function `clicon_debug_xml()\
Debugging, moved many detailed debugs from level 1 to 2
2023-01-15 13:17:58 +01:00
Olof hagsand
3916fa919c Netconf monitoring RFC 6022 Sessions (https://github.com/clicon/clixon/issues/370)
- statistics and transport/source-host parameters
  - extended internal NETCONF hello with transport and source-host attributes
clixon-lib,yang
  - Moved all extended internal NETCONF attributes to the clicon-lib namespace
C-API:
  - wrapped most attribute creation into new fn xml_add_attr()
2023-01-15 12:36:59 +01:00
Olof hagsand
0df023c70e Typo in xpath ilen
Doc of backend code
2023-01-02 21:21:37 +01:00
Olof hagsand
6fedf65de7 C-API: Changed type of veclen parameter to size_t in xpath_vec_flag()
Rewrite of sed -e to be portable to freebsd
2022-12-29 15:49:19 +01:00
Jan-Olof Carlson
e8048fa434 Conditional compilation to support report-all default retrieval 2022-12-20 10:14:09 +00:00
Jan-Olof Carlson
8883d012c7 Set basic mode retrieval to explicit by default. RFC6243 2022-12-19 20:30:11 +00:00
Olof hagsand
0d41d49fa9 Moved with-defaults processing from get(-config) to xmldb_get when reading db
With-defaults: fixed cornercase in xpath used in list pagination
C-API: Added `with-defaults` parameter (default 0) to `xmldb_get0()`
2022-12-18 19:59:02 +01:00
Olof Hagsand
e885d63f68 Minor doc and err handling fixes 2022-12-16 10:48:28 +01:00
Olof hagsand
a38c54e4cc Netconf monitoring:
- Announce module capability
- Return origin Yang file in get-schema
2022-12-04 13:10:14 +01:00
Olof hagsand
981d6f3797 Cleanup: vagrant typo 2022-12-03 18:48:08 +01:00
Olof hagsand
c94e9dad67 Feature Request: Support RFC 6022 (NETCONF Monitoring)
* Added capabilities and schema state, and get-schema rpc
* New `clixon-config@2022-11-01.yang` revision
  * Added option:
    * `CLICON_NETCONF_MONITORING`
    * `CLICON_NETCONF_MONITORING_LOCATION`
2022-11-28 15:53:24 +01:00
Olof hagsand
8ebab16c4c Add proper error message if namespace not found in module-set header 2022-11-28 13:50:41 +01:00
Olof hagsand
e27336e054 C-API change yang_print: print top-level and add pretty-print parameter
Test: Fix valgrind dlclose suppresion
2022-11-24 17:42:48 +01:00
Olof hagsand
a3bb271432 cli show config json: add {} clause for empty 2022-11-19 11:13:27 +01:00
Olof hagsand
caef594dbe Error handling for CLI
Continue, do not exit on read/expand errors
Accept -1 error without clicon_err in callbacks / expand
C-API: Three-value return of clicon_cliread
2022-11-19 11:11:08 +01:00
Olof hagsand
f82ce896a9 Typos and docker test fix for ubuntu-22.04 2022-11-10 11:40:54 +01:00