#else /* !defined(ENABLE_JEMALLOC) && !defined(ENABLE_TCMALLOC) */
-#ifndef __FreeBSD__
+#if !(defined(__FreeBSD__) || defined(__APPLE__))
#include <malloc.h>
-#endif /* __FreeBSD__ */
+#endif /* __FreeBSD__ || __APPLE__ */
#endif
#include <netdb.h>
#endif
+#include <net/if.h>
+
#include <poll.h>
#include <signal.h>
#include <syslog.h>
#include <sys/mman.h>
-#ifndef __FreeBSD__
+#if !(defined(__FreeBSD__) || defined(__APPLE__))
#include <sys/prctl.h>
-#endif /* __FreeBSD__ */
+#endif /* __FreeBSD__ || __APPLE__*/
#include <sys/resource.h>
#include <sys/socket.h>
#include <sys/stat.h>
#include "plugin_checks.h"
#include "plugin_idlejitter.h"
#include "plugin_nfacct.h"
-#ifndef __FreeBSD__
-#include "plugin_proc.h"
-#else
+#if defined(__FreeBSD__)
#include "plugin_freebsd.h"
-#endif /* __FreeBSD__ */
+#elif defined(__APPLE__)
+#include "plugin_macos.h"
+#else
+#include "plugin_proc.h"
+#endif /* __FreeBSD__, __APPLE__*/
#include "plugin_tc.h"
#include "plugins_d.h"
+#include "socket.h"
+
#include "eval.h"
#include "health.h"