/*
* This structure gives access to the functionality of the filter.
* The kextcb provides the link from the socket structure.
/*
* This structure gives access to the functionality of the filter.
* The kextcb provides the link from the socket structure.
*/
struct sockif *nf_soif; /* Socket functions */
struct sockutil *nf_soutil; /* Sockbuf utility functions */
*/
struct sockif *nf_soif; /* Socket functions */
struct sockutil *nf_soutil; /* Sockbuf utility functions */
/* How to unregister: filter, original protosw, flags */
extern int unregister_sockfilter(struct NFDescriptor *, struct protosw *, int);
/* How to unregister: filter, original protosw, flags */
extern int unregister_sockfilter(struct NFDescriptor *, struct protosw *, int);
TAILQ_HEAD(nf_list, NFDescriptor);
extern struct nf_list nf_list;
TAILQ_HEAD(nf_list, NFDescriptor);
extern struct nf_list nf_list;
{ unsigned int nke_handle;
unsigned int nke_where;
int nke_flags; /* NFF_BEFORE, NFF_AFTER: net/kext_net.h */
{ unsigned int nke_handle;
unsigned int nke_where;
int nke_flags; /* NFF_BEFORE, NFF_AFTER: net/kext_net.h */
/* Calls sowwakeup(), sorwakeup() */
int (*sf_soisdisconnecting)(struct socket *, struct kextcb *);
/* Calls soreserve(), soqinsque(), soqremque(), sorwakeup() */
/* Calls sowwakeup(), sorwakeup() */
int (*sf_soisdisconnecting)(struct socket *, struct kextcb *);
/* Calls soreserve(), soqinsque(), soqremque(), sorwakeup() */
int (*sf_soqinsque)(struct socket *, struct socket *, int,
struct kextcb *);
int (*sf_soqremque)(struct socket *, int, struct kextcb *);
int (*sf_soreserve)(struct socket *, u_long, u_long, struct kextcb *);
int (*sf_sowakeup)(struct socket *, struct sockbuf *,
struct kextcb *);
int (*sf_soqinsque)(struct socket *, struct socket *, int,
struct kextcb *);
int (*sf_soqremque)(struct socket *, int, struct kextcb *);
int (*sf_soreserve)(struct socket *, u_long, u_long, struct kextcb *);
int (*sf_sowakeup)(struct socket *, struct sockbuf *,
struct kextcb *);
int (*su_sbreserve)(struct sockbuf *, u_long, struct kextcb *);
/* Calls tsleep() */
int (*su_sbwait)(struct sockbuf *, struct kextcb *);
int (*su_sbreserve)(struct sockbuf *, u_long, struct kextcb *);
/* Calls tsleep() */
int (*su_sbwait)(struct sockbuf *, struct kextcb *);