diff options
author | brooks <brooks@FreeBSD.org> | 2001-12-03 17:28:27 +0000 |
---|---|---|
committer | brooks <brooks@FreeBSD.org> | 2001-12-03 17:28:27 +0000 |
commit | 8b6f6e9487a28169a664f628114a3cf9a1de1819 (patch) | |
tree | 3ec2b2e029e880f02c5d9088938736698a408ac5 /sys/net/ethernet.h | |
parent | b5de44291122e0fc2bf68540749f66b3992d3ea2 (diff) | |
download | FreeBSD-src-8b6f6e9487a28169a664f628114a3cf9a1de1819.zip FreeBSD-src-8b6f6e9487a28169a664f628114a3cf9a1de1819.tar.gz |
Don't pass an interface pointer to VLAN_INPUT{,_TAG}. Get it from the
mbuf instead.
Suggested by: fenner
Diffstat (limited to 'sys/net/ethernet.h')
-rw-r--r-- | sys/net/ethernet.h | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/sys/net/ethernet.h b/sys/net/ethernet.h index b5a0fae..7380e31 100644 --- a/sys/net/ethernet.h +++ b/sys/net/ethernet.h @@ -102,35 +102,35 @@ extern void (*ng_ether_detach_p)(struct ifnet *ifp); extern int (*vlan_input_p)(struct ether_header *eh, struct mbuf *m); extern int (*vlan_input_tag_p)(struct ether_header *eh, struct mbuf *m, u_int16_t t); -#define _VLAN_INPUT(ifp, eh, m) do { \ +#define _VLAN_INPUT(eh, m) do { \ if (vlan_input_p != NULL) { \ if ((*vlan_input_p)(eh, m) == -1) \ - (ifp)->if_noproto++; \ + (m)->m_pkthdr.rcvif->if_noproto++; \ } else { \ m_free(m); \ - (ifp)->if_noproto++; \ + (m)->m_pkthdr.rcvif->if_noproto++; \ } \ } while (0) -#define VLAN_INPUT(ifp, eh, m) do { \ +#define VLAN_INPUT(eh, m) do { \ /* XXX: lock */ \ - _VLAN_INPUT(ifp, eh, m); \ + _VLAN_INPUT(eh, m); \ /* XXX: unlock */ \ } while (0) -#define _VLAN_INPUT_TAG(ifp, eh, m, t) do { \ +#define _VLAN_INPUT_TAG(eh, m, t) do { \ if (vlan_input_tag_p != NULL) { \ if ((*vlan_input_tag_p)(eh, m, t) == -1) \ - (ifp)->if_noproto++; \ + (m)->m_pkthdr.rcvif->if_noproto++; \ } else { \ m_free(m); \ - (ifp)->if_noproto++; \ + (m)->m_pkthdr.rcvif->if_noproto++; \ } \ } while (0) -#define VLAN_INPUT_TAG(ifp, eh, m, t) do { \ +#define VLAN_INPUT_TAG(eh, m, t) do { \ /* XXX: lock */ \ - _VLAN_INPUT_TAG(ifp, eh, m, t); \ + _VLAN_INPUT_TAG(eh, m, t); \ /* XXX: unlock */ \ } while (0) |