]> git.saurik.com Git - apple/xnu.git/blobdiff - bsd/net/kext_net.h
xnu-344.tar.gz
[apple/xnu.git] / bsd / net / kext_net.h
index a048de3a7bb9bec1fd411020286b9ab1a10b6abe..ebe88e6c3a7f225b5b54e417afa4f7a3282ada26 100644 (file)
@@ -26,6 +26,7 @@
  */
 #ifndef NET_KEXT_NET_H
 #define NET_KEXT_NET_H
  */
 #ifndef NET_KEXT_NET_H
 #define NET_KEXT_NET_H
+#include <sys/appleapiopts.h>
 
 #include <sys/queue.h>
 #include <sys/socketvar.h>
 
 #include <sys/queue.h>
 #include <sys/socketvar.h>
@@ -41,6 +42,8 @@ struct sockif;
 struct sockutil;
 struct sockopt;
 
 struct sockutil;
 struct sockopt;
 
+#ifdef __APPLE_API_UNSTABLE
+
 /*
  * 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.
@@ -63,6 +66,7 @@ struct NFDescriptor
         */
        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 */
+       u_long  reserved[4];                    /* for future use if needed */
 };
 
 #define NFD_GLOBAL     0x01
 };
 
 #define NFD_GLOBAL     0x01
@@ -80,9 +84,11 @@ extern int register_sockfilter(struct NFDescriptor *,
 /* 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);
 
+#ifdef __APPLE_API_PRIVATE
 TAILQ_HEAD(nf_list, NFDescriptor);
 
 extern struct nf_list nf_list;
 TAILQ_HEAD(nf_list, NFDescriptor);
 
 extern struct nf_list nf_list;
+#endif /* __APPLE_API_PRIVATE */
 #endif
 
 #define NKE_OK 0
 #endif
 
 #define NKE_OK 0
@@ -100,6 +106,7 @@ struct so_nke
 {      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 */
+       unsigned long reserved[4];      /* for future use */
 };
 
 /*
 };
 
 /*
@@ -150,13 +157,14 @@ struct sockif
        /* 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() */
-       struct socket *(*sf_sonewconn1)(struct socket *, int, struct kextcb *);
+       int (*sf_sonewconn)(struct socket *, int, 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 (*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 *);
+       u_long  reserved[4];
 };
 
 
 };
 
 
@@ -195,6 +203,8 @@ struct sockutil
        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 *);
+       u_long  reserved[4];
 };
 };
+#endif /* __APPLE_API_UNSTABLE */
 
 #endif
 
 #endif