diff options
author | rpokala <rpokala@FreeBSD.org> | 2017-05-17 22:29:25 +0000 |
---|---|---|
committer | Renato Botelho <renato@netgate.com> | 2017-05-18 07:48:53 -0300 |
commit | d97064d770b5fe7f4ea2dc4cd031e829b1a1a0e3 (patch) | |
tree | 249be7e31228212b398dcfd17f236ef0ba600eaa /sys/sys | |
parent | bbfdb9a1d32f8fbc853e0422c9916f660f048893 (diff) | |
download | FreeBSD-src-d97064d770b5fe7f4ea2dc4cd031e829b1a1a0e3.zip FreeBSD-src-d97064d770b5fe7f4ea2dc4cd031e829b1a1a0e3.tar.gz |
MFC r318160, 318176: Persistently store NIC's hardware MAC address, and add
a way to retrive it
NOTE: Due to restructuring, the merges didn't apply cleanly; the resulting
change is almost identical to what went into stable/11, but in some cases in
different locations.
The MAC address reported by `ifconfig ${nic} ether' does not always match
the address in the hardware, as reported by the driver during attach. In
particular, NICs which are components of a lagg(4) interface all report the
same MAC.
When attaching, the NIC driver passes the MAC address it read from the
hardware as an argument to ether_ifattach(). Keep a second copy of it, and
create ioctl(SIOCGHWADDR) to return it. Teach `ifconfig' to report it along
with the active MAC address.
PR: 194386
(cherry picked from commit 2ce46e31d62424593e08c3853efe8c1e9283aba2)
Diffstat (limited to 'sys/sys')
-rw-r--r-- | sys/sys/sockio.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/sys/sockio.h b/sys/sys/sockio.h index 0ad221b..9c450c3 100644 --- a/sys/sys/sockio.h +++ b/sys/sys/sockio.h @@ -97,6 +97,7 @@ #define SIOCGIFSTATUS _IOWR('i', 59, struct ifstat) /* get IF status */ #define SIOCSIFLLADDR _IOW('i', 60, struct ifreq) /* set linklevel addr */ #define SIOCGI2C _IOWR('i', 61, struct ifreq) /* get I2C data */ +#define SIOCGHWADDR _IOWR('i', 62, struct ifreq) /* get hardware lladdr */ #define SIOCSIFPHYADDR _IOW('i', 70, struct ifaliasreq) /* set gif addres */ #define SIOCGIFPSRCADDR _IOWR('i', 71, struct ifreq) /* get gif psrc addr */ |