1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#![allow(clippy::len_without_is_empty)]
#![allow(dead_code)]
pub mod sequence;
pub mod error;
pub mod layers;
pub mod sessions;
pub mod utils;
mod private {
pub trait Sealed {}
}
#[cfg(test)]
mod tests {
use crate::layers::ip::Ipv4;
use crate::layers::tcp::{Tcp, TcpRef};
use crate::layers::traits::*;
use crate::layers::traits::extras::*;
use crate::parse_layers;
use crate::sequence::*;
#[test]
fn from_the_layers() {
let bytes = b"hello".as_slice();
let _tcp = Tcp::from_bytes(bytes);
let tcpref = TcpRef::from_bytes_unchecked(bytes);
let _into_tcp: Tcp = tcpref.into();
let _layers = parse_layers!(bytes, Tcp, Tcp, Ipv4).unwrap();
}
#[test]
fn multi_layer_sequence() {
let ip1 = Ipv4Sequence::new();
let mut layered_seq = LayeredSequence::new(ip1, false)
.add(Ipv4Sequence::new(), true)
.add(Ipv4Sequence::new(), false)
.add(Ipv4Sequence::new(), true);
}
}