Commit graph

976 commits

Author SHA1 Message Date
Olof hagsand
a0e6536bab Added Siklu sponsorship text 2022-06-26 11:29:40 +02:00
Olof hagsand
ef640772df SNMP Frontend, fix handling of snmpd down and memory leaks
If snmpd is down, clixon_snmp does not start
If snmpd stops, clixon_snmp quits
Mem leaks fixed
2022-06-26 11:29:40 +02:00
Olof hagsand
ff52cad3a8 SNMP frontend: Types and indexes
Added timestamp and inet address
First go at index names
2022-06-26 11:29:40 +02:00
Olof hagsand
b3a6700fd5 SNMP frontend, forgot add some files in last commit 2022-06-26 11:29:40 +02:00
Olof hagsand
18ff854e12 SNMP frontend: special case for SnmpAdminString with not null-terminated string 2022-06-26 11:29:40 +02:00
Olof hagsand
7bcecc155a SNMP Frontend, fixed remaining types: phys-addr, timeticks, binary, objectid 2022-06-26 11:29:40 +02:00
Olof hagsand
6f7a33d196 SNMP frontend, new preli table handling code
Skipped data set and use table-helper only
Specialized SNMP error handling
2022-06-26 11:28:42 +02:00
Olof hagsand
05f3ebb59e SNMP frontend: SNMP2YANG type conversion for snmpset 2022-06-26 11:28:42 +02:00
Olof hagsand
aa95ead1cc SNMP frontend: Reworked types for GET types translation
YANG enum type, split up enum to int into two functions
2022-06-26 11:28:42 +02:00
Kristofer Hallin
657aafd3b1 Extended supported types with uint64. 2022-06-26 11:28:42 +02:00
Kristofer Hallin
bf1643cc43 Extended supported types with uint32. 2022-06-26 11:28:42 +02:00
Olof hagsand
46cb21f3e8 SNMP frontend: Generalized type handling for set functions
SPlit scalar_handler into get and set subfunctions
2022-06-26 11:28:42 +02:00
Olof hagsand
ef604be610 SNMP frontend, restructure files
Split snmp_mib_yang.c into: snmp_register.[ch] and snmp_handler.[ch]
2022-06-26 11:28:42 +02:00
Olof hagsand
f905f66efa SNMP frontend: Changed yang2xpath to us string, traverse only datanodes 2022-06-26 11:28:42 +02:00
Olof hagsand
484507b628 removed binary added by mistake 2022-06-26 11:28:42 +02:00
Olof hagsand
eb8d0c0b3a SNMP frontend: added -z zap command-line option and pid-file exclusive check, fixed mem check 2022-06-26 11:28:42 +02:00
Kristofer Hallin
2366be0062 Handle errors from clixon_table_create. 2022-06-26 11:28:42 +02:00
Olof hagsand
42f21a309a SNMP frontend: conflict typos, snmp pidfile 2022-06-26 11:28:42 +02:00
Olof hagsand
5172cf15fa SNMP frontend: getnext, oid sanity checks and scalar debug 2022-06-26 11:28:42 +02:00
Kristofer Hallin
59a637fdf4 New function, clixon_table_create which will clear a table and create any rows, indexes and columns to avoid collissions. 2022-06-26 11:28:42 +02:00
Olof hagsand
99cd8bacc0 SNMP frontend generic code for tables and clixon backend
Added snmp-msg translation table
Changed test-table to only GET
2022-06-26 11:28:42 +02:00
Olof hagsand
62a32faf9c SNMP frontend. New snmp_lib.[ch] and rearranged code into lib
Test: renamed WITH_SNMP -> ENABLE_SNMP
2022-06-26 11:28:42 +02:00
Olof hagsand
1f8b82e8e1 SNMP frontend, add int32 + string type for scalars
Added get string test
Added set value for netconf test
2022-06-26 11:28:42 +02:00
Olof hagsand
72534e864d SNNP frontend. Added SMI default value support and deviation for set 2022-06-26 11:28:42 +02:00
Kristofer Hallin
9b0cf2f7c4 For tables use a callback to create indexes, rows etc. 2022-06-26 11:28:42 +02:00
Olof hagsand
4ff2ea099c SNMP frontend table fix: handler called with heartrate, return 0 2022-06-26 11:28:42 +02:00
Olof hagsand
182b72a4cc SNMP frontend, RPC of single variable through clixon 2022-06-26 11:28:42 +02:00
Olof hagsand
4e0d9dd987 SNMP frontend
Fixed table/scalar collision issue
Made the CS variable change said to be in previous commit
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
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
f443f4f9b3 Added example for tables. 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
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
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
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
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
b1cb774c9d TEXT output/parser: fix space-separated leaf/leaf-lists 2022-06-07 13:23:05 +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
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
8e6ba7fa53 test of cligen expand bug #332 2022-05-30 15:27:19 +02:00
Olof hagsand
50fcedafac Make socket read (SSL_read) error handling more resilient: log and continue instead of exit 2022-05-16 19:34:00 +02:00
Olof hagsand
7b099a5685 Fixed Restconf nghttp2 client EPIPE crash 2022-05-13 13:34:06 +02:00
Olof hagsand
d153bfcd0c Test: restconf notification parallel disabled. start script -l removed 2022-05-12 16:17:26 +02:00