6 releases (breaking)
0.6.0 | Sep 13, 2021 |
---|---|
0.5.0 | Nov 30, 2020 |
0.4.0 | Aug 1, 2019 |
0.3.0 | Feb 25, 2019 |
0.1.0 | Nov 3, 2017 |
#2968 in Parser implementations
347 downloads per month
12KB
169 lines
openvpn-parser
Overview
openvpn-parser is a parser for the (OpenVPN) protocol.
It can be used to decode the packet structures, access fields and verify some properties.
The content of the Control
packets uses the TLS protocol, so
tls-parser can be used to decode the messages.
The parser does not decrypt messages.
This crate mostly serves as a demo/example crate for network protocol parsers written using nom, and nom-derive.
Notes
Writen in great pain, due to lack of specifications, and a number of fields defined in a very useless way, like "usually 16 or 20 bytes".
Closest thing to specifications:
- https://openvpn.net/index.php/open-source/documentation/security-overview.html
- http://ipseclab.eit.lth.se/tiki-index.php?page=6.+OpenVPN
- OpenVPN source code
- OpenVPN wireshark parser
License
Licensed under either of
- Apache License, Version 2.0 (LICENSE-APACHE or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)
at your option.
Contribution
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.
Dependencies
~1MB
~19K SLoC