X-Git-Url: https://git.saurik.com/apple/xnu.git/blobdiff_plain/39236c6e673c41db228275375ab7fdb0f837b292..c3c9b80d004dbbfdf763edeb97968c6997e3b45b:/bsd/netinet/ip_flowid.h diff --git a/bsd/netinet/ip_flowid.h b/bsd/netinet/ip_flowid.h index aa3ac23c9..47f6df617 100644 --- a/bsd/netinet/ip_flowid.h +++ b/bsd/netinet/ip_flowid.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011-2012 Apple Inc. All rights reserved. + * Copyright (c) 2011-2019 Apple Inc. All rights reserved. * * @APPLE_OSREFERENCE_LICENSE_HEADER_START@ * @@ -82,7 +82,6 @@ struct ip_flow_id { struct route_in6; struct sockaddr_in6; struct pf_rule; -struct ip_fw; /* * Arguments for calling ipfw_chk() and dummynet_io(). We put them @@ -92,12 +91,10 @@ struct ip_fw; struct ip_fw_args { struct mbuf *fwa_m; /* the mbuf chain */ struct ifnet *fwa_oif; /* output interface */ - struct sockaddr_in *fwa_next_hop; /* forward address */ - struct ip_fw *fwa_ipfw_rule; /* matching IPFW rule */ struct pf_rule *fwa_pf_rule; /* matching PF rule */ struct ether_header *fwa_eh; /* for bridged packets */ - int fwa_flags; /* for dummynet */ - int fwa_oflags; /* for dummynet */ + int fwa_flags; /* for dummynet */ + int fwa_oflags; /* for dummynet */ union { struct ip_out_args *_fwa_ipoa; /* for dummynet */ struct ip6_out_args *_fwa_ip6oa; /* for dummynet */ @@ -111,13 +108,11 @@ struct ip_fw_args { struct sockaddr_in6 *_fwa_dst6; /* for IPv6 dummynet */ } fwa_dst_; struct route_in6 *fwa_ro6_pmtu; /* for IPv6 output */ - struct ifnet *fwa_origifp; /* for IPv6 output */ - u_int32_t fwa_mtu; /* for IPv6 output */ - int fwa_alwaysfrag; /* for IPv6 output */ - u_int32_t fwa_unfragpartlen; /* for IPv6 output */ - struct ip6_exthdrs *fwa_exthdrs; /* for IPv6 output */ + struct ifnet *fwa_origifp; /* for IPv6 output */ + u_int32_t fwa_mtu; /* for IPv6 output */ + u_int32_t fwa_unfragpartlen; /* for IPv6 output */ + struct ip6_exthdrs *fwa_exthdrs; /* for IPv6 output */ struct ip_flow_id fwa_id; /* grabbed from IP header */ - u_int16_t fwa_divert_rule;/* divert cookie */ u_int32_t fwa_cookie; }; #define fwa_ipoa fwa_ipoa_._fwa_ipoa @@ -127,6 +122,11 @@ struct ip_fw_args { #define fwa_dst fwa_dst_._fwa_dst #define fwa_dst6 fwa_dst_._fwa_dst6 +/* Allocate a separate structure for inputs args to save space and bzero time */ +struct ip_fw_in_args { + struct pf_rule *fwai_pf_rule; /* matching PF rule */ +}; + #endif /* BSD_KERNEL_PRIVATE */ #endif /* __IP_FLOWID_H__ */