0
0
mirror of https://gitlab.nic.cz/labs/bird.git synced 2024-12-23 10:11:53 +00:00
Commit Graph

4168 Commits

Author SHA1 Message Date
Vojtech Vilimek
e10f21aa3a SNMP: logging improvements 2024-08-15 10:54:13 +02:00
Vojtech Vilimek
578a8a43bc SNMP: improved debug messages, shorter description 2024-08-14 18:24:25 +02:00
Vojtech Vilimek
28c93bd8fa SNMP: Minor changes 2024-08-14 17:34:12 +02:00
Vojtech Vilimek
6cfa5416e1 SNMP: Bugfixes, reconfiguration changes, cleanup
Major rework of reconfiguration handling.
2024-08-14 17:16:32 +02:00
Vojtech Vilimek
dd9e1323b5 SNMP: cleanup 2024-08-14 12:26:20 +02:00
Vojtech Vilimek
faf862ae13 SNMP: Fix BGP4-MIB scalar values without index 2024-08-14 12:22:25 +02:00
Vojtech Vilimek
95c484674e fixup! SNMP: Fix state machine transitions 2024-08-13 17:58:16 +02:00
Vojtech Vilimek
1849d28e49 SNMP: improve AgentX registration tracking 2024-08-13 17:53:45 +02:00
Vojtech Vilimek
9684fda9bf SNMP: Fix state machine transitions 2024-08-13 17:51:53 +02:00
Vojtech Vilimek
538bbadae2 fixup! SNMP: tmp -- fix byte order handling 2024-08-13 17:47:15 +02:00
Vojtech Vilimek
dd8d706e1b SNMP: tmp -- fix byte order handling 2024-08-10 00:07:49 +02:00
Vojtech Vilimek
a70ab3051f SNMP: Progress
Remove old logging messages, improve and correct function documentation,
minor tweaks and bugfixes
2024-08-09 21:05:32 +02:00
Vojtech Vilimek
ffda7d1b2a SNMP: AgentX master agent can have IPv6 addr 2024-07-26 12:28:33 +02:00
Vojtech Vilimek
4b739be07c SNMP: move pieces of show_info 2024-07-26 10:43:00 +02:00
Vojtech Vilimek
a34fea55ec SNMP: tmp 2024-07-24 13:38:36 +02:00
Vojtech Vilimek
bdb0b7cad4 SNMP: Minor improvements 2024-07-23 13:48:20 +02:00
Vojtech Vilimek
95438b7608 SNMP: AgentX over UNIX-domain sockets 2024-07-22 18:17:35 +02:00
Vojtech Vilimek
ea643215e2 SNMP: subagent improvements 2024-07-22 18:17:16 +02:00
Vojtech Vilimek
8eedcf2ac0 SNMP: New test and bugfixes
New tests for mib_tree_walk_oid_compare(), fixes for API changes.
2024-07-22 18:12:28 +02:00
Vojtech Vilimek
a059c2c6ff IO: Changes in socket API
Support for active UNIX sockets is added. UNIX socket are now created with
sk_open. The socket name/path is passes in host, the same way as SSH address.
2024-07-18 19:53:54 +02:00
Vojtech Vilimek
373b343e0c SNMP: snmp_pdu simplification 2024-07-17 13:03:26 +02:00
Vojtech Vilimek
4b7989aa45 SNMP: tmp 2024-07-09 16:56:16 +02:00
Vojtech Vilimek
5ef5b19dae SNMP: tmp 2024-07-09 16:30:04 +02:00
Vojtech Vilimek
a67b00a0cf SNMP: tmp ``microimprovement'' flush worktree 2024-07-04 16:33:44 +02:00
Vojtech Vilimek
2fe59ca309 SNMP: tmp microimprovement user protocol doc
TODO finish
2024-07-04 16:31:15 +02:00
Vojtech Vilimek
af9a2d4cd7 SNMP: Slow integraion of MIB tree in SNMP code 2024-05-24 15:20:30 +02:00
Vojtech Vilimek
2710221a4c SNMP: MIB improvement
Tests look to pass.
2024-05-21 15:46:26 +02:00
Vojtech Vilimek
aa14b546b8 SNMP: MIB tree
The first iteration of MIB tree with tests.
2024-04-22 12:55:33 +02:00
Vojtech Vilimek
c7ca8b66c1 SNMP: Major leap forward
Solved segmentation faults.
2024-01-24 00:23:31 +01:00
Vojtech Vilimek
e8cad1f275 SNMP: dead end
The code contains hard to debug bug where we periodically do some kind of error.
The problem is caused by weird values after the AgentX PDU header, exactly where
the first OID should lie. We expend value less than 15 but we found values like
0x00003b47. We found possible cause on assignment to socket's receive buffer
position in proto/snmp/subagent.c:snmp_rx at line 1569. An erroneous behavior
may have been caused by off-by-on error. More investigation is needed to gain
full picture.

