summaryrefslogtreecommitdiffstats
path: root/sys/netipx/ipx_if.h
diff options
context:
space:
mode:
authorrwatson <rwatson@FreeBSD.org>2009-06-24 20:57:50 +0000
committerrwatson <rwatson@FreeBSD.org>2009-06-24 20:57:50 +0000
commitbba6f515e19ca176e6be472f1fbee79fbf2ce841 (patch)
tree2b5b6bfb21ef66c0d83838b50b6e0ad11de4887e /sys/netipx/ipx_if.h
parent4713c64cd8653c1bac249375659349df8bd7906e (diff)
downloadFreeBSD-src-bba6f515e19ca176e6be472f1fbee79fbf2ce841.zip
FreeBSD-src-bba6f515e19ca176e6be472f1fbee79fbf2ce841.tar.gz
Use queue(9) instead of hand-crafted link lists for the global IPX
address list (ipx_ifaddr -> ipx_ifaddrhead), and generally adopt the naming and usage conventions found in netinet. MFC after: 6 weeks
Diffstat (limited to 'sys/netipx/ipx_if.h')
-rw-r--r--sys/netipx/ipx_if.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/sys/netipx/ipx_if.h b/sys/netipx/ipx_if.h
index fbf5547..ab5ee79 100644
--- a/sys/netipx/ipx_if.h
+++ b/sys/netipx/ipx_if.h
@@ -75,7 +75,7 @@ struct ipx_ifaddr {
struct ifaddr ia_ifa; /* protocol-independent info */
#define ia_ifp ia_ifa.ifa_ifp
#define ia_flags ia_ifa.ifa_flags
- struct ipx_ifaddr *ia_next; /* next in list of ipx addresses */
+ TAILQ_ENTRY(ipx_ifaddr) ia_link; /* list of IPv6 addresses */
struct sockaddr_ipx ia_addr; /* reserve space for my address */
struct sockaddr_ipx ia_dstaddr; /* space for my broadcast address */
#define ia_broadaddr ia_dstaddr
@@ -88,6 +88,12 @@ struct ipx_aliasreq {
struct sockaddr_ipx ifra_broadaddr;
#define ifra_dstaddr ifra_broadaddr
};
+
+/*
+ * List of ipx_ifaddr's.
+ */
+TAILQ_HEAD(ipx_ifaddrhead, ipx_ifaddr);
+
/*
* Given a pointer to an ipx_ifaddr (ifaddr),
* return a pointer to the addr as a sockadd_ipx.
@@ -106,7 +112,7 @@ struct ipx_aliasreq {
#ifdef _KERNEL
extern struct rwlock ipx_ifaddr_rw;
-extern struct ipx_ifaddr *ipx_ifaddr;
+extern struct ipx_ifaddrhead ipx_ifaddrhead;
#define IPX_IFADDR_LOCK_INIT() rw_init(&ipx_ifaddr_rw, "ipx_ifaddr_rw")
#define IPX_IFADDR_LOCK_ASSERT() rw_assert(&ipx_ifaddr_rw, RA_LOCKED)
OpenPOWER on IntegriCloud