]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - win/inspircd_win32wrapper.h
Ever wonder why the SAME PEOPLE make up ALL the conspiracy theories?
[user/henk/code/inspircd.git] / win / inspircd_win32wrapper.h
index a728cf191957d5f8a33e8a31d3dcd77e8f4fe61d..a6d023c56a9243de7dc99021ca41defd9e1643cc 100644 (file)
@@ -21,6 +21,7 @@
 /* Define the WINDOWS macro. This means we're building on windows to the rest of the server.
    I think this is more reasonable than using WIN32, especially if we're gonna be doing 64-bit compiles */
 #define WINDOWS 1
+#define ENABLE_CRASHDUMPS 1
 
 /* Make builds smaller, leaner and faster */
 #define VC_EXTRALEAN
 #include <stdio.h>
 #include <algorithm>
 
+#ifdef ENABLE_CRASHDUMPS
+#include <DbgHelp.h>
+#endif
+
 /* strcasecmp is not defined on windows by default */
 #define strcasecmp _stricmp
 
@@ -79,9 +84,6 @@
 #define EADDRINUSE WSAEADDRINUSE
 #define EINPROGRESS WSAEWOULDBLOCK
 
-/* Remember file descriptors are treated differently on windows ;) */
-__inline int close(int socket) { return closesocket(socket); }
-
 /* Convert formatted (xxx.xxx.xxx.xxx) string to in_addr struct */
 CoreExport int inet_pton(int af, const char * src, void * dst);
 
@@ -202,5 +204,10 @@ void ChangeWindowsSpecificPointers(InspIRCd* Instance);
 
 bool ValidateWindowsDnsServer(ServerConfig* conf, const char* tag, const char* value, ValueItem &data);
 
+#ifdef ENABLE_CRASHDUMPS
+typedef struct _EXCEPTION_POINTERS EXCEPTION_POINTERS, *PEXCEPTION_POINTERS;
+int __cdecl __exceptionHandler(PEXCEPTION_POINTERS pExceptPtrs);
+#endif
+
 #endif