struct encaptab;
struct gif_softc {
- struct ifnet gif_if; /* common area - must be at the top */
+ ifnet_t gif_if; /* pointer back to the interface */
struct sockaddr *gif_psrc; /* Physical src addr */
struct sockaddr *gif_pdst; /* Physical dst addr */
#ifdef __APPLE__
- u_long gif_proto; /* dlil protocol attached */
+ protocol_family_t gif_proto; /* dlil protocol attached */
#endif
union {
struct route gifscr_ro; /* xxx */
const struct encaptab *encap_cookie4;
const struct encaptab *encap_cookie6;
TAILQ_ENTRY(gif_softc) gif_link; /* all gif's are linked */
+ bpf_tap_mode tap_mode;
+ bpf_packet_func tap_callback;
+ char gif_ifname[IFNAMSIZ];
};
#define gif_ro gifsc_gifscr.gifscr_ro
#define GIF_MTU_MIN (1280) /* Minimum MTU */
#define GIF_MTU_MAX (8192) /* Maximum MTU */
-#ifdef KERNEL_PRIVATE
-
-/* Prototypes */
-int gif_input(struct mbuf *, char*, struct ifnet *, u_long, int);
-int gif_output(struct ifnet *, struct mbuf *,
- struct sockaddr *, struct rtentry *);
-int gif_ioctl(struct ifnet *, u_long, void*);
-
-#endif /* KERNEL_PRIVATE */
#endif /* _NET_IF_GIF_H_ */