summaryrefslogtreecommitdiffstats
path: root/src/OSSupport (unfollow)
Commit message (Collapse)AuthorFilesLines
2015-05-09CheckBasicStyle: checks spaces around * and &.Mattes D1-1/+1
2015-05-09More style checking.Mattes D3-3/+3
Spaces around some operators are checked.
2015-04-30Fixed bindings for cFile:ReadWholeFile().Mattes D1-1/+6
Fixes #1914
2015-04-21Network: fixed excessive debug logging.Mattes D2-7/+1
2015-04-11cFile:ChangeFileExt now accepts extensions with leading dot, too.Mattes D1-2/+14
2015-04-11Added more cFile API functions.Mattes D2-2/+66
GetLastModificationTime, GetPathSeparator() and GetExecutableExt()
2015-04-10Added proper implementation of cFile::ChangeFileExt().Mattes D1-2/+17
2015-04-06Added cFile:ChangeFileExt() function.Mattes D2-0/+27
2015-03-22Unified cPacketizer across all protocols.Mattes D1-6/+6
2015-03-18Network: Close the UDP endpoint in destructor.Mattes D2-0/+11
2015-03-10Use std::memcpy to fix alignmentTiger Wang1-2/+8
As suggested by @madmaxoft
2015-03-08Potential Linux implementationTiger Wang1-4/+54
2015-02-22Network: Replaced magic number with named constant.Mattes D1-1/+1
2015-02-22cNetwork: Added EnumLocalIPAddresses() function.Mattes D3-0/+133
2015-02-20UDPEndpointImpl: Fixed clang warnings.Mattes D1-3/+3
2015-02-20cNetwork: Added UDP API.Mattes D5-1/+780
2015-02-18NetworkSingleton: LibEvent thread is joined properly on server exit.Mattes D2-7/+5
2015-02-18Network: Fixed two-socket servers.Mattes D1-1/+1
2015-02-14Fixed TCP link shutdown.Mattes D2-9/+68
The shutdown is postponed until there's no more outgoing data in the LibEvent buffers.
2015-02-08ServerHandle: Fixed socket reuse.Mattes D1-10/+30
Fixes CID 104670, CID 104670 and CID 103724.
2015-02-07Use evutil_make_listen_socket_reuseableHowaner1-16/+6
2015-02-07Set reuse flag to socketsHowaner1-1/+24
Should fix #1726
2015-02-04Exported cServerHandle and cNetwork:Listen to Lua.Mattes D1-0/+3
Also added an example to the NetworkTest plugin.
2015-02-04cTCPLink: Fixed missing addresses on link connection.Mattes D1-2/+2
2015-01-29Fixed missing LibEvent reference in OSSupport.Mattes D1-1/+1
2015-01-27Fixed listening ports not closed on cServerHandle::Close.Mattes D1-0/+3
2015-01-27Added network termination called at app exit.Mattes D2-12/+43
This fixes a crash in MSVC runtime caused by joining a thread in a global var's destructor.
2015-01-27cTCPLinkImpl: Added the BEV_OPT_THREADSAFE flag.Mattes D1-2/+8
2015-01-27ServerHandleImpl: Removed needless diagnostic output.Mattes D1-4/+0
2015-01-27Removed cFile::ReplaceFileNameInvalidChars().Mattes D2-26/+0
Its only usage in cProtocol18 has been changed to a simple string replace - only the IPv6's colons were causing problems.
2015-01-27Removed ListenThread and SocketThreads.Mattes D5-1225/+0
They have been replaced by the cNetwork API. Socket.cpp is still used by RCONClient.
2015-01-27cNetwork: Fixed IP address reading for incoming connections.Mattes D1-1/+2
2015-01-27cFile: Added ReplaceFileNameInvalidChars().Mattes D2-0/+26
2015-01-27Fixed missing LibEvent reference in OSSupport.Mattes D1-1/+1
2015-01-23cNetwork: Added self pointers to keep objects alive for callbacks.Mattes D5-17/+39
Ref.: http://forum.mc-server.org/showthread.php?tid=1700&pid=17947#pid17947
2015-01-22cNetwork: Renamed callback to OnConnected()Mattes D2-3/+6
2015-01-22cNetwork: Added link creation callback.Mattes D4-15/+42
This allows the callback classes to store the link inside them and use it internally later on, mainly for sending data.
2015-01-22cNetwork: Changed listening API.Mattes D4-29/+51
The link-callbacks for each new accepted link are now received from the OnIncomingConnection listen-callback.
2015-01-22cNetwork: Added error message to error callbacks.Mattes D5-13/+20
2015-01-22cTCPLinkImpl: Fixed type conversion warning.Mattes D3-5/+5
2015-01-22cNetwork: Fixed race conditions with lookups; proper shutdown.Mattes D6-82/+123
2015-01-22cNetwork: Split the main cpp file into several files.Mattes D13-1050/+1148
2015-01-22cNetwork: Fixed WinXP dualstack listening.Mattes D1-21/+42
2015-01-22cNetwork: Split cNetworkSingleton to a separate file.Mattes D4-325/+430
2015-01-22cNetwork: Fixed WSAStartup()-not-called error in Listen().Mattes D1-0/+3
2015-01-22cNetwork: Handle WSA initialization failures.Mattes D1-1/+7
2015-01-22cNetwork: Added an OnError callback for listening servers.Mattes D2-0/+8
The callback receives the error details.
2015-01-22cNetwork: Rewritten server listen into a factory method.Mattes D1-88/+102
2015-01-22cNetwork: Removed unneeded dependency.Mattes D1-1/+0
2015-01-22cNetwork: Refactored cTCPLinkImpl::Connect into a factory.Mattes D1-41/+48
2015-01-22cNetwork: Cosmetics.Mattes D1-6/+10
2015-01-22cNetwork: Fixed compilation.Mattes D1-9/+8
2015-01-22Wrap debug variable in ifdef worktycho1-0/+2
avoidss unused variable error in clang
2015-01-22cNetwork: Added error logging to server socket creation.Mattes D1-6/+24
This is mainly for WinXP and RasPi testing.
2015-01-22cNetwork: Added multithreading protection.Mattes D2-3/+28
2015-01-22cNetwork: Implemented connection shutdown and close.Mattes D2-17/+59
2015-01-22cNetwork: Fixed Linux compilation.Mattes D1-5/+23
2015-01-22cNetwork: Implemented link address getting.Mattes D1-57/+117
2015-01-22cNetwork: Implemented basic server functionality.Mattes D1-122/+215
2015-01-22cNetwork: Implemented IP-to-hostname lookup.Mattes D1-8/+114
2015-01-22cNetwork: Implemented HostnameToIP lookups.Mattes D2-6/+141
2015-01-22Extracted Google connection testTycho1-74/+3
2015-01-22cNetwork: Linux compilation fix.Mattes D2-4/+23
2015-01-22Implemented LibEvent-based client connections.Mattes D3-0/+1027
2015-01-18Fixed various warnings.Mattes D1-1/+1
2015-01-17Fixed CppCheck: (performance) Possible inefficient checking for emptiness.Kirill Kirilenko1-2/+2
2014-12-25cIsThread: Fixed a race condition on thread start.Mattes D2-7/+30
2014-12-11Cosmetic touchups.Mattes D1-1/+1
Removed trailing whitespace, added cast to remove warning, added file seeking in case of corrupt files.
2014-12-09Added a RemoveIf() function to cQueueMattes D1-0/+23
2014-12-07Fixed integer overflow problems.Mattes D2-4/+4
The event would overflow when requesting a 60 minute timeout.
2014-12-07Fixed c++11 branch issues.Mattes D1-10/+10
2014-12-05BasicStyle: Added missing braces to control statements.Mattes D1-1/+10
2014-12-05Fixed reported parentheses around comparisons.Mattes D1-1/+1
2014-12-04Fixed trailing whitespace.Mattes D1-5/+5
2014-12-03Fixes socket leak in HTTP server.Mattes D1-3/+11
Fixes #1643.
2014-11-30Fixed compiling on linux.Howaner1-0/+1
2014-11-29Added a basic stacktracing for assert and signal failures.Mattes D3-2/+64
2014-11-23Compilation fixesTiger Wang1-2/+2
2014-11-04cEvent: Changed chrono duration resolution.Mattes D1-1/+1
2014-11-04cEvent: Changed steady_clock to system_clock.Mattes D1-2/+2
2014-10-24Moved the chrono include into Globals.Mattes D1-1/+0
2014-10-24Added a missing chrono include.Mattes D1-0/+1
2014-10-24OSSupport/CMakeLists.txt: fixed indentationarchshift1-3/+3
2014-10-24SuggestionsTiger Wang3-6/+46
2014-10-24Fixed potential linker errors with mingw, as it isn't MSVC and it isn't APPLE.archshift1-4/+4
2014-10-23Fix linking on OS X, which does not have librt.archshift1-2/+6
2014-10-23Reimplemented cEvent using C++11 primitives.Mattes D2-136/+51
Fixes #1523.
2014-10-23En masse NULL -> nullptr replaceTiger Wang9-35/+35
2014-10-21Compile fix?Tiger Wang1-2/+2
2014-10-20En masse NULL -> nullptr replaceTiger Wang9-35/+35
2014-10-20Use std::recusive_mutexTiger Wang3-52/+9
2014-10-20Migrated cSleep and cTimer to std::chronoTiger Wang6-98/+1
2014-10-19Use std::threadTiger Wang7-339/+34
2014-10-12convert old style casts to fix warningsSteven Riehl1-20/+16
2014-10-06Update CMakeLists.txtworktycho1-1/+1
2014-10-05Added a cEvent::Wait() with timeout.Mattes D2-0/+51
2014-09-14OSSupport: Fixed UNICODE Windows builds.Mattes D2-8/+8
The files now compile even inside UNICODE applications.
2014-08-28Fixed spaces after "template" keyword.Mattes D1-1/+1
2014-08-15Removed an unneeded cast.madmaxoft1-1/+1
2014-08-12Fixed windows compilation and style issues.madmaxoft1-4/+4
2014-08-10First Implementatation of new Loggin frameworkTycho2-3/+5
2014-07-24Removed redundant semicolons and re-added warningarchshift1-2/+2
2014-07-21Style: Normalized to no spaces before closing parenthesis.madmaxoft8-44/+44
2014-07-21Style: Normalized spaces after if, for and while.madmaxoft3-13/+13
2014-07-19Socket: removed unused Socket destructorarchshift2-10/+0
2014-07-19Fixed style: spaces after commas.madmaxoft2-5/+5
2014-07-19Subdirs: Only add_library if not using MSVCarchshift1-3/+5
2014-07-19OSSupport/CMakeLists.txt: Replaced glob with list of filesarchshift1-5/+32
2014-07-17Fixed tabs used for alignment.madmaxoft3-19/+35
2014-07-17Basic style fixes.madmaxoft4-7/+7
2014-07-17Normalized comments.madmaxoft7-18/+18
This was mostly done automatically and then visually inspected for obvious errors. All //-style comments should have a 2-space separation from the code, and 1 space after the comment sign.
2014-07-01Fixed printf formats for Win buildsmadmaxoft2-4/+4
2014-06-30Fixed cFile compilation under MinGW.madmaxoft1-0/+3
2014-06-19Nullify deleted pointers.archshift3-0/+4
2014-06-08Fixed deadlock when moving players to other worlds.Mattes D2-3/+22
Fixes #1039, fixes #851
2014-05-09Fixed MSVC 64-bit build warnings.Mattes D4-8/+8
2014-05-08Fixed MSVC 64-bit build warnings.Mattes D4-8/+8
2014-05-02Open files in shared mode on windows, so that other tools may read them.madmaxoft1-2/+2
This was the behavior before fopen_s() was used for implementation; unlike fopen(), fopen_s() opens the file in exclusive mode.
2014-05-01Fixed crashes in the SSL HTTP connection.madmaxoft1-2/+4
2014-04-30Removed the unused cBlockingTCPLink class.madmaxoft2-170/+0
2014-04-28Template MagicTycho2-4/+4
Removed need to allocate a fake meta block by using templates to provide a version of the code that does not use metas. Also changed the function to a template argument to make sure that the compilier is able to inline it.
2014-04-27cSocket creates the socket in Connect if no socket is present yet.madmaxoft1-2/+8
2014-04-26Fixed unitialized member in gZipFile (CID 43673)jfhumann1-1/+1
2014-04-26Fixed mobs that don't naturally spawn.archshift1-5/+5
2014-04-25Cmake generated projects for IDEs include headers in project files.archshift1-0/+1
2014-04-11Fixed issues with 64-bit MSVC compilation.madmaxoft3-21/+35
2014-04-02Fixed All signedness warnings in HTTPServer.cppTycho1-1/+1
2014-04-01More cFile warning fixes.madmaxoft1-1/+1
2014-04-01Fixed clang warnings in cGZipFile.madmaxoft1-2/+2
2014-04-01Fixed clang warnings in cFile.madmaxoft1-10/+10
We only support 32-bit filesizes (files < 2 GiB).
2014-03-28Fixed non-virtual destructors warnings.madmaxoft1-9/+11
2014-03-25More fixes to get it to compile for me on Mac 10.9. Mostly just newline additions, but some of the unused variables were causing errors, so I wrapped them in #ifndef __APPLE__ calls, since I didn't know if they were going to be used in the future.Samuel Barney1-1/+1
Also had to undefine TOLUA_TEMPLATE_BIND a couple of times.
2014-03-25Added newlines. Without them, the files would not compile.Samuel Barney2-2/+2
2014-03-18Fixed cGZipFile::ReadRestOfFile returning incorrect value.madmaxoft1-1/+4
2014-03-14Fixed xofts issuesTycho1-1/+1
2014-03-12Added additional macros to support the MSVC size_t format and changed all formats to use the macrosTycho1-1/+1
2014-03-11Fixed a load of format string errorsTycho1-1/+1
2014-03-11Added macros to follow format string checking through wrappersTycho1-1/+1
2014-03-10Fixed cast to type with different alignment in BlockingTCPLinkTycho1-1/+1
2014-03-10Fixed cast between types of different alignment in cSocketTycho1-1/+2
2014-03-09Fix IsThread destructorTycho1-1/+1
2014-03-07Fixed warningsTycho1-1/+1
2014-02-28Fixed multiple gcc warnings about unused params.madmaxoft1-0/+4
2014-02-23fixed globals.h warningsTycho1-1/+5
2014-02-03Fixed #491Tiger Wang1-2/+14
2014-02-03Fixed socket leaking.madmaxoft1-0/+5
2014-02-03SocketThreads: Fixed sending to closed socket.madmaxoft1-1/+6
2014-01-28Fixed timing on *nix.madmaxoft1-1/+1
2014-01-27Squashed common code.madmaxoft1-14/+7
2014-01-27Fixed Linux compilation.madmaxoft1-1/+2
2014-01-27Rewritten networking to use non-blocking sockets.madmaxoft4-62/+176
This fixes #592.
2014-01-25Added cFile::Flush().madmaxoft2-20/+34
This is useful when using cFile as a log file and we know the server may crash after a specific write, so we flush the file before continuing.
2014-01-25Switched cEvent to GetOSErrorStringTycho3-18/+14
2014-01-25Extracted cSocket::GetErrorString into GetOSErrorStringTycho6-59/+62
2014-01-23Switched cEvent to use strerror_r for error messagesTycho1-6/+18
2014-01-19Rewritten SocketThreads for proper shutdown scenario.madmaxoft4-158/+182
This fixes #560 and #390.
2014-01-19SocketThreads: Removed unused code.madmaxoft2-53/+3
2014-01-16Fixed SIGPIPE on cSocket::Send().madmaxoft3-12/+13
2014-01-16Another VarArgs fix.madmaxoft1-4/+2
This time using va_copy() on platforms that have it and simple assignment on platforms that don't.
2014-01-15Using a 2nd argument instead of va_copy().madmaxoft1-2/+4
This seems to be the only reasonable C++03-only solution.
2014-01-13Removed shutdown() from socket closing.madmaxoft1-4/+0
It's not there for Windows and everything seems fine, the client doesn't shutdown either, so why should we be polite. Fixes #537.
2014-01-05Added fake functions into cCriticalSection because of the change to ASSERTDiusrex1-0/+5
2014-01-05Fixed a race condition in the cQueue class.madmaxoft1-59/+86
Fixes #505.
2014-01-03Fixed DocumentationTycho1-4/+2
2014-01-03derpTycho1-1/+1
2014-01-03actual fixTycho1-2/+9
2014-01-03fixed failure to return a value from RemoveTycho1-1/+1
2014-01-03implement xsofts recommendationsTycho Bickerstaff1-9/+15
2014-01-02added documentationTycho Bickerstaff1-7/+45
2014-01-02rewrote queue not to use promises for waitsTycho Bickerstaff3-105/+11
2013-12-31fogot to add promise classesTycho Bickerstaff2-0/+92
2013-12-31clean up code for patchingTycho Bickerstaff2-3/+4
2013-12-31refactored chunk Queue to seperate classTycho Bickerstaff4-26/+95
2013-12-22fixed rdynamic as its not acctually needed a cmake handles it, looks like the problem was caused by the linux linker accepting the option twice and the os x linker notTycho Bickerstaff1-0/+31
2013-12-28Fixed a (valid) warning in RCONServer.madmaxoft1-0/+3
2013-12-21basic threadsafe queue interfaceTycho Bickerstaff2-0/+34
2013-12-20Fixed the rest of constructor reorders.madmaxoft1-2/+2
2013-12-19added pthread linking code to OSSupportTycho Bickerstaff1-0/+4
2013-12-10added tolua++ command and removed stackwalker from buildTycho Bickerstaff1-1/+0
2013-12-10more cmake changesTycho Bickerstaff1-2/+4
2013-12-10more cmakeTycho Bickerstaff1-1/+3
2013-12-10fixed comparison of thread handle to Null point rather than null handleTycho Bickerstaff1-1/+1
2013-12-10started work on cmakeTycho Bickerstaff1-0/+7
2013-11-27Fixed the remaining derpsAlexander Harkness1-1/+1
2013-11-25Further attempts to fix compileTiger Wang1-1/+1
2013-11-24Attempt to fix compilationTiger Wang1-1/+1
2013-11-24Moved source to srcAlexander Harkness26-0/+3573