Still confused by lsb/msb.
authorSunil Nimmagadda <sunil@nimmagadda.net>
Wed, 17 Jan 2024 16:41:29 +0530
changeset 21 17afb5ba9c2b
parent 20 fd3474f42783
child 22 809a5a9e5dd9
Still confused by lsb/msb.
src/vrrpv2.rs
--- a/src/vrrpv2.rs	Wed Jan 17 15:23:51 2024 +0530
+++ b/src/vrrpv2.rs	Wed Jan 17 16:41:29 2024 +0530
@@ -83,10 +83,10 @@
         return Err(VRRPv2Error::ParseError);
     };
     if (vertype & 0xF) != 1 {
-        return Err(VRRPv2Error::InvalidVersion);
+        return Err(VRRPv2Error::InvalidType);
     }
     if (vertype >> 4) != 2 {
-        return Err(VRRPv2Error::InvalidType);
+        return Err(VRRPv2Error::InvalidVersion);
     }
     let Ok(virtual_router_id) = rdr.read_u8() else {
         return Err(VRRPv2Error::ParseError);
@@ -188,7 +188,7 @@
 #[test]
 fn test_invalid_version() {
     let bytes = [
-        0x20, 0x1, 0x2a, 0x0, 0x0, 0x1, 0xb5, 0xfd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
+        0x31, 0x1, 0x2a, 0x0, 0x0, 0x1, 0xb5, 0xfd, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0,
         0x0, 0x0, 0x0,
     ];
     assert_eq!(from_bytes(&bytes), Err(VRRPv2Error::InvalidVersion));
@@ -197,7 +197,7 @@
 #[test]
 fn test_invalid_type() {
     let bytes = [
-        0x31, 0x2a, 0x64, 0x1, 0x0, 0x1, 0xaa, 0x29, 0xc0, 0xa8, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0,
+        0x20, 0x2a, 0x64, 0x1, 0x0, 0x1, 0xaa, 0x29, 0xc0, 0xa8, 0x0, 0x1, 0x0, 0x0, 0x0, 0x0, 0x0,
         0x0, 0x0, 0x0,
     ];
     assert_eq!(from_bytes(&bytes), Err(VRRPv2Error::InvalidType));