From 361d17fdb9ef282f9e3226e59c25a3cecf48a335 Mon Sep 17 00:00:00 2001 From: joerg Date: Fri, 17 Jan 1997 23:56:20 +0000 Subject: Round #2. This basically brings back the changes from rev 1.12. I have only separated both to make it more convenient merging all this into 2.2. --- sys/net/if_fddisubr.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'sys/net') diff --git a/sys/net/if_fddisubr.c b/sys/net/if_fddisubr.c index fad3c65..12d9561 100644 --- a/sys/net/if_fddisubr.c +++ b/sys/net/if_fddisubr.c @@ -693,12 +693,19 @@ fddi_ifattach(ifp) #ifdef IFF_NOTRAILERS ifp->if_flags |= IFF_NOTRAILERS; #endif -#if defined(__NetBSD__) +#if defined(__FreeBSD__) + ifa = ifnet_addrs[ifp->if_index - 1]; + sdl = (struct sockaddr_dl *)ifa->ifa_addr; + sdl->sdl_type = IFT_FDDI; + sdl->sdl_alen = ifp->if_addrlen; + bcopy(((struct arpcom *)ifp)->ac_enaddr, LLADDR(sdl), ifp->if_addrlen); +#elif defined(__NetBSD__) LIST_INIT(&((struct arpcom *)ifp)->ac_multiaddrs); for (ifa = ifp->if_addrlist.tqh_first; ifa != NULL; ifa = ifa->ifa_list.tqe_next) #else for (ifa = ifp->if_addrlist; ifa != NULL; ifa = ifa->ifa_next) #endif +#if !defined(__FreeBSD__) if ((sdl = (struct sockaddr_dl *)ifa->ifa_addr) && sdl->sdl_family == AF_LINK) { sdl->sdl_type = IFT_FDDI; @@ -707,4 +714,5 @@ fddi_ifattach(ifp) LLADDR(sdl), ifp->if_addrlen); break; } +#endif } -- cgit v1.1