Skip to main content

openvpn_mgmt_codec/
lib.rs

1#![doc = include_str!("../README.md")]
2#![deny(unsafe_code)]
3#![warn(missing_docs)]
4
5/// Authentication credential types and retry strategies.
6pub mod auth;
7/// Client notification event types (CONNECT, REAUTH, etc.).
8pub mod client_event;
9/// The [`OvpnCodec`] encoder/decoder implementation.
10pub mod codec;
11/// Typed management-interface commands ([`OvpnCommand`]).
12pub mod command;
13/// Client kill-target addressing.
14pub mod kill_target;
15/// Log severity levels (Info, Debug, Warning, etc.).
16pub mod log_level;
17/// Decoded messages and real-time notifications.
18pub mod message;
19/// Responses to `>NEED-OK:` prompts.
20pub mod need_ok;
21/// OpenVPN connection states (CONNECTING, CONNECTED, etc.).
22pub mod openvpn_state;
23/// Typed parsers for `SUCCESS:` payloads and multi-line responses.
24pub mod parsed_response;
25/// Proxy configuration for `>PROXY:` responses.
26pub mod proxy_action;
27/// A wrapper type that masks sensitive values in debug/display output.
28pub mod redacted;
29/// Remote-override actions for `>REMOTE:` responses.
30pub mod remote_action;
31/// Daemon signals (HUP, TERM, USR1, USR2).
32pub mod signal;
33/// Status output format versions (V1/V2/V3).
34pub mod status_format;
35/// Stream adapter categorizing messages as responses or notifications.
36pub mod stream;
37/// Stream mode selectors (on/off/all/recent).
38pub mod stream_mode;
39/// Transport protocol (UDP, TCP) for remote/proxy notifications.
40pub mod transport_protocol;
41/// Error classification for unrecognized protocol lines.
42pub mod unrecognized;
43/// Parsed version information from the `version` command.
44pub mod version_info;
45
46pub use auth::{AuthRetryMode, AuthType};
47pub use client_event::ClientEvent;
48pub use codec::{AccumulationLimit, EncodeError, EncoderMode, OvpnCodec};
49pub use command::OvpnCommand;
50pub use kill_target::KillTarget;
51pub use log_level::LogLevel;
52pub use message::{Notification, OvpnMessage, PasswordNotification};
53pub use need_ok::NeedOkResponse;
54pub use openvpn_state::OpenVpnState;
55pub use proxy_action::ProxyAction;
56pub use redacted::Redacted;
57pub use remote_action::RemoteAction;
58pub use signal::Signal;
59pub use status_format::StatusFormat;
60pub use stream_mode::StreamMode;
61pub use transport_protocol::TransportProtocol;
62pub use unrecognized::UnrecognizedKind;
63pub use version_info::VersionInfo;