From d5f69e93887cb9ad505b7ed6394891652f393885 Mon Sep 17 00:00:00 2001 From: Michael Brown Date: Thu, 29 Aug 2013 14:10:16 +0100 Subject: [netdevice] Add concept of a network device index IPv6 link-local socket addresses require some way to specify a local network device. We cannot simply use a pointer to the network device, since a struct sockaddr_in6 may be long-lived and has no way to hold a reference to the network device. Using a network device index allows a socket address to cleanly refer to a network device without worrying about whether or not that device continues to exist. Signed-off-by: Michael Brown --- src/include/ipxe/netdevice.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/include/ipxe/netdevice.h') diff --git a/src/include/ipxe/netdevice.h b/src/include/ipxe/netdevice.h index d0e628a43..7288ad86d 100644 --- a/src/include/ipxe/netdevice.h +++ b/src/include/ipxe/netdevice.h @@ -300,6 +300,8 @@ struct net_device { struct list_head list; /** List of open network devices */ struct list_head open_list; + /** Index of this network device */ + unsigned int index; /** Name of this network device */ char name[12]; /** Underlying hardware device */ -- cgit v1.2.3-55-g7522