summaryrefslogtreecommitdiff
path: root/win/inspircd_win32wrapper.h
AgeCommit message (Collapse)Author
2021-03-05Update copyright headers.InspIRCd Robot
2021-03-03Fix not being able to colour format output to stderr on Windows.Sadie Powell
2021-03-02Fix building on Windows.Sadie Powell
2021-02-26Update copyright headers.InspIRCd Robot
2021-02-01Duplicate the stdout file handle when used for logging.Sadie Powell
Failure to do this may result in a crash on shutdown when started in debug mode.
2020-04-24Update copyright headers.InspIRCd Robot
2020-04-21Fixes by misspell-fixerInspIRCd Robot
2020-04-21Disable MSVC warning C4800.Matt Schatz
2020-01-11Update copyright headers.InspIRCd Robot
2019-12-08Move forking code into a function and remove DaemonSeed.Peter Powell
2019-12-08Replace our Windows getopt_long wrapper with ya_getopt.Peter Powell
Closes #546.
2019-06-10Add a method for getting a list of files in a directory.Peter Powell
2019-05-05win: change ssize_t typedef to SSIZE_TAdam
libmaxminddb redefines this when building under MSVC and breaks the build otherwise due to the redefinition of ssize_t
2018-07-24Fix building on Windows.Peter Powell
2017-08-06Purge code for Windows XP and MSVC pre-2015.Peter Powell
2016-02-22Merge insp20Attila Molnar
2015-08-09Fix compilation with Microsoft Visual C++ 14.Peter Powell
2015-03-04Remove DISABLE_WRITEV and StreamSocket code for platforms lacking writev() ↵Attila Molnar
support
2015-03-04Add SocketEngine::WriteV()Attila Molnar
2015-03-04Add writev() wrapper for WindowsAttila Molnar
2014-07-25Merge insp20Attila Molnar
2014-04-13Change Windows libraries to be dynamically linkedAdam
2014-01-23Remove whitespace and minor style changesAttila Molnar
2014-01-23Globally #undef min and max on WindowsAttila Molnar
2013-06-18Use exit code EXIT_STATUS_SERVICE on Windows when exiting because of a ↵attilamolnar
service error
2013-06-06Fix Windowsattilamolnar
2013-06-06Use iostream instead of C-style file operations.Peter Powell
2013-05-23Add a va_copy define for WindowsAdam
2013-05-07Clean up cross-platform compatibility.Peter Powell
- Move compatibility macros to a new header file. - Sort system include files in alphabetical order. - Clean up signal handling (thanks to Adam).
2013-04-12Tidy up source files:Peter Powell
- Use #pragma once instead of include guards. - Move header files in src/modules to include/modules. - Fixed various spacing issues.
2013-03-25Win32: Rewrite the service wrapperChrisTX
Edited original commit to pass MAX_PATH as nSize to GetModuleFileNameA() instead of 101 after approval from author @ChrisTX (Attila Molnar) Fixes #404 reported by @crchauffe
2012-10-14Replace printf(_c) with iostreamChrisTX
2012-10-12Windows: In-depth cleanup (see details)ChrisTX
-Fix x64 builds for Windows. Now all configurations compile. -Remove the non-working rebase stuff. -Remove the Windows fork hack and instead use FreeConsole() to emulate the behavior. This directly allows us to compile with ASLR, which is turned on now. -Remove the old IPC mechanism for the removed GUI. This is not needed anymore as the GUI wasn't ever supported on anything newer than 1.2 -Remove the WIN32/WINDOWS macros. _WIN32 is supported on all x86-based VC++ targets, so that's what we need. -Enable optimizations for release builds. -De-duplicate printf_c(), it was previously copy-pasted into colors.h for configure -Add the VC++ specific bad files in .gitignore -Disable PID writing on Windows. This is only making sense for *nix builds. -Replace the CPU usage retrieval with an algorithm analogous to the *nix behavior. Also supports separated now/total values. (Tested with a dummy busy loop - seems working) -Removed certain unused functions and variables -Remove stdint defines from the windows wrapper -Remove CRT debug alloc. This is a bad idea as it would define a macro to replace free which breaks builds. -Re-evaluated the warnings list, commented it. -Moved inspircd_config/_version to include/ to match *nix -Removed the creation of inspircd_se_config, as it isn't used at all. -Made non-git builds show as "r0" instead of "r" (thanks to @SaberUK for pointing this out) -Fixed up m_spanningtree's project paths. Now all configurations (debug/release x86/x64) have been tested and build properly. -Moved FindDNS out of the wrapper and matched its log behavior with *nix. (It's pointless having it in the wrapper after the recent slimming down) -Replaced random/srandom wrappers with a mechanism that tries to use Windows' Random API first is no SSL module is loaded. -Removed more old junk from support for compilers older than VC++ 2010 (we don't have project files for these, so compiling them would be hard anyways) -Removed the unused ClearConsole() -Removed unused includes from the wrapper. Also, do not include psapi.h here if we don't link psapi.lib. This should be done where appropriate. -Made inet_aton an inline function for increased performance -C4800, performance warning about bool forcing, resolved at all occurrences. -C4701, uninitialized variable 'cached', resolved at all occurrences. -dlerror() was migrated out of the wrapper for more thread safety (no global buffer being shared) and increased performance. -Removed the wrong CRT debug flags. This drains a lot of performance. -Removed the clock_gettime/gettimeofday wrappers -Replaced all TCHAR/ANSI mix-ups of functions with the correct respective function. -Added a block of C4355 for < VS2012 -Update project files for c870714
2012-10-04Windows: Use the WinAPI for DNS server retrievalChrisTX
2012-07-09Fixed Windows build, int32_t is already defined in stdint.h.Adam
Add GnuTLS support for Windows. Made NSIS script include extra DLL files if supplied and include the conf/aliases and conf/modules example configuration files. Added make_gnutls_cert.bat to generate GnuTLS certificates on Windows. Fixed typo in gnutlscert.pm.
2012-04-19Replace copyright headers with headers granting specific authors copyrightRobby-
2011-06-18Fix extras compilation under WindowsAdam
2011-04-10Fixed Windows build on VS 2010Adam
2010-01-18Remove excessive gettimeofday system callsdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@12293 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-17Fix up finding dns server to use for windows to match latest configreader ↵peavey
changes. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11892 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-12Define DISABLE_WRITEV and use the IOHook single-copy method for Windows send()danieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11848 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-11Include psapi.h to fix stats.cpp compiling.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11840 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-103rd time lucky? Fix again for setsockopt.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11825 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-10Slight tweak to setsockopt fix.peavey
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11824 e03df62e-2008-0410-955e-edbf42e46eb7
2009-10-10* Fix inspsocket to not include uio.h on windows.peavey
* Wrap writev and some structs to fix inspsocket compile on win. * Fix a few compile errors due to latest trunk changes in win32wrapper code. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11822 e03df62e-2008-0410-955e-edbf42e46eb7
2009-09-26Remove InspIRCd* parameters and fieldsdanieldg
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11763 e03df62e-2008-0410-955e-edbf42e46eb7
2009-08-15win: vs2010 requires this to link in process memory retrieval stuffw00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11521 e03df62e-2008-0410-955e-edbf42e46eb7
2009-08-15win: don't define error constants on VS2009, they're defined for us (finally)w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11520 e03df62e-2008-0410-955e-edbf42e46eb7
2009-08-03Fix types on Windows. Hooray for not supporting stdint.h. Thanks to Special.w00t
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11471 e03df62e-2008-0410-955e-edbf42e46eb7
2009-08-02Fix our getops implementation on windows. Have optind available, and make ↵peavey
sure it always points to the next entry in the argv list as described by POSIX. git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@11466 e03df62e-2008-0410-955e-edbf42e46eb7