summaryrefslogtreecommitdiffstats
path: root/src/include/ipxe
diff options
context:
space:
mode:
authorMichael Brown2023-01-14 01:31:54 +0100
committerMichael Brown2023-01-15 01:42:52 +0100
commitc4c03e5be867a9b7be4dc48fe6576deca1dce8d8 (patch)
tree58243f0e5ae2b1907f7291de19de9416b288a565 /src/include/ipxe
parent[netdevice] Separate concept of scope ID from network device name index (diff)
downloadipxe-c4c03e5be867a9b7be4dc48fe6576deca1dce8d8.tar.gz
ipxe-c4c03e5be867a9b7be4dc48fe6576deca1dce8d8.tar.xz
ipxe-c4c03e5be867a9b7be4dc48fe6576deca1dce8d8.zip
[netdevice] Allow duplicate MAC addresses
Many laptops now include the ability to specify a "system-specific MAC address" (also known as "pass-through MAC"), which is supposed to be used for both the onboard NIC and for any attached docking station or other USB NIC. This is intended to simplify interoperability with software or hardware that relies on a MAC address to recognise an individual machine: for example, a deployment server may associate the MAC address with a particular operating system image to be deployed. This therefore creates legitimate situations in which duplicate MAC addresses may exist within the same system. As described in commit 98d09a1 ("[netdevice] Avoid registering duplicate network devices"), the Xen netfront driver relies on the rejection of duplicate MAC addresses in order to inhibit registration of the emulated PCI devices that a Xen PV-HVM guest will create to shadow each of the paravirtual network devices. Move the code that rejects duplicate MAC addresses from the network device core to the Xen netfront driver, to allow for the existence of duplicate MAC addresses in non-Xen setups. Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/include/ipxe')
-rw-r--r--src/include/ipxe/netdevice.h2
1 files changed, 0 insertions, 2 deletions
diff --git a/src/include/ipxe/netdevice.h b/src/include/ipxe/netdevice.h
index 29358dba0..af932c259 100644
--- a/src/include/ipxe/netdevice.h
+++ b/src/include/ipxe/netdevice.h
@@ -729,8 +729,6 @@ extern struct net_device * find_netdev ( const char *name );
extern struct net_device * find_netdev_by_scope_id ( unsigned int scope_id );
extern struct net_device * find_netdev_by_location ( unsigned int bus_type,
unsigned int location );
-extern struct net_device *
-find_netdev_by_ll_addr ( struct ll_protocol *ll_protocol, const void *ll_addr );
extern struct net_device * last_opened_netdev ( void );
extern int net_tx ( struct io_buffer *iobuf, struct net_device *netdev,
struct net_protocol *net_protocol, const void *ll_dest,