https://github.com/linbit/agentx-rs
RFC conformant AgentX library implementing all PDU types
https://github.com/linbit/agentx-rs
Last synced: 8 days ago
JSON representation
RFC conformant AgentX library implementing all PDU types
- Host: GitHub
- URL: https://github.com/linbit/agentx-rs
- Owner: LINBIT
- Created: 2023-09-22T05:41:47.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2023-09-22T09:38:40.000Z (almost 3 years ago)
- Last Synced: 2026-03-16T21:42:03.403Z (3 months ago)
- Language: Rust
- Size: 18.6 KB
- Stars: 2
- Watchers: 8
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# agentx
This library implements all PDU types and encodings according to
[RFC2741](https://datatracker.ietf.org/doc/html/rfc2741). It provides Rust idiomatic abstractions wherever
possible and allows serialization and deserialization to/from wire compatible bytes.
## Documentation
The typical documentation including examples can be found on [docs.rs/agentx](https::/docks.rs/agentx). This
library provides all the types and PDUs the standard defines, but does not provide any higher level
abstractions that do connection handling or AgentX session handling. A full featured AgentX sub-agent
implementation can be found as part of `drbd-reactor`
[here](https://github.com/LINBIT/drbd-reactor/blob/master/src/plugin/agentx.rs). This should provide enough
hints to implement a sub-agent on your own. Because of the multi-threaded nature of `drbd-reactor`, the
implementation might look a bit overwhelming, a simple single-threaded sub-agent should be doable ways easier.
Good starting points are `agentx_handler()` for establishing a session and `Metrics::get()` and
`Metrics::get_next()` for actual PDU handling.
## License
Licensed under either of Apache License, Version 2.0 or MIT license at your option.