anope- supernets anope source code & configuration |
git clone git://git.acid.vegas/anope.git |
Log | Files | Refs | Archive | README |
anope_windows.h (1852B)
1 /* POSIX emulation layer for Windows. 2 * 3 * (C) 2008-2011 Robin Burchell <w00t@inspircd.org> 4 * (C) 2008-2022 Anope Team <team@anope.org> 5 * 6 * Please read COPYING and README for further details. 7 * 8 * Based on the original code of Epona by Lara. 9 * Based on the original code of Services by Andy Church. 10 */ 11 12 #ifndef WINDOWS_H 13 #define WINDOWS_H 14 #ifdef _WIN32 15 16 #define NOMINMAX 17 18 #include <winsock2.h> 19 #include <ws2tcpip.h> 20 #include <windows.h> 21 #include <sys/timeb.h> 22 #include <direct.h> 23 24 #ifdef MODULE_COMPILE 25 # define CoreExport __declspec(dllimport) 26 # define DllExport __declspec(dllexport) 27 #else 28 # define CoreExport __declspec(dllexport) 29 # define DllExport __declspec(dllimport) 30 #endif 31 32 #define MARK_DEPRECATED 33 34 #if GETTEXT_FOUND 35 /* Undefine some functions libintl defines */ 36 # undef snprintf 37 # undef vsnprintf 38 # undef printf 39 #endif 40 41 #define snprintf _snprintf 42 /* VS2008 hates having this define before its own */ 43 #define vsnprintf _vsnprintf 44 45 #define anope_close windows_close 46 47 #define stat _stat 48 #define S_ISREG(x) ((x) & _S_IFREG) 49 50 #ifdef EINPROGRESS 51 # undef EINPROGRESS 52 #endif 53 #define EINPROGRESS WSAEWOULDBLOCK 54 55 #include "socket.h" 56 #include "dir/dir.h" 57 #include "dl/dl.h" 58 #include "pipe/pipe.h" 59 #include "pthread/pthread.h" 60 #include "sigaction/sigaction.h" 61 62 typedef int ssize_t; 63 64 namespace Anope 65 { 66 class string; 67 } 68 69 extern CoreExport void OnStartup(); 70 extern CoreExport void OnShutdown(); 71 extern CoreExport USHORT WindowsGetLanguage(const Anope::string &lang); 72 extern CoreExport int gettimeofday(timeval *tv, void *); 73 extern CoreExport Anope::string GetWindowsVersion(); 74 extern CoreExport bool SupportedWindowsVersion(); 75 extern int setenv(const char *name, const char *value, int overwrite); 76 extern int unsetenv(const char *name); 77 extern int mkstemp(char *input); 78 extern void getcwd(char *buf, size_t sz); 79 80 #endif // _WIN32 81 #endif // WINDOWS_H