To resolve this issue we use much more simpler approach. We will set max packet
size and wait until whole packet has arrived.
2024-01-10 12:21:46 +01:00
Vojtech Vilimek
a6a07ffb19 SNMP: Documentation improvements 2023-11-16 07:11:14 +01:00
Vojtech Vilimek
c18e6dd58d SNMP: Major code improvements
SNMP state changes are now handled by snmp_set_state() functions.

The registration structure and related variables are renamed to remove
confusion.

Manipulation of BGP peers, a reference to BGP protocol structures, is improved
by new functions that encapsulate raw hash table macros (moved from snmp.h).
IPv4 addresses now used by bgp_mib.c because BGP4-MIB does not support IPv6
addresses.

Configuration grammar rules are revised.

We now use DBG() and TRACE() macros to output information about SNMP state
chagnes and about received and transmitted packets.

Pieces of old code are removed, minor bugfixes are included. Large debug string
array are removed.
2023-11-15 15:03:55 +01:00
Vojtech Vilimek
53856e49c9 SNMP: Use compile-time selected byte order
In the AgentX communication the subagent chooses the byte order used. To reduce
code complexity, we decide to use compile-time selected byte order in PDU sent.
Supported options are:
  - SNMP_NATIVE: use native CPU byte order
  - SNMP_NETWORK_BYTE_ORDER: use big endian in PDUs, i.e. network byte order
It is recommended not to used both options at the same time (even it is possible
on big endian platforms).
2023-11-15 13:00:24 +01:00
Vojtech Vilimek
709d0fdd19 SNMP: Refactor - use inline functions
Macros are replaced with inline functions.
2023-11-15 11:41:54 +01:00
Vojtech Vilimek
fedaa0af5e SNMP: Fix handling of partially received PDUs 2023-11-08 13:10:13 +01:00
Vojtech Vilimek
bcbb56bef6 SNMP: Add documentation 2023-11-08 11:42:57 +01:00
Vojtech Vilimek
332fc82142 SNMP: Fix non-debug build 2023-11-08 09:27:01 +01:00
Vojtech Vilimek
a737f7a4d8 SNMP: Improvements in registration handling 2023-10-25 16:58:47 +02:00
Vojtech Vilimek
661a4277bb SNMP: Refactoring 2023-10-25 16:48:12 +02:00
Vojtech Vilimek
fd243b6e9e SNMP: Remove support for context 2023-10-25 16:39:11 +02:00
Vojtech Vilimek
aef20fe1a7 SNMP: Better handling of errors 2023-10-25 12:56:23 +02:00
Vojtech Vilimek
151fa4b6b2 SNMP: Bugfixes, minor code improvements 2023-10-25 12:41:23 +02:00
Vojtech Vilimek
0caf003bf5 SNMP: Remove development comments 2023-10-19 17:02:52 +02:00
Vojtech Vilimek
3b87af96f3 Merge branch 'vv-test' into proto-snmp 2023-10-19 16:32:38 +02:00
Vojtech Vilimek
e15f38e082 SNMP: Bare support for agentx-TestSet-PDU 2023-10-19 16:27:04 +02:00
Vojtech Vilimek
faa6262573 SNMP: Code improvements 2023-10-19 16:20:37 +02:00
Vojtech Vilimek
6c59bcdfbb SNMP: Remove old code 2023-10-19 16:15:15 +02:00
Vojtech Vilimek
f2f9810b86 fixup! An unexpected NULL pilgrim 2023-10-19 16:03:22 +02:00
Vojtech Vilimek
728e968ba7 SNMP: Refactoring - Comments, Logging 2023-10-19 15:59:13 +02:00
Vojtech Vilimek
3488d0e0a7 SNMP: Refactoring - Comments, Logging 2023-10-18 18:17:58 +02:00