netstack
void (*input)(struct ifnet *, struct mbuf *, struct netstack *),
struct netstack *ns)
struct netstack *ns;
if_vinput(struct ifnet *ifp, struct mbuf *m, struct netstack *ns)
p2p_input(struct ifnet *ifp, struct mbuf *m, struct netstack *ns)
void (*input)(struct ifnet *, struct mbuf *, struct netstack *);
struct netstack sn_netstack;
struct netstack *ns)
void (*input)(struct ifnet *, struct mbuf *, struct netstack *);
struct netstack *ns)
bpe_input(struct ifnet *ifp0, struct mbuf *m, struct netstack *ns)
void bpe_input(struct ifnet *, struct mbuf *, struct netstack *);
struct netstack *);
struct netstack *ns)
struct netstack *);
struct netstack *ns)
int hlen, struct netstack *ns)
struct netstack *ns)
int ip_etherip_input(struct mbuf **, int *, int, int, struct netstack *);
int ip6_etherip_input(struct mbuf **, int *, int, int, struct netstack *);
const struct ether_port **epp, struct netstack *ns)
ether_input(struct ifnet *ifp, struct mbuf *m, struct netstack *ns)
void (*input)(struct ifnet *, struct mbuf *, struct netstack *);
uint8_t, struct netstack *);
struct netstack *ns)
struct netstack *ns)
int af, uint8_t otos, struct netstack *ns)
int in_gif_input(struct mbuf **, int *, int, int, struct netstack *);
int in6_gif_input(struct mbuf **, int *, int, int, struct netstack *);
const struct gre_header *gh, uint8_t otos, int iphlen, struct netstack *ns)
struct gre_tunnel *key, struct netstack *ns)
uint8_t otos, struct netstack *ns)
uint8_t otos, struct netstack *ns)
struct gre_tunnel *, struct netstack *);
uint8_t, struct netstack *);
const struct gre_header *gh, uint8_t otos, int iphlen, struct netstack *ns)
uint8_t, struct netstack *);
const struct gre_header *gh, uint8_t otos, struct netstack *ns)
const struct gre_header *, uint8_t, int, struct netstack *);
const struct gre_header *, uint8_t, struct netstack *);
gre_input(struct mbuf **mp, int *offp, int type, int af, struct netstack *ns)
gre_input6(struct mbuf **mp, int *offp, int type, int af, struct netstack *ns)
int gre_input(struct mbuf **, int *, int, int, struct netstack *);
int gre_input6(struct mbuf **, int *, int, int, struct netstack *);
void loinput(struct ifnet *, struct mbuf *, struct netstack *);
loinput(struct ifnet *ifp, struct mbuf *m, struct netstack *ns)
mpe_input(struct ifnet *ifp, struct mbuf *m, struct netstack *ns)
void mpe_input(struct ifnet *, struct mbuf *, struct netstack *);
mpip_input(struct ifnet *ifp, struct mbuf *m, struct netstack *ns)
void mpip_input(struct ifnet *, struct mbuf *, struct netstack *);
mpw_input(struct ifnet *ifp, struct mbuf *m, struct netstack *ns)
void mpw_input(struct ifnet *, struct mbuf *, struct netstack *);
struct netstack *ns)
struct netstack *);
pppoe_vinput(struct ifnet *ifp0, struct mbuf *m, struct netstack *ns)
struct mbuf *pppoe_vinput(struct ifnet *, struct mbuf *, struct netstack *);
struct netstack *ns)
struct mbuf *, struct netstack *);
struct netstack *);
tpmr_pf(struct ifnet *ifp0, int dir, struct mbuf *m, struct netstack *ns)
struct netstack *ns)
struct netstack *ns)
struct netstack *);
struct netstack netstack = {
struct netstack *ns = &netstack; /* stupid . vs -> */
tun_input(struct ifnet *ifp, struct mbuf *m0, struct netstack *ns)
void tun_input(struct ifnet *, struct mbuf *, struct netstack *);
void (*if_input)(struct ifnet *, struct mbuf *, struct netstack *);
void if_vinput(struct ifnet *, struct mbuf *, struct netstack *);
void (*)(struct ifnet *, struct mbuf *, struct netstack *),
struct netstack *);
struct netstack *);
void p2p_input(struct ifnet *, struct mbuf *, struct netstack *);
if_input_process_proto(struct ifnet *ifp, struct mbuf *m, struct netstack *ns)
void (*input)(struct ifnet *, struct mbuf *, struct netstack *);
struct netstack *ns)
struct netstack *ns)
int (*p_enqueue)(struct ifnet *, struct mbuf *, struct netstack *);
veb_input(struct ifnet *ifp, struct mbuf *m, struct netstack *ns)
static void veb_input(struct ifnet *, struct mbuf *, struct netstack *);
vport_if_enqueue(struct ifnet *ifp, struct mbuf *m, struct netstack *ns)
uint64_t, void *, struct netstack *) = ep->ep_input;
struct netstack *);
struct netstack *ns)
struct netstack *);
veb_pf(struct ifnet *ifp0, int dir, struct mbuf *m, struct netstack *ns)
struct netstack *ns;
veb_if_enqueue(struct ifnet *ifp, struct mbuf *m, struct netstack *ns)
struct netstack *ns)
struct netstack *ns)
struct netstack *);
struct ip6_hdr *, void *, int, struct netstack *);
void *uhp, int hlen, struct netstack *ns)
void *_uh, int hlen, struct netstack *ns)
int, struct netstack *);
struct netstack *ns)
int plen, int locked, struct netstack *ns)
struct netstack *ns)
struct netstack *ns)
uint32_t ipsecflowinfo, struct netstack *nst)
struct netstack *ns)
struct netstack *ns)
struct pipex_session *, struct netstack *);
struct pipex_session *, struct netstack *);
struct netstack *);
int, struct netstack *);
struct netstack *);
struct netstack *);
struct mbuf *, int, int, int, struct netstack *);
struct netstack *);
arpinput(struct ifnet *ifp, struct mbuf *m, struct netstack *ns)
revarpinput(struct ifnet *ifp, struct mbuf *m, struct netstack *ns)
uint64_t, void *, struct netstack *);
void revarpinput(struct ifnet *, struct mbuf *, struct netstack *);
void arpinput(struct ifnet *, struct mbuf *, struct netstack *);
void ether_input(struct ifnet *, struct mbuf *, struct netstack *);
struct netstack *);
igmp_input(struct mbuf **mp, int *offp, int proto, int af, struct netstack *ns)
int af, struct netstack *ns)
int igmp_input(struct mbuf **, int *, int, int, struct netstack *);
struct netstack;
void ipv4_input(struct ifnet *, struct mbuf *, struct netstack *);
struct ip *, struct ip6_hdr *, void *, int, struct netstack *);
struct netstack *ns)
struct netstack *ns)
struct netstack *ns)
struct netstack *ns)
struct netstack *);
struct netstack *);
struct netstack *);
struct netstack *ns)
struct netstack *);
icmp_input(struct mbuf **mp, int *offp, int proto, int af, struct netstack *ns)
int af, struct netstack *ns)
int icmp_input(struct mbuf **, int *, int, int, struct netstack *);
int ip_ours(struct mbuf **, int *, int, int, struct netstack *);
ip_ours(struct mbuf **mp, int *offp, int nxt, int af, struct netstack *ns)
ipv4_input(struct ifnet *ifp, struct mbuf *m, struct netstack *ns)
struct netstack *ns)
struct netstack *ns)
struct netstack *ns)
ipip_input(struct mbuf **mp, int *offp, int nxt, int af, struct netstack *ns)
struct ifnet *ifp, struct netstack *ns)
struct netstack *ns)
int ipip_input(struct mbuf **, int *, int, int, struct netstack *);
struct netstack *);
struct netstack *);
int ipe4_input(struct mbuf **, struct tdb *, int, int, struct netstack *);
int ah_input(struct mbuf **, struct tdb *, int, int, struct netstack *);
int ah46_input(struct mbuf **, int *, int, int, struct netstack *);
int esp_input(struct mbuf **, struct tdb *, int, int, struct netstack *);
int esp46_input(struct mbuf **, int *, int, int, struct netstack *);
int ipcomp_input(struct mbuf **, struct tdb *, int, int, struct netstack *);
int ipcomp46_input(struct mbuf **, int *, int, int, struct netstack *);
struct netstack *);
struct netstack *);
struct netstack *);
struct netstack *);
struct netstack *);
int ip_deliver(struct mbuf **, int *, int, int, int, struct netstack *);
int rip_input(struct mbuf **, int *, int, int, struct netstack *);
int udpencap, struct netstack *ns)
int protoff, struct netstack *ns)
struct netstack *ns)
ah46_input(struct mbuf **mp, int *offp, int proto, int af, struct netstack *ns)
struct netstack *ns)
struct netstack *ns)
rip_input(struct mbuf **mp, int *offp, int proto, int af, struct netstack *ns)
tcp_input(struct mbuf **mp, int *offp, int proto, int af, struct netstack *ns)
int protoff, struct netstack *sn)
int tcp_input(struct mbuf **, int *, int, int, struct netstack *);
u_int32_t, struct netstack *);
udp_input(struct mbuf **mp, int *offp, int proto, int af, struct netstack *ns)
struct netstack *ns)
int udp_input(struct mbuf **, int *, int, int, struct netstack *);
struct netstack *ns)
struct netstack *ns)
struct netstack *ns)
struct netstack;
void ipv6_input(struct ifnet *, struct mbuf *, struct netstack *);
int ip6_ours(struct mbuf **, int *, int, int, int, struct netstack *);
struct netstack *ns)
ipv6_input(struct ifnet *ifp, struct mbuf *m, struct netstack *ns)
struct netstack *ns)
struct netstack *);
int route6_input(struct mbuf **, int *, int, int, struct netstack *);
int frag6_input(struct mbuf **, int *, int, int, struct netstack *);
int rip6_input(struct mbuf **, int *, int, int, struct netstack *);
int dest6_input(struct mbuf **, int *, int, int, struct netstack *);
rip6_input(struct mbuf **mp, int *offp, int proto, int af, struct netstack *ns)
struct netstack *ns)
void mpls_input(struct ifnet *, struct mbuf *, struct netstack *);
mpls_input_local(struct rtentry *rt, struct mbuf *m, struct netstack *ns)
struct netstack *);
mpls_input(struct ifnet *ifp, struct mbuf *m, struct netstack *ns)
int (*pr_input)(struct mbuf **, int *, int, int, struct netstack *);
struct netstack;