From 0c7dd54139470b2c458da5fed40c3aa7d19d87e8 Mon Sep 17 00:00:00 2001 From: Sunil Nimmagadda Date: Tue, 1 Jul 2025 23:06:02 +0530 Subject: Use constants. --- src/vrrpv2.rs | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/vrrpv2.rs b/src/vrrpv2.rs index fa41696..bcb2315 100644 --- a/src/vrrpv2.rs +++ b/src/vrrpv2.rs @@ -25,6 +25,11 @@ use std::net::Ipv4Addr; /// | Authentication Data (2) | /// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ /// ``` + +const VERSION: u8 = 2; +const TYPE: u8 = 1; +const VERSION_TYPE: u8 = (VERSION << 4) | TYPE; // 0x21 + #[derive(Debug, PartialEq)] pub struct VRRPv2 { pub virtual_router_id: u8, @@ -106,7 +111,7 @@ impl VRRPv2 { let mut wr = Cursor::new(bytes); wr.write_all( [ - 0x21, + VERSION_TYPE, self.virtual_router_id, self.priority, self.ip_addrs.len() as u8, @@ -132,8 +137,8 @@ impl VRRPv2 { fn parse(bytes: &[u8]) -> Result { let mut rdr = Cursor::new(bytes); match rdr.read_u8()? { - i if (i & 0xF) != 1 => return Err(VRRPv2Error::InvalidType), - i if (i >> 4) != 2 => return Err(VRRPv2Error::InvalidVersion), + i if (i & 0xF) != TYPE => return Err(VRRPv2Error::InvalidType), + i if (i >> 4) != VERSION => return Err(VRRPv2Error::InvalidVersion), _ => {} }; let virtual_router_id = rdr.read_u8()?; -- cgit v1.2.3