Date: Fri, 6 Aug 2010 15:09:21 +0000 (UTC) From: John Baldwin <jhb@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r210936 - in head: contrib/bsnmp/snmp_mibII sbin/ifconfig usr.sbin/ndp usr.sbin/ppp Message-ID: <201008061509.o76F9LWE050463@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jhb Date: Fri Aug 6 15:09:21 2010 New Revision: 210936 URL: http://svn.freebsd.org/changeset/base/210936 Log: Ethernet vlan(4) interfaces have valid Ethernet link layer addresses but use a different interface type (IFT_L2VLAN vs IFT_ETHER). Treat IFT_L2VLAN interfaces like IFT_ETHER interfaces when handling link layer addresses. Reviewed by: syrinx (bsnmpd) MFC after: 1 week Modified: head/contrib/bsnmp/snmp_mibII/mibII.c head/sbin/ifconfig/af_link.c head/sbin/ifconfig/ifconfig.c head/usr.sbin/ndp/ndp.c head/usr.sbin/ppp/ipv6cp.c Modified: head/contrib/bsnmp/snmp_mibII/mibII.c ============================================================================== --- head/contrib/bsnmp/snmp_mibII/mibII.c Fri Aug 6 15:04:40 2010 (r210935) +++ head/contrib/bsnmp/snmp_mibII/mibII.c Fri Aug 6 15:09:21 2010 (r210936) @@ -843,6 +843,7 @@ check_llbcast(struct mibif *ifp) case IFT_ETHER: case IFT_FDDI: case IFT_ISO88025: + case IFI_L2VLAN: if (mib_find_rcvaddr(ifp->index, ether_bcast, 6) == NULL && (rcv = mib_rcvaddr_create(ifp, ether_bcast, 6)) != NULL) rcv->flags |= MIBRCVADDR_BCAST; Modified: head/sbin/ifconfig/af_link.c ============================================================================== --- head/sbin/ifconfig/af_link.c Fri Aug 6 15:04:40 2010 (r210935) +++ head/sbin/ifconfig/af_link.c Fri Aug 6 15:09:21 2010 (r210936) @@ -58,7 +58,9 @@ link_status(int s __unused, const struct struct sockaddr_dl *sdl = (struct sockaddr_dl *) ifa->ifa_addr; if (sdl != NULL && sdl->sdl_alen > 0) { - if (sdl->sdl_type == IFT_ETHER && + if ((sdl->sdl_type == IFT_ETHER || + sdl->sdl_type == IFT_L2VLAN || + sdl->sdl_type == IFT_BRIDGE) && sdl->sdl_alen == ETHER_ADDR_LEN) printf("\tether %s\n", ether_ntoa((struct ether_addr *)LLADDR(sdl))); Modified: head/sbin/ifconfig/ifconfig.c ============================================================================== --- head/sbin/ifconfig/ifconfig.c Fri Aug 6 15:04:40 2010 (r210935) +++ head/sbin/ifconfig/ifconfig.c Fri Aug 6 15:09:21 2010 (r210936) @@ -319,7 +319,9 @@ main(int argc, char *argv[]) /* special case for "ether" address family */ if (!strcmp(afp->af_name, "ether")) { if (sdl == NULL || - sdl->sdl_type != IFT_ETHER || + (sdl->sdl_type != IFT_ETHER && + sdl->sdl_type != IFT_L2VLAN && + sdl->sdl_type != IFT_BRIDGE) || sdl->sdl_alen != ETHER_ADDR_LEN) continue; } else { Modified: head/usr.sbin/ndp/ndp.c ============================================================================== --- head/usr.sbin/ndp/ndp.c Fri Aug 6 15:04:40 2010 (r210935) +++ head/usr.sbin/ndp/ndp.c Fri Aug 6 15:09:21 2010 (r210936) @@ -437,6 +437,7 @@ set(argc, argv) switch (sdl->sdl_type) { case IFT_ETHER: case IFT_FDDI: case IFT_ISO88023: case IFT_ISO88024: case IFT_ISO88025: + case IFT_L2VLAN: case IFT_BRIDGE: goto overwrite; } } Modified: head/usr.sbin/ppp/ipv6cp.c ============================================================================== --- head/usr.sbin/ppp/ipv6cp.c Fri Aug 6 15:04:40 2010 (r210935) +++ head/usr.sbin/ppp/ipv6cp.c Fri Aug 6 15:09:21 2010 (r210936) @@ -148,6 +148,7 @@ SetInterfaceID(u_char *ifid, int userand switch(sdl->sdl_type) { case IFT_ETHER: case IFT_FDDI: + case IFT_L2VLAN: /* XXX need more cases? */ break; default:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201008061509.o76F9LWE050463>