summaryrefslogtreecommitdiffstats
path: root/sys/netipx
diff options
context:
space:
mode:
authorwollman <wollman@FreeBSD.org>1996-12-13 21:29:07 +0000
committerwollman <wollman@FreeBSD.org>1996-12-13 21:29:07 +0000
commit3417f9411098d1cd19c5db539c0768e778b83a1c (patch)
tree782c07e423375f5e3235e7a677261301a91e59c6 /sys/netipx
parent4ad813db29ba756a35db6540961c86a4c1f5592b (diff)
downloadFreeBSD-src-3417f9411098d1cd19c5db539c0768e778b83a1c.zip
FreeBSD-src-3417f9411098d1cd19c5db539c0768e778b83a1c.tar.gz
Convert the interface address and IP interface address structures
to TAILQs. Fix places which referenced these for no good reason that I can see (the references remain, but were fixed to compile again; they are still questionable).
Diffstat (limited to 'sys/netipx')
-rw-r--r--sys/netipx/ipx.c31
-rw-r--r--sys/netipx/ipx_input.c6
-rw-r--r--sys/netipx/ipx_ip.c7
-rw-r--r--sys/netipx/ipx_usrreq.c5
4 files changed, 18 insertions, 31 deletions
diff --git a/sys/netipx/ipx.c b/sys/netipx/ipx.c
index b33a7ac..764e597 100644
--- a/sys/netipx/ipx.c
+++ b/sys/netipx/ipx.c
@@ -33,7 +33,7 @@
*
* @(#)ipx.c
*
- * $Id: ipx.c,v 1.3 1995/11/04 09:02:34 julian Exp $
+ * $Id: ipx.c,v 1.4 1996/03/11 15:13:46 davidg Exp $
*/
#include <sys/param.h>
@@ -142,20 +142,14 @@ ipx_control(so, cmd, data, ifp)
} else
ipx_ifaddr = oia;
ia = oia;
- if ((ifa = ifp->if_addrlist)) {
- for ( ; ifa->ifa_next; ifa = ifa->ifa_next)
- ;
- ifa->ifa_next = (struct ifaddr *) ia;
- } else
- ifp->if_addrlist = (struct ifaddr *) ia;
+ ifa = (struct ifaddr *)ia;
+ TAILQ_INSERT_TAIL(&ifp->if_addrhead, ifa, ifa_link);
ia->ia_ifp = ifp;
- ia->ia_ifa.ifa_addr = (struct sockaddr *)&ia->ia_addr;
+ ifa->ifa_addr = (struct sockaddr *)&ia->ia_addr;
- ia->ia_ifa.ifa_netmask =
- (struct sockaddr *)&ipx_netmask;
+ ifa->ifa_netmask = (struct sockaddr *)&ipx_netmask;
- ia->ia_ifa.ifa_dstaddr =
- (struct sockaddr *)&ia->ia_dstaddr;
+ ifa->ifa_dstaddr = (struct sockaddr *)&ia->ia_dstaddr;
if (ifp->if_flags & IFF_BROADCAST) {
ia->ia_broadaddr.sipx_family = AF_IPX;
ia->ia_broadaddr.sipx_len = sizeof(ia->ia_addr);
@@ -188,17 +182,8 @@ ipx_control(so, cmd, data, ifp)
case SIOCDIFADDR:
ipx_ifscrub(ifp, ia);
- if ((ifa = ifp->if_addrlist) == (struct ifaddr *)ia)
- ifp->if_addrlist = ifa->ifa_next;
- else {
- while (ifa->ifa_next &&
- (ifa->ifa_next != (struct ifaddr *)ia))
- ifa = ifa->ifa_next;
- if (ifa->ifa_next)
- ifa->ifa_next = ((struct ifaddr *)ia)->ifa_next;
- else
- printf("Couldn't unlink ipxifaddr from ifp\n");
- }
+ ifa = (struct ifaddr *)ia;
+ TAILQ_REMOVE(&ifp->if_addrhead, ifa, ifa_link);
oia = ia;
if (oia == (ia = ipx_ifaddr)) {
ipx_ifaddr = ia->ia_next;
diff --git a/sys/netipx/ipx_input.c b/sys/netipx/ipx_input.c
index b49c79d..e1b5b8b 100644
--- a/sys/netipx/ipx_input.c
+++ b/sys/netipx/ipx_input.c
@@ -33,7 +33,7 @@
*
* @(#)ipx_input.c
*
- * $Id: ipx_input.c,v 1.8 1996/03/11 15:13:48 davidg Exp $
+ * $Id: ipx_input.c,v 1.9 1996/08/18 08:38:15 jhay Exp $
*/
#include <sys/param.h>
@@ -512,8 +512,8 @@ struct ifnet *ifp;
ipx->ipx_sna.x_net = ipx_zeronet;
ipx->ipx_sna.x_host = ipx_thishost;
if (ifp && (ifp->if_flags & IFF_POINTOPOINT))
- for(ifa = ifp->if_addrlist; ifa;
- ifa = ifa->ifa_next) {
+ for(ifa = ifp->if_addrhead.tqh_first; ifa;
+ ifa = ifa->ifa_link.tqe_next) {
if (ifa->ifa_addr->sa_family==AF_IPX) {
ipx->ipx_sna = IA_SIPX(ifa)->sipx_addr;
break;
diff --git a/sys/netipx/ipx_ip.c b/sys/netipx/ipx_ip.c
index e336205..d12a8ef 100644
--- a/sys/netipx/ipx_ip.c
+++ b/sys/netipx/ipx_ip.c
@@ -33,7 +33,7 @@
*
* @(#)ipx_ip.c
*
- * $Id: ipx_ip.c,v 1.8 1996/05/08 19:31:45 jhay Exp $
+ * $Id: ipx_ip.c,v 1.9 1996/06/12 05:10:27 gpalmer Exp $
*/
/*
@@ -334,11 +334,12 @@ ipxip_route(so, m)
register struct in_ifaddr *ia;
struct ifnet *ifp = ro.ro_rt->rt_ifp;
- for (ia = in_ifaddr; ia; ia = ia->ia_next)
+ for (ia = in_ifaddrhead.tqh_first; ia;
+ ia = ia->ia_link.tqe_next)
if (ia->ia_ifp == ifp)
break;
if (ia == 0)
- ia = in_ifaddr;
+ ia = in_ifaddrhead.tqh_first;
if (ia == 0) {
RTFREE(ro.ro_rt);
return (EADDRNOTAVAIL);
diff --git a/sys/netipx/ipx_usrreq.c b/sys/netipx/ipx_usrreq.c
index 9746f47..0601e93 100644
--- a/sys/netipx/ipx_usrreq.c
+++ b/sys/netipx/ipx_usrreq.c
@@ -33,7 +33,7 @@
*
* @(#)ipx_usrreq.c
*
- * $Id: ipx_usrreq.c,v 1.7 1996/05/08 19:31:48 jhay Exp $
+ * $Id: ipx_usrreq.c,v 1.8 1996/11/24 08:25:48 jhay Exp $
*/
#include <sys/param.h>
@@ -100,7 +100,8 @@ ipx_input(m, ipxp)
if (ipx_neteqnn(ipx->ipx_sna.x_net, ipx_zeronet) && ifp) {
register struct ifaddr *ifa;
- for (ifa = ifp->if_addrlist; ifa; ifa = ifa->ifa_next) {
+ for (ifa = ifp->if_addrhead.tqh_first; ifa;
+ ifa = ifa->ifa_link.tqe_next) {
if (ifa->ifa_addr->sa_family == AF_IPX) {
ipx_ipx.sipx_addr.x_net =
IA_SIPX(ifa)->sipx_addr.x_net;
OpenPOWER on IntegriCloud