ekko/lib.rs
1//! Ekko aims to be a light utility for sending echo requests; currently in its early stages.
2//!
3//! ## Example
4//! ```rust,no_run
5//! use ekko::{
6//!
7//! EkkoResponse,
8//! EkkoError,
9//! Ekko,
10//! };
11//!
12//! fn main() -> Result<(), EkkoError> {
13//! let sender = Ekko::with_target([8, 8, 8, 8])?;
14//!
15//! for hops in 0..32 {
16//! let responses = sender.send_range(0..hops)?;
17//! for ekko in responses.iter() {
18//! match ekko {
19//!
20//! EkkoResponse::Destination(_) => {
21//! for ekko in responses.iter() {
22//! println!("{:?}", ekko)
23//! }
24//!
25//! return Ok(())
26//! }
27//!
28//! ekko => continue
29//! }
30//! }
31//! }
32//!
33//! Ok(())
34//! }
35//! ```
36
37mod responses;
38mod packets;
39mod sender;
40mod error;
41
42pub use error::{EkkoError};
43
44pub use sender::{
45
46 EkkoSettings,
47 Ekko,
48};
49
50pub use responses::{
51
52 UnreachableCodeV6,
53 UnreachableCodeV4,
54 Unreachable,
55 Redirect,
56
57 EkkoResponse,
58 EkkoData,
59};