Commit graph

2035 commits

Author SHA1 Message Date
Kristofer Hallin
7bdc5045b2 In come cases we need YANG files which are converted from SNMP MIBs using smidump. For the Docker images we'll clone the from an external repository. 2022-06-26 11:28:42 +02:00
Olof hagsand
df687f7180 Clixon SNMP frontend
Added two new config options to clixon-config.yang: `CLICON_HTTP_DATA_ROOT`
Added new files: apps/snmp/snmp_mib_yang.[ch] for generic MIB/YANG handling
Test: killall quiet
Test: added specific MIB for generic code: <CLICON_SNMP_MIB>NET-SNMP-EXAMPLES-MIB</CLICON_SNMP_MIB>
2022-06-26 11:28:42 +02:00
Kristofer Hallin
ee06652e86 SNMP tests: Don't start snmpd, check if the system have snmpd started otherwise present instructions for how to configure and start it. 2022-06-26 11:28:42 +02:00
Kristofer Hallin
c9eae77d61 SNMP MIB to YANG conversion. Script to traverse a MIB directory and convert the MIBs to YANG files using smidump. 2022-06-26 11:28:42 +02:00
Olof hagsand
f112580546 SNMP MIB->YANG translation file handling.
Added configure option  --with-mib-generated-yang-dir=DIR with
default value /usr/share/mibyang where generated YANGs from MIBs
should be placed so that SNMP tests know where to find the YANGs.
2022-06-26 11:28:42 +02:00
Olof hagsand
2699393c4a SNMP: replaced testhandler code to use only NET-SNMP-EXAMPLES-MIB for scalar and table 2022-06-26 11:27:54 +02:00
Kristofer Hallin
4c3bbcc0ed Fix for snmpd in Alpine, snmpd crashes with the default configuration. 2022-06-26 11:27:54 +02:00
Kristofer Hallin
0ec26df953 Fixed minor typo in comment. 2022-06-26 11:27:54 +02:00
Kristofer Hallin
b7c8a27f67 Tests for SNMP tables. 2022-06-26 11:27:54 +02:00
Kristofer Hallin
f443f4f9b3 Added example for tables. 2022-06-26 11:27:54 +02:00
Kristofer Hallin
0fc5bd3bfb Workaround for crashing snmpd in Alpine. 2022-06-26 11:27:54 +02:00
Kristofer Hallin
366b1cb42f Valgrind tests for clixon_snmp. 2022-06-26 11:27:54 +02:00
Olof hagsand
28514c6750 Clixon SNMP frontend update
* Integration of testhandler.c gives proper callback handling
* YANG `clixon-config@2022-03-21.yang` changes:
    * Added option:
      * `CLICON_SNMP_AGENT_SOCK`
