From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shinya Kuribayashi Date: Tue, 20 Nov 2007 00:39:49 +0900 Subject: [U-Boot-Users] [PATCH] net/eth.c: Fix env_enetaddr signed overflow In-Reply-To: <4741A8A6.5020005@qstreams.com> References: <47417308.7030100@necel.com> <4741A8A6.5020005@qstreams.com> Message-ID: <4741AE45.7090308@ruby.dti.ne.jp> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Ben Warren wrote: > Shinya Kuribayashi wrote: >> My colleague founded this problem months ago. I'd like to see this bug >> fixed in 1.3.0. Please apply. >> >> --- >> net/eth.c: Fix env_enetaddr signed overflow >> >> Assigning the output of simple_strtoul(CB:A9:87:65:43:21) to `char', we are >> warned as below: >> >> U-Boot 1.2.0 (Aug 30 2007 - 08:27:37) >> >> DRAM: 256 MB >> Flash: 32 MB >> In: serial >> Out: serial >> Err: serial >> Net: NEC-Candy >> Warning: NEC-Candy MAC addresses don't match: >> Address in SROM is 00:00:4C:80:92:A2 >> Address in environment is FFFFFFCB:FFFFFFA9:FFFFFF87:65:43:21 >> >> This patch changes env_enetaddr type from `char' to `unsigned char'. >> >> Cc: Masaki Ishikawa >> Signed-off-by: Shinya Kuribayashi >> --- >> >> net/eth.c | 3 ++- >> 1 files changed, 2 insertions(+), 1 deletions(-) >> >> diff --git a/net/eth.c b/net/eth.c >> index 1b56a35..64ef312 100644 >> --- a/net/eth.c >> +++ b/net/eth.c >> @@ -138,7 +138,8 @@ int eth_register(struct eth_device* dev) >> >> int eth_initialize(bd_t *bis) >> { >> - char enetvar[32], env_enetaddr[6]; >> + char enetvar[32]; >> + unsigned char env_enetaddr[6]; >> int i, eth_number = 0; >> char *tmp, *end; >> >> >> > This looks harmless enough, but is in a place that is touched by every > board on every architecture, and the bug doesn't really seem to hurt > anything other than printing garbage. IMHO it should wait until the next > release. I will apply it to a 'for_1.3.1' branch of the net tree. Ok, I'm afraid I have to wait. Thanks for your comment, Shinya