pub struct StreamHeader { /* private fields */ }Expand description
used to ensure man in the middle attack doesn’t occure, but used in place of the Header struct because it is much smaller
Implementations§
Source§impl StreamHeader
impl StreamHeader
pub fn new(global_hash: &str, peer_hash: &str, packet_len: usize) -> Self
pub fn with_key( global_hash: &str, peer_hash: &str, aes_key: Vec<u8>, packet_len: usize, ) -> Self
pub fn set_packet_type(&mut self, packet_type: PacketType)
pub fn packet_type(&self) -> PacketType
pub fn global_peer_hash(&self) -> &str
pub fn peer_hash(&self) -> &str
pub fn key(&self) -> &[u8] ⓘ
pub fn packet_len(&self) -> usize
pub fn data_len(&self) -> usize
pub fn set_packet_len(&mut self, packet_len: usize)
Sourcepub fn remander(&self) -> u8
pub fn remander(&self) -> u8
remander is calculated by 128 - (packet_len % 128) to break into encryptable blocks for async for sync calculated based on 16 - (packet_len % 128)
pub fn set_remander(&mut self, remander: u8)
Sourcepub fn to_raw(&self) -> Vec<u8> ⓘ
pub fn to_raw(&self) -> Vec<u8> ⓘ
used in place of serde_json::to_string(), because serde_json generates un-needed data
pub fn to_raw_padded(&self) -> Vec<u8> ⓘ
pub fn from_raw_padded(data: &[u8]) -> Result<Self, NetworkError>
Sourcepub fn from_raw(data: &[u8]) -> Result<Self, NetworkError>
pub fn from_raw(data: &[u8]) -> Result<Self, NetworkError>
convert 125 bytes (length of data) to StreamHeader
Trait Implementations§
Source§impl Clone for StreamHeader
impl Clone for StreamHeader
Source§fn clone(&self) -> StreamHeader
fn clone(&self) -> StreamHeader
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for StreamHeader
impl Debug for StreamHeader
Source§impl<'de> Deserialize<'de> for StreamHeader
impl<'de> Deserialize<'de> for StreamHeader
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl From<&Header> for StreamHeader
impl From<&Header> for StreamHeader
Source§impl From<Header> for StreamHeader
impl From<Header> for StreamHeader
Source§impl Hash for StreamHeader
impl Hash for StreamHeader
Source§impl Ord for StreamHeader
impl Ord for StreamHeader
Source§fn cmp(&self, other: &StreamHeader) -> Ordering
fn cmp(&self, other: &StreamHeader) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq<Header> for StreamHeader
impl PartialEq<Header> for StreamHeader
Source§impl PartialEq<StreamHeader> for Header
impl PartialEq<StreamHeader> for Header
Source§impl PartialEq for StreamHeader
impl PartialEq for StreamHeader
Source§impl PartialOrd for StreamHeader
impl PartialOrd for StreamHeader
Source§impl Serialize for StreamHeader
impl Serialize for StreamHeader
impl Eq for StreamHeader
impl StructuralPartialEq for StreamHeader
Auto Trait Implementations§
impl Freeze for StreamHeader
impl RefUnwindSafe for StreamHeader
impl Send for StreamHeader
impl Sync for StreamHeader
impl Unpin for StreamHeader
impl UnwindSafe for StreamHeader
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more