diff --git a/CMakeLists.txt b/CMakeLists.txt index 38332b49c..b4f3e101f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,4 +1,36 @@ -#EQEmu Cmake +#EQEmu CMake +#Variables used: +#EQEMU_DISABLE_CRT_SECURE_WARNINGS +#EQEMU_FAST_FLOATINGPOINT +#EQEMU_ENABLE_CRASH_LOGGING +#EQEMU_DISABLE_SAFESEH +#EQEMU_BUILD_MSVC_MP +#EQEMU_DEBUG_LEVEL +#EQEMU_LOG_LEVEL_STATUS +#EQEMU_LOG_LEVEL_NORMAL +#EQEMU_LOG_LEVEL_ERROR +#EQEMU_LOG_LEVEL_DEBUG +#EQEMU_LOG_LEVEL_QUEST +#EQEMU_LOG_LEVEL_COMMANDS +#EQEMU_LOG_LEVEL_CRASH +#EQEMU_STREAM_SEND_RATE +#EQEMU_STREAM_DECAY_RATE +#EQEMU_STREAM_RETRANSMIT_TIMEOUT_MUL +#EQEMU_STREAM_RETRANSMIT_TIMEOUT_MAX +#EQEMU_STREAM_AVERAGE_DELTA_MAX +#EQEMU_STREAM_RETRANSMIT_ACKED_PACKETS +#EQEMU_DEPOP_INVALIDATES_CACHE +#EQEMU_ENABLE_BOTS +#EQEMU_DISABLE_LOGSYS +#EQEMU_COMMANDS_LOGGING +#EQEMU_BUILD_SERVER +#EQEMU_BUILD_LOGIN +#EQEMU_BUILD_TESTS +#EQEMU_BUILD_PERL +#EQEMU_BUILD_LUA +#EQEMU_SANITIZE_LUA_LIBS +#EQEMU_BUILD_CLIENT_FILES +#EQEMU_MAP_DIR #We set a fairly new version (as of 2013) because I found finding perl was a bit... buggy on older ones #Can change this if you really want but you should upgrade! @@ -7,9 +39,6 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.8) #FindMySQL is located here so lets make it so CMake can find it SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/" ${CMAKE_MODULE_PATH}) -#For checking includes -INCLUDE (CheckIncludeFiles) - #Our project name is EQEmu PROJECT(EQEmu) @@ -75,7 +104,7 @@ IF(MSVC) SET(CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO "${CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO} /SAFESEH:NO") ENDIF(EQEMU_DISABLE_SAFESEH) - OPTION(EQEMU_BUILD_MSVC_MP "Enable build with multiple processes." TRUE) + OPTION(EQEMU_BUILD_MSVC_MP "Enable build with multiple processes." ON) IF(EQEMU_BUILD_MSVC_MP) SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /MP") ENDIF(EQEMU_BUILD_MSVC_MP) @@ -105,12 +134,6 @@ IF(UNIX) ENDIF(CMAKE_SYSTEM_NAME MATCHES "Darwin") ENDIF(UNIX) -#use stdint.h types if they exist for this platform (we have to guess otherwise) -CHECK_INCLUDE_FILES(stdint.h HAVE_STDINT_H) -IF(HAVE_STDINT_H) - ADD_DEFINITIONS(-DEQEMU_USE_STDINT) -ENDIF(HAVE_STDINT_H) - #debug level, 5 is default. Most people wont ever change this but it's there if you want to SET(EQEMU_DEBUG_LEVEL 5 CACHE STRING "EQEmu debug level: 0 - Quiet mode Errors to file Status and Normal ignored @@ -229,10 +252,9 @@ ENDIF(EQEMU_ENABLE_BOTS) #What to build OPTION(EQEMU_BUILD_SERVER "Build the game server." ON) OPTION(EQEMU_BUILD_LOGIN "Build the login server." OFF) -OPTION(EQEMU_BUILD_SOCKET_SERVER "Build the socket server." OFF) OPTION(EQEMU_BUILD_TESTS "Build utility tests." OFF) OPTION(EQEMU_BUILD_PERL "Build Perl parser." ON) -OPTION(EQEMU_BUILD_LUA "Build Lua parser." OFF) +OPTION(EQEMU_BUILD_LUA "Build Lua parser." ON) OPTION(EQEMU_BUILD_CLIENT_FILES "Build Client Import/Export Data Programs." ON) #C++11 stuff diff --git a/changelog.txt b/changelog.txt index a55917f97..88a629067 100644 --- a/changelog.txt +++ b/changelog.txt @@ -1,5 +1,12 @@ EQEMu Changelog (Started on Sept 24, 2003 15:50) ------------------------------------------------------- +== 07/14/2014 == +KLS: Changes to CMake build + -Lua builds by default now + -Common has been renamed common + -Binary files will now be put into ${CMAKE_BINARY_DIR}/bin instead of ${CMAKE_BINARY_DIR}/Bin + The last two are of note to people on non-windows systems as case sensitivity is important. Edit your scripts accordingly, thank you. + == 07/5/2014 == Kayen: Updated SE_Sanctuary - Adjust way hate lowering effect worked to be more accurate Kayen: Updated SE_SympatheticProc - Revised proc rate formula to be accurate to live. diff --git a/client_files/export/CMakeLists.txt b/client_files/export/CMakeLists.txt index 851aa05fb..6d0807e01 100644 --- a/client_files/export/CMakeLists.txt +++ b/client_files/export/CMakeLists.txt @@ -11,7 +11,7 @@ ADD_EXECUTABLE(export_client_files ${export_sources} ${export_headers}) INSTALL(TARGETS export_client_files RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}) -TARGET_LINK_LIBRARIES(export_client_files Common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY}) +TARGET_LINK_LIBRARIES(export_client_files common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY}) IF(MSVC) SET_TARGET_PROPERTIES(export_client_files PROPERTIES LINK_FLAGS_RELEASE "/OPT:REF /OPT:ICF") @@ -33,4 +33,4 @@ IF(UNIX) ADD_DEFINITIONS(-fPIC) ENDIF(UNIX) -SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/Bin) +SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) diff --git a/client_files/import/CMakeLists.txt b/client_files/import/CMakeLists.txt index 0b6c45b57..59e1a0ac4 100644 --- a/client_files/import/CMakeLists.txt +++ b/client_files/import/CMakeLists.txt @@ -11,7 +11,7 @@ ADD_EXECUTABLE(import_client_files ${import_sources} ${import_headers}) INSTALL(TARGETS import_client_files RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}) -TARGET_LINK_LIBRARIES(import_client_files Common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY}) +TARGET_LINK_LIBRARIES(import_client_files common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY}) IF(MSVC) SET_TARGET_PROPERTIES(import_client_files PROPERTIES LINK_FLAGS_RELEASE "/OPT:REF /OPT:ICF") @@ -33,4 +33,4 @@ IF(UNIX) ADD_DEFINITIONS(-fPIC) ENDIF(UNIX) -SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/Bin) +SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) diff --git a/common/CMakeLists.txt b/common/CMakeLists.txt index 35cb7eb7f..bcd054098 100644 --- a/common/CMakeLists.txt +++ b/common/CMakeLists.txt @@ -315,11 +315,11 @@ SOURCE_GROUP(TinyXML FILES INCLUDE_DIRECTORIES(Patches SocketLib StackWalker TinyXML) -ADD_LIBRARY(Common ${common_sources} ${common_headers}) +ADD_LIBRARY(common ${common_sources} ${common_headers}) IF(UNIX) ADD_DEFINITIONS(-fPIC) SET_SOURCE_FILES_PROPERTIES("patches/SoD.cpp" "patches/SoF.cpp" "patches/RoF.cpp" "patches/Underfoot.cpp" PROPERTIES COMPILE_FLAGS -O0) ENDIF(UNIX) -SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/Bin) +SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) diff --git a/common/EmuTCPConnection.cpp b/common/EmuTCPConnection.cpp index 39c297ccf..638825f08 100644 --- a/common/EmuTCPConnection.cpp +++ b/common/EmuTCPConnection.cpp @@ -366,22 +366,6 @@ bool EmuTCPConnection::LineOutQueuePush(char* line) { safe_delete_array(line); return(true); } - if (strcmp(line, "**PACKETMODESS**") == 0) { - MSendQueue.lock(); - safe_delete_array(sendbuf); - if (TCPMode == modeConsole) - Send((const uchar*) "\0**PACKETMODESS**\r", 18); - TCPMode = modePacket; - PacketMode = packetModeSocket_Server; - EmuTCPNetPacket_Struct* tnps = 0; - while ((tnps = InModeQueue.pop())) { - SendPacket(tnps); - safe_delete_array(tnps); - } - MSendQueue.unlock(); - safe_delete_array(line); - return(true); - } } return(TCPConnection::LineOutQueuePush(line)); @@ -435,13 +419,6 @@ bool EmuTCPConnection::ConnectIP(uint32 irIP, uint16 irPort, char* errbuf) { sendbuf = new uchar[sendbuf_size]; memcpy(sendbuf, "\0**PACKETMODEQS**\r", sendbuf_size); } - else if (PacketMode == packetModeSocket_Server) { - safe_delete_array(sendbuf); - sendbuf_size = 18; - sendbuf_used = sendbuf_size; - sendbuf = new uchar[sendbuf_size]; - memcpy(sendbuf, "\0**PACKETMODESS**\r", sendbuf_size); - } else { //default: packetModeZone safe_delete_array(sendbuf); diff --git a/common/EmuTCPConnection.h b/common/EmuTCPConnection.h index 947ee9480..ff7dd8995 100644 --- a/common/EmuTCPConnection.h +++ b/common/EmuTCPConnection.h @@ -30,7 +30,7 @@ class EmuTCPServer; class EmuTCPConnection : public TCPConnection { public: enum eTCPMode { modeConsole, modeTransition, modePacket }; - enum ePacketMode { packetModeZone, packetModeLauncher, packetModeLogin, packetModeUCS, packetModeQueryServ, packetModeSocket_Server }; + enum ePacketMode { packetModeZone, packetModeLauncher, packetModeLogin, packetModeUCS, packetModeQueryServ }; EmuTCPConnection(uint32 ID, EmuTCPServer* iServer, SOCKET iSock, uint32 irIP, uint16 irPort, bool iOldFormat = false); EmuTCPConnection(bool iOldFormat = false, EmuTCPServer* iRelayServer = 0, eTCPMode iMode = modePacket); // for outgoing connections diff --git a/common/types.h b/common/types.h index a26a65956..9064b67e0 100644 --- a/common/types.h +++ b/common/types.h @@ -18,7 +18,6 @@ #ifndef TYPES_H #define TYPES_H -#ifdef EQEMU_USE_STDINT #include typedef uint8_t byte; typedef uint8_t uint8; @@ -29,29 +28,6 @@ typedef int8_t int8; typedef int16_t int16; typedef int32_t int32; typedef int64_t int64; -#else -typedef unsigned char byte; -typedef unsigned char uint8; -typedef signed char int8; -typedef unsigned short uint16; -typedef signed short int16; -typedef unsigned int uint32; -typedef signed int int32; - -#ifdef _WINDOWS - #if defined(_INTEGRAL_MAX_BITS) && _INTEGRAL_MAX_BITS >= 64 - typedef unsigned __int64 uint64; - typedef unsigned __int64 uint64; - typedef signed __int64 int64; - #else - #error __int64 not supported - #endif -#else -typedef unsigned long long uint64; -typedef unsigned long long uint64; -typedef signed long long int64; -#endif -#endif #ifdef _WINDOWS #pragma warning( disable : 4200 ) diff --git a/eqlaunch/CMakeLists.txt b/eqlaunch/CMakeLists.txt index b636a18cf..922522d86 100644 --- a/eqlaunch/CMakeLists.txt +++ b/eqlaunch/CMakeLists.txt @@ -15,7 +15,7 @@ ADD_EXECUTABLE(eqlaunch ${eqlaunch_sources} ${eqlaunch_headers}) INSTALL(TARGETS eqlaunch RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}) -TARGET_LINK_LIBRARIES(eqlaunch Common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY}) +TARGET_LINK_LIBRARIES(eqlaunch common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY}) IF(MSVC) SET_TARGET_PROPERTIES(eqlaunch PROPERTIES LINK_FLAGS_RELEASE "/OPT:REF /OPT:ICF") @@ -37,4 +37,4 @@ IF(UNIX) ADD_DEFINITIONS(-fPIC) ENDIF(UNIX) -SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/Bin) +SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) diff --git a/loginserver/CMakeLists.txt b/loginserver/CMakeLists.txt index 9ded859e5..f09d3043a 100644 --- a/loginserver/CMakeLists.txt +++ b/loginserver/CMakeLists.txt @@ -43,7 +43,7 @@ ADD_EXECUTABLE(loginserver ${eqlogin_sources} ${eqlogin_headers}) INSTALL(TARGETS loginserver RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}) -TARGET_LINK_LIBRARIES(loginserver Common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE}) +TARGET_LINK_LIBRARIES(loginserver common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE}) IF(MSVC) SET_TARGET_PROPERTIES(loginserver PROPERTIES LINK_FLAGS_RELEASE "/OPT:REF /OPT:ICF") @@ -67,4 +67,4 @@ IF(UNIX) ADD_DEFINITIONS(-fPIC) ENDIF(UNIX) -SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/Bin) +SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) diff --git a/luabind/CMakeLists.txt b/luabind/CMakeLists.txt index 19d694203..9f3288d4a 100644 --- a/luabind/CMakeLists.txt +++ b/luabind/CMakeLists.txt @@ -31,4 +31,4 @@ IF(UNIX) ADD_DEFINITIONS(-fPIC) ENDIF(UNIX) -SET(LIBRARY_OUTPUT_PATH ../Bin) +SET(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) diff --git a/queryserv/CMakeLists.txt b/queryserv/CMakeLists.txt index 33be865e0..3a561da56 100644 --- a/queryserv/CMakeLists.txt +++ b/queryserv/CMakeLists.txt @@ -21,7 +21,7 @@ INSTALL(TARGETS queryserv RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}) ADD_DEFINITIONS(-DQSERV) -TARGET_LINK_LIBRARIES(queryserv Common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY}) +TARGET_LINK_LIBRARIES(queryserv common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY}) IF(MSVC) SET_TARGET_PROPERTIES(queryserv PROPERTIES LINK_FLAGS_RELEASE "/OPT:REF /OPT:ICF") @@ -43,4 +43,4 @@ IF(UNIX) ADD_DEFINITIONS(-fPIC) ENDIF(UNIX) -SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/Bin) +SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) diff --git a/shared_memory/CMakeLists.txt b/shared_memory/CMakeLists.txt index 3d23a1b01..0124af855 100644 --- a/shared_memory/CMakeLists.txt +++ b/shared_memory/CMakeLists.txt @@ -23,7 +23,7 @@ ADD_EXECUTABLE(shared_memory ${shared_memory_sources} ${shared_memory_headers}) INSTALL(TARGETS shared_memory RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}) -TARGET_LINK_LIBRARIES(shared_memory Common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY}) +TARGET_LINK_LIBRARIES(shared_memory common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY}) IF(MSVC) SET_TARGET_PROPERTIES(shared_memory PROPERTIES LINK_FLAGS_RELEASE "/OPT:REF /OPT:ICF") @@ -45,4 +45,4 @@ IF(UNIX) ADD_DEFINITIONS(-fPIC) ENDIF(UNIX) -SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/Bin) +SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index aba365486..4c4f32f0d 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -17,7 +17,7 @@ SET(tests_headers ADD_EXECUTABLE(tests ${tests_sources} ${tests_headers}) -TARGET_LINK_LIBRARIES(tests Common cppunit) +TARGET_LINK_LIBRARIES(tests common cppunit) IF(MSVC) SET_TARGET_PROPERTIES(tests PROPERTIES LINK_FLAGS_RELEASE "/OPT:REF /OPT:ICF") @@ -39,4 +39,4 @@ IF(UNIX) ADD_DEFINITIONS(-fPIC) ENDIF(UNIX) -SET(EXECUTABLE_OUTPUT_PATH ../Bin) +SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) diff --git a/ucs/CMakeLists.txt b/ucs/CMakeLists.txt index 44681831c..6a26413df 100644 --- a/ucs/CMakeLists.txt +++ b/ucs/CMakeLists.txt @@ -23,7 +23,7 @@ INSTALL(TARGETS ucs RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}) ADD_DEFINITIONS(-DUCS) -TARGET_LINK_LIBRARIES(ucs Common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY}) +TARGET_LINK_LIBRARIES(ucs common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY}) IF(MSVC) SET_TARGET_PROPERTIES(ucs PROPERTIES LINK_FLAGS_RELEASE "/OPT:REF /OPT:ICF") @@ -45,4 +45,4 @@ IF(UNIX) ADD_DEFINITIONS(-fPIC) ENDIF(UNIX) -SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/Bin) +SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) diff --git a/world/CMakeLists.txt b/world/CMakeLists.txt index 594f77bc1..ca48ea610 100644 --- a/world/CMakeLists.txt +++ b/world/CMakeLists.txt @@ -23,7 +23,6 @@ SET(world_sources perl_EQW.cpp perl_HTTPRequest.cpp queryserv.cpp - socket_server.cpp ucs.cpp wguild_mgr.cpp world_logsys.cpp @@ -54,7 +53,6 @@ SET(world_headers LoginServerList.h net.h queryserv.h - socket_server.h SoFCharCreateData.h ucs.h wguild_mgr.h @@ -71,7 +69,7 @@ INSTALL(TARGETS world RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}) ADD_DEFINITIONS(-DWORLD) -TARGET_LINK_LIBRARIES(world Common ${PERL_LIBRARY} debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY}) +TARGET_LINK_LIBRARIES(world common ${PERL_LIBRARY} debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY}) IF(MSVC) SET_TARGET_PROPERTIES(world PROPERTIES LINK_FLAGS_RELEASE "/OPT:REF /OPT:ICF") @@ -93,4 +91,4 @@ IF(UNIX) ADD_DEFINITIONS(-fPIC) ENDIF(UNIX) -SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/Bin) +SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin) diff --git a/world/console.cpp b/world/console.cpp index 5a9ee60f5..2cd4dac80 100644 --- a/world/console.cpp +++ b/world/console.cpp @@ -46,7 +46,6 @@ #include "LauncherList.h" #include "ucs.h" #include "queryserv.h" -#include "socket_server.h" #ifdef _WINDOWS #define snprintf _snprintf @@ -61,7 +60,6 @@ extern ClientList client_list; extern LauncherList launcher_list; extern UCSConnection UCSLink; extern QueryServConnection QSLink; -extern Socket_Server_Connection SSLink; extern volatile bool RunLoops; ConsoleList console_list; @@ -265,12 +263,6 @@ bool Console::Process() { QSLink.SetConnection(tcpc); tcpc = 0; } - else if (tcpc->GetPacketMode() == EmuTCPConnection::packetModeSocket_Server) - { - _log(WORLD__CONSOLE, "New Socket Server Connection from %s:%d", inet_ntoa(in), GetPort()); - SSLink.SetConnection(tcpc); - tcpc = 0; - } else { _log(WORLD__CONSOLE,"Unsupported packet mode from %s:%d", inet_ntoa(in), GetPort()); } diff --git a/world/net.cpp b/world/net.cpp index f8d3410c0..d7179bffe 100644 --- a/world/net.cpp +++ b/world/net.cpp @@ -86,7 +86,6 @@ #include "AdventureManager.h" #include "ucs.h" #include "queryserv.h" -#include "socket_server.h" TimeoutManager timeout_manager; EQStreamFactory eqsf(WorldStream,9000); @@ -98,7 +97,6 @@ LoginServerList loginserverlist; EQWHTTPServer http_server; UCSConnection UCSLink; QueryServConnection QSLink; -Socket_Server_Connection SSLink; LauncherList launcher_list; AdventureManager adventure_manager; DBAsync *dbasync = nullptr; @@ -456,8 +454,6 @@ int main(int argc, char** argv) { QSLink.Process(); - SSLink.Process(); - LFPGroupList.Process(); adventure_manager.Process(); diff --git a/world/socket_server.cpp b/world/socket_server.cpp deleted file mode 100644 index 3c6631c49..000000000 --- a/world/socket_server.cpp +++ /dev/null @@ -1,127 +0,0 @@ -#include "../common/debug.h" -#include "socket_server.h" -#include "WorldConfig.h" -#include "clientlist.h" -#include "zonelist.h" -#include "../common/logsys.h" -#include "../common/logtypes.h" -#include "../common/md5.h" -#include "../common/EmuTCPConnection.h" -#include "../common/packet_dump.h" - -extern ClientList client_list; -extern ZSList zoneserver_list; - -Socket_Server_Connection::Socket_Server_Connection() -{ - Stream = 0; - authenticated = false; -} - -void Socket_Server_Connection::SetConnection(EmuTCPConnection *inStream) -{ - if(Stream) - { - _log(SOCKET_SERVER__ERROR, "Incoming Socket_Server Connection while we were already connected to a Socket_Server."); - Stream->Disconnect(); - } - - Stream = inStream; - - authenticated = false; -} - -bool Socket_Server_Connection::Process() -{ - if (!Stream || !Stream->Connected()) - return false; - - ServerPacket *pack = 0; - - while((pack = Stream->PopPacket())) - { - if (!authenticated) - { - if (WorldConfig::get()->SharedKey.length() > 0) - { - if (pack->opcode == ServerOP_ZAAuth && pack->size == 16) - { - uint8 tmppass[16]; - - MD5::Generate((const uchar*) WorldConfig::get()->SharedKey.c_str(), WorldConfig::get()->SharedKey.length(), tmppass); - - if (memcmp(pack->pBuffer, tmppass, 16) == 0) - authenticated = true; - else - { - struct in_addr in; - in.s_addr = GetIP(); - _log(SOCKET_SERVER__ERROR, "Socket_Server authorization failed."); - ServerPacket* pack = new ServerPacket(ServerOP_ZAAuthFailed); - SendPacket(pack); - delete pack; - Disconnect(); - return false; - } - } - else - { - struct in_addr in; - in.s_addr = GetIP(); - _log(SOCKET_SERVER__ERROR, "Socket_Server_ authorization failed."); - ServerPacket* pack = new ServerPacket(ServerOP_ZAAuthFailed); - SendPacket(pack); - delete pack; - Disconnect(); - return false; - } - } - else - { - _log(SOCKET_SERVER__ERROR,"**WARNING** You have not configured a world shared key in your config file. You should add a STRING element to your element to prevent unauthorized zone access."); - authenticated = true; - } - delete pack; - continue; - } - switch(pack->opcode) - { - case 0: - break; - - case ServerOP_KeepAlive: - { - // ignore this - break; - } - case ServerOP_ZAAuth: - { - _log(SOCKET_SERVER__ERROR, "Got authentication from Socket_Server_ when they are already authenticated."); - break; - } - case ServerOP_LFGuildUpdate: - { - zoneserver_list.SendPacket(pack); - break; - } - default: - { - _log(SOCKET_SERVER__ERROR, "Unknown ServerOPcode from Socket_Server_ 0x%04x, size %d", pack->opcode, pack->size); - DumpPacket(pack->pBuffer, pack->size); - break; - } - } - - delete pack; - } - return(true); -} - -bool Socket_Server_Connection::SendPacket(ServerPacket* pack) -{ - if(!Stream) - return false; - - return Stream->SendPacket(pack); -} - diff --git a/world/socket_server.h b/world/socket_server.h deleted file mode 100644 index 7cb39c2d6..000000000 --- a/world/socket_server.h +++ /dev/null @@ -1,23 +0,0 @@ -#ifndef Socket_Server__H -#define Socket_Server__H - -#include "../common/types.h" -#include "../common/EmuTCPConnection.h" -#include "../common/servertalk.h" - -class Socket_Server_Connection -{ -public: - Socket_Server_Connection(); - void SetConnection(EmuTCPConnection *inStream); - bool Process(); - bool SendPacket(ServerPacket* pack); - void Disconnect() { if(Stream) Stream->Disconnect(); } - void SendMessage(const char *From, const char *Message); -private: - inline uint32 GetIP() const { return Stream ? Stream->GetrIP() : 0; } - EmuTCPConnection *Stream; - bool authenticated; -}; - -#endif /*Socket_Server__H_*/ diff --git a/zone/CMakeLists.txt b/zone/CMakeLists.txt index d35f46050..9f7250d4e 100644 --- a/zone/CMakeLists.txt +++ b/zone/CMakeLists.txt @@ -218,7 +218,7 @@ INSTALL(TARGETS zone RUNTIME DESTINATION ${CMAKE_INSTALL_PREFIX}) ADD_DEFINITIONS(-DZONE) -TARGET_LINK_LIBRARIES(zone Common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY}) +TARGET_LINK_LIBRARIES(zone common debug ${MySQL_LIBRARY_DEBUG} optimized ${MySQL_LIBRARY_RELEASE} ${ZLIB_LIBRARY}) IF(EQEMU_BUILD_PERL) TARGET_LINK_LIBRARIES(zone ${PERL_LIBRARY}) @@ -249,4 +249,4 @@ IF(UNIX) ADD_DEFINITIONS(-fPIC) ENDIF(UNIX) -SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/Bin) +SET(EXECUTABLE_OUTPUT_PATH ${PROJECT_BINARY_DIR}/bin)