From f5cfd412e454f763f78cccf93e0fc16687d46ec6 Mon Sep 17 00:00:00 2001 From: Liu Jiang Date: Sun, 31 May 2020 20:50:52 +0800 Subject: [PATCH] netlink: fix an error in formatting MAC address When formatting MAC address, we should left-padding zeros instead of right-padding. Signed-off-by: Liu Jiang --- src/agent/netlink/src/parser.rs | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/agent/netlink/src/parser.rs b/src/agent/netlink/src/parser.rs index 6b4d95bdb3..134f37007a 100644 --- a/src/agent/netlink/src/parser.rs +++ b/src/agent/netlink/src/parser.rs @@ -104,11 +104,11 @@ pub unsafe fn format_address(addr: *const u8, len: u32) -> Result { let mut i = 1; let mut p = addr as i64; - a = format!("{:0<2X}", *(p as *const u8)); + a = format!("{:0>2X}", *(p as *const u8)); while i < len { p += 1; i += 1; - a.push_str(format!(":{:0<2X}", *(p as *const u8)).as_str()); + a.push_str(format!(":{:0>2X}", *(p as *const u8)).as_str()); } return Ok(a); @@ -188,7 +188,6 @@ mod tests { parse_mac_addr("FF:FF:FF:FF:FF").unwrap_err(); } - /* #[test] fn test_format_address() { let buf = [1u8, 2u8, 3u8, 4u8]; @@ -199,5 +198,4 @@ mod tests { let addr = unsafe { format_address(&buf as *const u8, 6).unwrap() }; assert_eq!(addr, "01:02:03:04:05:06"); } - */ }