2022-06-26 11:27:54 +02:00
Kristofer Hallin
c584d171ee Check if we have Net-SNMP support enabled before trying to run SNMP tests. 2022-06-26 11:26:04 +02:00
Kristofer Hallin
432131c9d2 Add SNMP tools. 2022-06-26 11:26:04 +02:00
Kristofer Hallin
8bff60fb30 Set proper paths to SNMP utils. 2022-06-26 11:26:04 +02:00
Kristofer Hallin
1032e6fee6 Changed paths for SNMP tools used in test. 2022-06-26 11:26:04 +02:00
Kristofer Hallin
34df2413ea Initial SNMP tests. 2022-06-26 11:26:04 +02:00
Kristofer Hallin
40d5f99694 Tell the agent to use a Unix socket for communication. 2022-06-26 11:26:04 +02:00
Olof hagsand
e32cb81b49 Clixon SNMP frontend update
Integrated netsnmp agent and clixon event handling, made a workaround of fdset:s
used in the netsnmp API with sockets used in Clixon
Added a hardcoded MIB OID handler as subagent
Added libnetsnmpagent to autotools dependency check
New OE_SNMP error code
2022-06-26 11:26:04 +02:00
Kristofer Hallin
16d21bbe3b Move include of signal.h 2022-06-26 11:26:04 +02:00
Kristofer Hallin
376996c89e Install net-snmp-dev and build Clixon with Net-SNMP support. 2022-06-26 11:26:04 +02:00
Kristofer Hallin
01ea7594ce Include signal.h 2022-06-26 11:26:04 +02:00
Olof hagsand
d72aa58f90 Initial Net-snmp frontend commit
Added apps/snmp with makefiles, autotools, docker adjustment
Minimal snmp_main program
2022-06-26 11:26:04 +02:00
Olof hagsand
a00e36caa2 * Full RFC 7950 if-feature-expr support (Section 7.20.2)
* Previous implementation did not handle nested if-feature expressions
  * As part of fixing: [YANG if-feature does not support nested boolean expression](https://github.com/clicon/clixon/issues/341)
  * Added new yacc/lex parser for if-feature-expr string
2022-06-26 10:58:43 +02:00
Olof hagsand
5bb3767358 Workaround for [YANG if-feature does not support nested boolean expression](https://github.com/clicon/clixon/issues/341) 2022-06-24 11:29:42 +02:00
Olof hagsand
05918e3ca2 Test: change make test from all -> sum, make vagrant yang checkout more resilient
New slack invite
2022-06-23 16:37:22 +02:00
Olof hagsand
33c77c8a09 Cleanup, debug stmts, diff vars and obsolete compile options 2022-06-23 15:40:47 +02:00
Olof hagsand
bdb516fec9 YANG Action (RFC 7950 Section 7.15)
See [Support for "action" statement](https://github.com/clicon/clixon/issues/101)
2022-06-21 15:44:02 +02:00
Olof hagsand
87c65c3541 Fixed: [RPC edit-config payloads are not fully validated](https://github.com/clicon/clixon/issues/337) 2022-06-20 15:08:50 +02:00
Olof Hagsand
7c22021242
Merge pull request #336 from pheller/fix-test-readme
Update README.md
2022-06-14 09:46:43 +02:00
Phillip Heller
75abfb8204
Update README.md
https://github.com/YangModels/yang default branch appears to be named "main", not "master"
2022-06-13 11:09:58 -06:00
Olof hagsand
0b16797a45 * Added: [Feature Request: Log SSL events](https://github.com/clicon/clixon/issues/331)
* Added syslog NOTICE on failed user certs
2022-06-08 13:22:38 +02:00
Olof hagsand
609e27e0c2 Augmented XML uses default namespace
* Instead of using prefixes for augmented XML, assign the default namespace
Test: moved datastore format tests from test_cli to new test_datastore_format
2022-06-08 11:49:48 +02:00
Olof hagsand
db8cf75077 Test: Fixed: show netconf pretty 2022-06-07 14:21:40 +02:00
Olof hagsand
b1cb774c9d TEXT output/parser: fix space-separated leaf/leaf-lists 2022-06-07 13:23:05 +02:00
Olof hagsand
01b38c6645 Fix text parser leaf-list / leaf succession
See https://github.com/clicon/clixon/issues/324
2022-06-06 15:40:07 +02:00
Olof hagsand
4f9ed02a46 Text syntax parser/loader, fixed double leaf-list issue
Test: extended test_cli with format 4x tests
2022-06-03 14:03:01 +02:00
Olof hagsand
625a0ed19a Cleaned up prettyprint->pretty, use yang_cvec_set access function 2022-06-03 14:01:56 +02:00
Olof hagsand
b6bfcb69f7 Text syntax parser/loader
Added support for list x y;
Uses a mechanism to parse as unknown XML body and post-parsing replace with list keys
Fixed example and test to work with new TEXT syntax
2022-06-02 19:28:49 +02:00
Olof hagsand
0c79298e76 Changed C-API for xml translation/print the internal cxobj tree data structure to other formats
New API is as follows:
  * `clixon_xml2file()` - Print internal tree as XML to file
  * `clixon_xml2cbuf()` - Print internal tree as XML to buffer
  * `clixon_json2file()` - Print internal tree as JSON to file
  * `clixon_json2cbuf()` - Print internal tree as JSON to buffer
  * `clixon_cli2file()` - Print internal tree as CLI format to file
  * `clixon_txt2file()` - Print internal tree as text format to file
2022-06-01 20:02:27 +02:00
Olof hagsand
87719c623c Text syntax parser/loader
Leaf-list syntax using: "id [ leaf leaf ...]" syntax for output and input
Variables using \n\r in text
Added clixon_xvec_merge()
2022-06-01 11:08:19 +02:00
Olof hagsand
820ed5686b Text syntax parser/loader
Added string quites around text containing spaces
Added support for colon in text
2022-06-01 11:07:55 +02:00
Olof hagsand
2ece0b8f51 * Experimental text syntax parser/loader
* Added new text syntax parsing and loading from CLI
  * Unified text output functions to `xml2txt` and moved to clixon_text_syntax.[ch]
    * The following are removed: `cli_xml2txt` and `xml2txt_cb`
  * Text output format changed:
    * Namespace/modulename added to top-level
  * See [Support performant load_config_file(...) for TEXT format](https://github.com/clicon/clixon/issues/324)
2022-06-01 11:07:15 +02:00
Olof hagsand
43a57dad79 Changed C-API for xml translation/print to other formats.
* Added `skiptop` parameter, if set only apply to children of a node, skip top node
    * default is 0
* Functions are merged, ie removed and replaced with more generic functions
* `xml2json_cbuf()`: Added `skiptop` parameter: `xml2json_cbuf(..., int skiptop)`
* `xml2json()` and `xml2json_cb()` merged into `xml2json_file()` with `skiptop`
    * Replace `xml2json(...)` with `xml2json_file(..., stdout, 0)`
    * Replace `xml2json_cb(...)` with `xml2json_file(..., 0)`
* `clicon_xml2cbuf()`: Added `skiptop` parameter: `clicon_xml2cbuf(..., int skiptop)`
* `xml2cli()`: Added `skiptop` parameter: `xml2cli(..., int skiptop)`
2022-06-01 10:48:39 +02:00
Olof hagsand
724b94137f Test, fixed the fix of previous commits 2022-05-30 15:47:54 +02:00
Olof hagsand
ebe3d8e454 Test: fixed an occasional error in actions depending on hostname inclduing '92' 2022-05-30 15:36:37 +02:00
Olof hagsand
8e6ba7fa53 test of cligen expand bug #332 2022-05-30 15:27:19 +02:00
Olof hagsand
5740d37737 Clixon 5.8.0.pre 2022-05-30 12:30:37 +02:00
Olof hagsand
cca8c88ec1 5.7.0 release 2022-05-17 11:45:43 +02:00