Messages in this thread | | | Date | Thu, 01 Mar 2012 16:21:30 -0500 (EST) | Subject | Re: [PATCH v2 1/7] net: validate MAC address directly in dev_set_mac_address() | From | David Miller <> |
| |
From: Ben Hutchings <bhutchings@solarflare.com> Date: Thu, 1 Mar 2012 17:51:29 +0000
> On Thu, 2012-03-01 at 17:52 +0100, Danny Kukawka wrote: >> Validate the given MAC address directly in dev_set_mac_address() >> if a .ndo_validate_addr function is available before calling >> the .ndo_set_mac_address function. >> >> Changed .ndo_validate_addr to take a second parameter containing >> a sockaddr struct to be checked instead of the net_device dev_addr. >> The behaviour of .ndo_validate_addr is now: if the second parameter >> is NULL the net_device->dev_addr gets validate, if != NULL >> the given parameter/sockaddr gets validated instead. > [...] > > The caller is assumed to have validated the address family, so why not > just pass a pointer to the hardware address (u8 *), and get rid of the > special case for NULL? > > That is, dev_set_mac_address would call: > ops->ndo_validate_addr(dev, sa->sa_data); > and dev_open would call: > ops->ndo_validate_addr(dev, dev->dev_addr);
Yes, this looks a lot better.
| |