diff options
author | Jeff Garzik <jeff@garzik.org> | 2006-03-04 18:06:51 +0100 |
---|---|---|
committer | Jeff Garzik <jeff@garzik.org> | 2006-03-04 18:06:51 +0100 |
commit | a7a80d5ad3735554338199b9d976dfda5c10d3c7 (patch) | |
tree | fb637b295a1614b919a205896612d88673c066c6 /drivers/net/s2io.c | |
parent | [PATCH] reiserfs: do not check if unsigned < 0 (diff) | |
download | linux-a7a80d5ad3735554338199b9d976dfda5c10d3c7.tar.xz linux-a7a80d5ad3735554338199b9d976dfda5c10d3c7.zip |
s2io: set_multicast_list bug
The mac_addr variable doesn't get reset between
(re)additions of multicast addresses. One byte
of all multicast addresses (except the first)
can be incorrect.
Signed-off-by: Arthur Kepner <akepner@sgi.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
Diffstat (limited to 'drivers/net/s2io.c')
-rw-r--r-- | drivers/net/s2io.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/s2io.c b/drivers/net/s2io.c index 49b597cbc19a..b7f00d6eb6a6 100644 --- a/drivers/net/s2io.c +++ b/drivers/net/s2io.c @@ -4092,6 +4092,7 @@ static void s2io_set_multicast(struct net_device *dev) i++, mclist = mclist->next) { memcpy(sp->usr_addrs[i].addr, mclist->dmi_addr, ETH_ALEN); + mac_addr = 0; for (j = 0; j < ETH_ALEN; j++) { mac_addr |= mclist->dmi_addr[j]; mac_addr <<= 8; |