Getting MAC address?

Ivan Voras ivoras at fer.hr
Sat Jun 26 02:17:05 PDT 2004


Dmitry Morozovsky wrote:
> On Sat, 26 Jun 2004, Ivan Voras wrote:
> 
> IV> How to get the MAC address for an (ethernet) interface? The linux code
> IV> does this:
> IV> 	retval = ioctl(thisint->sockInt, SIOCGIFHWADDR, &ifr);
> IV>
> IV> After some searching, I found SIOCSIFLLADDR ioctl, but it appears there
> IV> isn't a "GET" counterpart.
> IV>
> IV> (I've got interface name & index available...)
> 
> Take a look at ifconfig(8) source.
> 
> getifaddrs(3), case when sa_family == AF_LINK

I was looking at it and came across getifaddrs(). This function does not 
depend on a open socket (yes, mine is AF_LINK, sockaddr_dl), and 
apparently returns a list of all interfaces. Is there really no other 
way than to traverse this list?

-- 
What part of "Ph'nglui mglw'nath Cthulhu R'lyeh wgah'nagl fhtagn" don't
you understand?


More information about the freebsd-hackers mailing list