Crate openvpn_parser[−][src]
Expand description
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
Re-exports
pub use nom;
Structs
OpenVPN packet header
OpenVPN packet
Payload for P_ACK messages
Payload for P_CONTROL messages
Payload for P_DATA messages
Enums
Payload for OpenVPN data
Functions
Parse an OpenVPN packet in TCP
Parse an OpenVPN packet in UDP