pub struct VCLPacket {
pub version: u8,
pub packet_type: PacketType,
pub sequence: u64,
pub prev_hash: Vec<u8>,
pub nonce: [u8; 24],
pub payload: Vec<u8>,
pub signature: Vec<u8>,
}Fields§
§version: u8§packet_type: PacketType§sequence: u64§prev_hash: Vec<u8>§nonce: [u8; 24]§payload: Vec<u8>§signature: Vec<u8>Implementations§
Source§impl VCLPacket
impl VCLPacket
Sourcepub fn new(
sequence: u64,
prev_hash: Vec<u8>,
payload: Vec<u8>,
nonce: [u8; 24],
) -> Self
pub fn new( sequence: u64, prev_hash: Vec<u8>, payload: Vec<u8>, nonce: [u8; 24], ) -> Self
Create a Data packet (default, used by send())
Sourcepub fn new_typed(
sequence: u64,
prev_hash: Vec<u8>,
payload: Vec<u8>,
nonce: [u8; 24],
packet_type: PacketType,
) -> Self
pub fn new_typed( sequence: u64, prev_hash: Vec<u8>, payload: Vec<u8>, nonce: [u8; 24], packet_type: PacketType, ) -> Self
Create a packet of a specific type (used internally)
pub fn compute_hash(&self) -> Vec<u8> ⓘ
pub fn sign(&mut self, private_key: &[u8]) -> Result<(), VCLError>
pub fn verify(&self, public_key: &[u8]) -> Result<bool, VCLError>
pub fn validate_chain(&self, expected_prev_hash: &[u8]) -> bool
pub fn serialize(&self) -> Vec<u8> ⓘ
pub fn deserialize(data: &[u8]) -> Result<Self, VCLError>
Trait Implementations§
Source§impl<'de> Deserialize<'de> for VCLPacket
impl<'de> Deserialize<'de> for VCLPacket
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
Auto Trait Implementations§
impl Freeze for VCLPacket
impl RefUnwindSafe for VCLPacket
impl Send for VCLPacket
impl Sync for VCLPacket
impl Unpin for VCLPacket
impl UnsafeUnpin for VCLPacket
impl UnwindSafe for VCLPacket
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