]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - win/inspircd_win32wrapper.cpp
Use the right pass
[user/henk/code/inspircd.git] / win / inspircd_win32wrapper.cpp
index a25544aab95f3ab891b8fe68090017652b3f99df..c42e8bd640148fabbe15def8668668b8469c6f7a 100644 (file)
@@ -2,7 +2,7 @@
  *       | Inspire Internet Relay Chat Daemon |
  *       +------------------------------------+
  *
- *  InspIRCd: (C) 2002-2007 InspIRCd Development Team
+ *  InspIRCd: (C) 2002-2008 InspIRCd Development Team
  * See: http://www.inspircd.org/wiki/index.php/Credits
  *
  * This program is free but copyrighted software; see
@@ -638,6 +638,11 @@ bool ValidateWindowsDnsServer(ServerConfig* conf, const char* tag, const char* v
                 */
                if (nameserver.find(',') != std::string::npos)
                        nameserver = nameserver.substr(0, nameserver.find(','));
+               /* Just to be FUCKING AKWARD, windows fister... err i mean vista...
+                * seperates the nameservers with spaces instead.
+                */
+               if (nameserver.find(' ') != std::string::npos)
+                       nameserver = nameserver.substr(0, nameserver.find(' '));
                data.Set(nameserver.c_str());
                conf->GetInstance()->Log(DEFAULT,"<dns:server> set to '%s' as first active resolver in registry.", nameserver.c_str());
        }
@@ -654,67 +659,3 @@ int gettimeofday(struct timeval * tv, void * tz)
        tv->tv_usec  = (mstime - (tv->tv_sec * 1000)) * 1000;
     return 0;  
 }
-
-int __exceptionHandler(PEXCEPTION_POINTERS pExceptPtrs)
-{
-       SYSTEMTIME _time;
-       HANDLE hDump;
-       char mod[MAX_PATH*2];
-       char * pMod = mod;
-       char dump_filename[MAX_PATH];
-       MINIDUMP_EXCEPTION_INFORMATION dumpInfo;
-       DWORD code;
-
-       if(pExceptPtrs == NULL) {
-               __try {
-                       RaiseException(EXCEPTION_BREAKPOINT, 0, 0, NULL);
-               } __except(__exceptionHandler(GetExceptionInformation()), EXCEPTION_CONTINUE_EXECUTION) {}
-       }
-
-       printf("Exception caught at 0x%.8X! Attempting to write crash dump file.\n", (unsigned long)pExceptPtrs->ExceptionRecord->ExceptionAddress);
-
-       if(GetModuleFileName(0, mod, MAX_PATH*2) > 0)
-       {
-               if( (pMod = strrchr(mod, '\\')) != NULL )
-                       ++pMod;
-               else
-                       strcpy(mod, "unk");
-       }
-       else
-               strcpy(mod, "unk");
-
-       GetSystemTime(&_time);
-       snprintf(dump_filename, MAX_PATH, "dump-%s-%u-%u-%u-%u-%u-%u.dmp",
-               pMod, _time.wYear, _time.wMonth, _time.wDay, _time.wHour, _time.wMinute, _time.wSecond);
-
-       hDump = CreateFile(dump_filename, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_WRITE_THROUGH, 0);
-       if(hDump != INVALID_HANDLE_VALUE)
-       {
-               dumpInfo.ClientPointers = FALSE;
-               dumpInfo.ExceptionPointers = pExceptPtrs;
-               dumpInfo.ThreadId = GetCurrentThreadId();
-
-               /* let's write a full memory dump. insp shouldn't be using much memory anyway, and it will help a lot with debugging. */
-               MiniDumpWriteDump(GetCurrentProcess(), GetCurrentProcessId(), hDump, MiniDumpWithFullMemory, &dumpInfo, NULL, NULL);
-               FlushFileBuffers(hDump);
-               CloseHandle(hDump);
-       }
-
-       /* check for a debugger */
-       __asm {
-               pushad
-               pushfd
-               mov eax, fs:[18h]
-               mov eax, dword ptr [eax+30h]
-               mov ebx, dword ptr [eax]
-               mov code, ebx
-               popfd
-               popad
-       }
-
-       /* break into debugger if we have one */
-       if(code & 0x10000)
-               return EXCEPTION_CONTINUE_SEARCH;
-       else    /* otherwise exit abnormally */
-               return EXCEPTION_CONTINUE_EXECUTION;
-}