ng_ether.c (106933) | ng_ether.c (108172) |
---|---|
1 2/* 3 * ng_ether.c 4 * 5 * Copyright (c) 1996-2000 Whistle Communications, Inc. 6 * All rights reserved. 7 * 8 * Subject to the following obligations and disclaimer of warranty, use and --- 23 unchanged lines hidden (view full) --- 32 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 33 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 34 * THIS SOFTWARE, EVEN IF WHISTLE COMMUNICATIONS IS ADVISED OF THE POSSIBILITY 35 * OF SUCH DAMAGE. 36 * 37 * Authors: Archie Cobbs <archie@freebsd.org> 38 * Julian Elischer <julian@freebsd.org> 39 * | 1 2/* 3 * ng_ether.c 4 * 5 * Copyright (c) 1996-2000 Whistle Communications, Inc. 6 * All rights reserved. 7 * 8 * Subject to the following obligations and disclaimer of warranty, use and --- 23 unchanged lines hidden (view full) --- 32 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 33 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 34 * THIS SOFTWARE, EVEN IF WHISTLE COMMUNICATIONS IS ADVISED OF THE POSSIBILITY 35 * OF SUCH DAMAGE. 36 * 37 * Authors: Archie Cobbs <archie@freebsd.org> 38 * Julian Elischer <julian@freebsd.org> 39 * |
40 * $FreeBSD: head/sys/netgraph/ng_ether.c 106933 2002-11-14 23:44:37Z sam $ | 40 * $FreeBSD: head/sys/netgraph/ng_ether.c 108172 2002-12-22 05:35:03Z hsu $ |
41 */ 42 43/* 44 * ng_ether(4) netgraph node type 45 */ 46 47#include <sys/param.h> 48#include <sys/systm.h> --- 674 unchanged lines hidden (view full) --- 723 } 724 ng_ether_attach_p = ng_ether_attach; 725 ng_ether_detach_p = ng_ether_detach; 726 ng_ether_output_p = ng_ether_output; 727 ng_ether_input_p = ng_ether_input; 728 ng_ether_input_orphan_p = ng_ether_input_orphan; 729 730 /* Create nodes for any already-existing Ethernet interfaces */ | 41 */ 42 43/* 44 * ng_ether(4) netgraph node type 45 */ 46 47#include <sys/param.h> 48#include <sys/systm.h> --- 674 unchanged lines hidden (view full) --- 723 } 724 ng_ether_attach_p = ng_ether_attach; 725 ng_ether_detach_p = ng_ether_detach; 726 ng_ether_output_p = ng_ether_output; 727 ng_ether_input_p = ng_ether_input; 728 ng_ether_input_orphan_p = ng_ether_input_orphan; 729 730 /* Create nodes for any already-existing Ethernet interfaces */ |
731 IFNET_RLOCK(); |
|
731 TAILQ_FOREACH(ifp, &ifnet, if_link) { 732 if (ifp->if_type == IFT_ETHER 733 || ifp->if_type == IFT_L2VLAN) 734 ng_ether_attach(ifp); 735 } | 732 TAILQ_FOREACH(ifp, &ifnet, if_link) { 733 if (ifp->if_type == IFT_ETHER 734 || ifp->if_type == IFT_L2VLAN) 735 ng_ether_attach(ifp); 736 } |
737 IFNET_RUNLOCK(); |
|
736 break; 737 738 case MOD_UNLOAD: 739 740 /* 741 * Note that the base code won't try to unload us until 742 * all nodes have been removed, and that can't happen 743 * until all Ethernet interfaces are removed. In any --- 20 unchanged lines hidden --- | 738 break; 739 740 case MOD_UNLOAD: 741 742 /* 743 * Note that the base code won't try to unload us until 744 * all nodes have been removed, and that can't happen 745 * until all Ethernet interfaces are removed. In any --- 20 unchanged lines hidden --- |