#ifndef _OSKITFREEBSD_H
#define _OSKITFREEBSD_H
+#include <ntddk.h>
+
+#ifdef linux
+#include <netinet/in.h>
+#endif
+
extern void oskittcp_die(const char *file, int line);
#define printf DbgPrint
+#define vprintf DbgVPrint
#define ovbcopy(x,y,z) bcopy(x,y,z)
#define bzero(x,y) memset(x,0,y)
-#define bcopy memcpy
-#define panic(...) do { DbgPrint(__VA_ARGS__); \
- oskittcp_die(__FILE__,__LINE__); } while(0)
-#define kmem_malloc(x,y,z) malloc(y)
+#define bcopy(src,dst,n) memcpy(dst,src,n)
+#ifdef _MSC_VER
+static __inline void panic ( const char* fmt, ... )
+{
+ va_list arg;
+ va_start(arg, fmt);
+ printf ( "oskit PANIC: " );
+ vprintf ( fmt, arg );
+ va_end(arg);
+ // TODO FIXME - print stack trace...
+ oskittcp_die("<unknown file>",-1);
+}
+#else//_MSC_VER
+#define panic(...) do { printf(__VA_ARGS__); \
+ oskittcp_die(__FILE__,__LINE__); } while(0)
+#endif//_MSC_VER
+#define kmem_malloc(x,y,z) malloc(y,0,0)
#endif//_OSKITFREEBSD_H