if_var.h (249925) | if_var.h (250300) |
---|---|
1/*- 2 * Copyright (c) 1982, 1986, 1989, 1993 3 * The Regents of the University of California. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 13 unchanged lines hidden (view full) --- 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 28 * 29 * From: @(#)if.h 8.1 (Berkeley) 6/10/93 | 1/*- 2 * Copyright (c) 1982, 1986, 1989, 1993 3 * The Regents of the University of California. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 13 unchanged lines hidden (view full) --- 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 28 * 29 * From: @(#)if.h 8.1 (Berkeley) 6/10/93 |
30 * $FreeBSD: head/sys/net/if_var.h 249925 2013-04-26 12:50:32Z glebius $ | 30 * $FreeBSD: head/sys/net/if_var.h 250300 2013-05-06 16:42:18Z andre $ |
31 */ 32 33#ifndef _NET_IF_VAR_H_ 34#define _NET_IF_VAR_H_ 35 36/* 37 * Structures defining a network interface, providing a packet 38 * transport mechanism (ala level 0 of the PUP protocols). --- 147 unchanged lines hidden (view full) --- 186 void *if_bridge; /* bridge glue */ 187 188 struct label *if_label; /* interface MAC label */ 189 190 /* these are only used by IPv6 */ 191 void *if_unused[2]; 192 void *if_afdata[AF_MAX]; 193 int if_afdata_initialized; | 31 */ 32 33#ifndef _NET_IF_VAR_H_ 34#define _NET_IF_VAR_H_ 35 36/* 37 * Structures defining a network interface, providing a packet 38 * transport mechanism (ala level 0 of the PUP protocols). --- 147 unchanged lines hidden (view full) --- 186 void *if_bridge; /* bridge glue */ 187 188 struct label *if_label; /* interface MAC label */ 189 190 /* these are only used by IPv6 */ 191 void *if_unused[2]; 192 void *if_afdata[AF_MAX]; 193 int if_afdata_initialized; |
194 struct rwlock if_afdata_lock; |
|
194 struct task if_linktask; /* task for link change events */ | 195 struct task if_linktask; /* task for link change events */ |
195 struct rwlock_padalign if_afdata_lock; 196 struct rwlock_padalign if_addr_lock; /* lock to protect address lists */ | 196 struct rwlock if_addr_lock; /* lock to protect address lists */ |
197 198 LIST_ENTRY(ifnet) if_clones; /* interfaces of a cloner */ 199 TAILQ_HEAD(, ifg_list) if_groups; /* linked list of groups per if */ 200 /* protected by if_addr_lock */ 201 void *if_pf_kif; 202 void *if_lagg; /* lagg glue */ 203 char *if_description; /* interface description */ 204 u_int if_fib; /* interface FIB */ --- 622 unchanged lines hidden (view full) --- 827 struct ifnet *ifma_ifp; /* back-pointer to interface */ 828 u_int ifma_refcount; /* reference count */ 829 void *ifma_protospec; /* protocol-specific state, if any */ 830 struct ifmultiaddr *ifma_llifma; /* pointer to ifma for ifma_lladdr */ 831}; 832 833#ifdef _KERNEL 834 | 197 198 LIST_ENTRY(ifnet) if_clones; /* interfaces of a cloner */ 199 TAILQ_HEAD(, ifg_list) if_groups; /* linked list of groups per if */ 200 /* protected by if_addr_lock */ 201 void *if_pf_kif; 202 void *if_lagg; /* lagg glue */ 203 char *if_description; /* interface description */ 204 u_int if_fib; /* interface FIB */ --- 622 unchanged lines hidden (view full) --- 827 struct ifnet *ifma_ifp; /* back-pointer to interface */ 828 u_int ifma_refcount; /* reference count */ 829 void *ifma_protospec; /* protocol-specific state, if any */ 830 struct ifmultiaddr *ifma_llifma; /* pointer to ifma for ifma_lladdr */ 831}; 832 833#ifdef _KERNEL 834 |
835extern struct rwlock_padalign ifnet_rwlock; | 835extern struct rwlock ifnet_rwlock; |
836extern struct sx ifnet_sxlock; 837 838#define IFNET_LOCK_INIT() do { \ 839 rw_init_flags(&ifnet_rwlock, "ifnet_rw", RW_RECURSE); \ 840 sx_init_flags(&ifnet_sxlock, "ifnet_sx", SX_RECURSE); \ 841} while(0) 842 843#define IFNET_WLOCK() do { \ --- 122 unchanged lines hidden --- | 836extern struct sx ifnet_sxlock; 837 838#define IFNET_LOCK_INIT() do { \ 839 rw_init_flags(&ifnet_rwlock, "ifnet_rw", RW_RECURSE); \ 840 sx_init_flags(&ifnet_sxlock, "ifnet_sx", SX_RECURSE); \ 841} while(0) 842 843#define IFNET_WLOCK() do { \ --- 122 unchanged lines hidden --- |