From e8174f07732ff0569ed2878273fdc6e55eea37cf Mon Sep 17 00:00:00 2001 From: Sebastien Bourdeauducq Date: Tue, 8 Aug 2017 10:48:59 +0800 Subject: [PATCH] config fixes --- firmware/src/config.rs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/firmware/src/config.rs b/firmware/src/config.rs index ffec9ef..9528c85 100644 --- a/firmware/src/config.rs +++ b/firmware/src/config.rs @@ -21,9 +21,10 @@ impl EepromReader { if self.buffer[0] != MAGIC { return false; } - let cksum = self.buffer[0] as u32 | (self.buffer[1] as u32) << 8 | - (self.buffer[2] as u32) << 16 | (self.buffer[3] as u32) << 24; - if crc32::checksum_ieee(&self.buffer[0..self.buffer.len()-4]) != cksum { + let len = self.buffer.len(); + let cksum = self.buffer[len-4] as u32 | (self.buffer[len-3] as u32) << 8 | + (self.buffer[len-2] as u32) << 16 | (self.buffer[len-1] as u32) << 24; + if crc32::checksum_ieee(&self.buffer[0..len-4]) != cksum { return false; } true @@ -83,5 +84,6 @@ impl Config { _ => panic!("unsupported network address") }; payload[0..4].copy_from_slice(&ip4); + write_eeprom_payload(&payload); } }