#pdu #byte #deserialize #abstraction #serialization #standard

agentx

AgentX library implementing all PDU types and encodings according to the standard

2 releases

0.1.1 Sep 22, 2023
0.1.0 Sep 22, 2023

#910 in Encoding

Download history 1/week @ 2024-02-12 38/week @ 2024-02-19 9/week @ 2024-02-26 11/week @ 2024-03-04 56/week @ 2024-03-11 10/week @ 2024-03-25 35/week @ 2024-04-01

104 downloads per month

MIT/Apache

95KB
2K SLoC

agentx

This library implements all PDU types and encodings according to 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. 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. 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.

No runtime deps