/*
- * Copyright (c) 2000-2009 Apple Inc. All rights reserved.
+ * Copyright (c) 2000-2011 Apple Inc. All rights reserved.
*
* @APPLE_OSREFERENCE_LICENSE_HEADER_START@
*
#include <sys/cdefs.h>
#define PR_SLOWHZ 2 /* 2 slow timeouts per second */
+#ifndef __APPLE__
+/*
+ * See rdar://7617868: pr_fasttimo was removed use your own timer or pr_slowtimo instead
+ */
#define PR_FASTHZ 5 /* 5 fast timeouts per second */
+#endif
#ifdef PRIVATE
* The userreq routine interfaces protocols to the system and is
* described below.
*/
-
+
+#include <sys/socket.h>
#include <sys/socketvar.h>
#include <sys/queue.h>
#ifdef KERNEL
void *pr_ousrreq;
/* utility hooks */
void (*pr_init)(void); /* initialization hook */
+#if __APPLE__
+ void (*pr_unused)(void); /* placeholder - fasttimo is removed */
+#else
void (*pr_fasttimo)(void);
/* fast timeout (200ms) */
+#endif
void (*pr_slowtimo)(void);
/* slow timeout (500ms) */
void (*pr_drain)(void);
__BEGIN_DECLS
void domaininit(void) __attribute__((section("__TEXT, initcode")));
+void domainfin(void) __attribute__((section("__TEXT, fincode")));
void pfctlinput(int, struct sockaddr *);
void pfctlinput2(int, struct sockaddr *, void *);
extern int net_add_proto(struct protosw *, struct domain *);
extern int net_del_proto(int, int, struct domain *);
+extern u_int64_t net_uptime(void);
__END_DECLS
/* Temp hack to link static domains together */