Subject: Re: setting ethernet interface hardware address?
To: Kyunghwan KIM <redjade@ada.snu.ac.kr>
From: Jason R Thorpe <thorpej@wasabisystems.com>
List: tech-net
Date: 10/16/2001 21:26:10
On Wed, Oct 17, 2001 at 01:02:38PM +0900, Kyunghwan KIM wrote:
> On Tue, Oct 16, 2001 at 06:29:06PM -0500, Alfred Perlstein wrote:
> > Most likely I would be porting the FreeBSD system which is the
> > SIOCLLADDR interface. If there's something particularly gross
> > about it please speak up as soon as possible.
>
> SIOCGIFLLADDR exactly. :)
SIOCGIFLLADDR is not the correct way to do this.
SIOCSIFADDR *would* have been fine if the ifreq were large enough to
hold a sockaddr_dl with an Ethernet address, etc. But it's not,
so the appropriate thing to do is to have an SIOCSIFADDR equivalent
that uses an ifreq-like structure that has a sockaddr_storage (or
a pointer to another sockaddr structure in userland and a "len"
field).
In fact, the SIOCALIFADDR ioctl is close .. but we don't want "add"
semantics, we want "set" semantics -- so we'd want to have an
SIOCSLIFADDR ioctl that used the same arg structure.
--
-- Jason R. Thorpe <thorpej@wasabisystems.com>