TrinityCore
Main.cpp File Reference
#include "AppenderDB.h"
#include "Banner.h"
#include "BigNumber.h"
#include "Config.h"
#include "DatabaseEnv.h"
#include "DatabaseLoader.h"
#include "DeadlineTimer.h"
#include "GitRevision.h"
#include "IPLocation.h"
#include "IpNetwork.h"
#include "Locales.h"
#include "LoginRESTService.h"
#include "MySQLThreading.h"
#include "OpenSSLCrypto.h"
#include "ProcessPriority.h"
#include "RealmList.h"
#include "SecretMgr.h"
#include "SessionManager.h"
#include "SslContext.h"
#include "Util.h"
#include <boost/asio/signal_set.hpp>
#include <boost/dll/runtime_symbol_info.hpp>
#include <boost/program_options.hpp>
#include <boost/filesystem/operations.hpp>
#include <google/protobuf/stubs/common.h>
#include <iostream>
#include <csignal>
#include "Hacks/boost_program_options_with_filesystem_path.h"
#include "ServiceWin32.h"
+ Include dependency graph for Main.cpp:

Go to the source code of this file.

Macros

#define _TRINITY_BNET_CONFIG   "bnetserver.conf"
 
#define _TRINITY_BNET_CONFIG_DIR   "bnetserver.conf.d"
 

Functions

void ServiceStatusWatcher (std::weak_ptr< Trinity::Asio::DeadlineTimer > serviceStatusWatchTimerRef, std::weak_ptr< Trinity::Asio::IoContext > ioContextRef, boost::system::error_code const &error)
 
bool StartDB ()
 Initialize connection to the database. More...
 
void StopDB ()
 Close the connection to the database. More...
 
void SignalHandler (std::weak_ptr< Trinity::Asio::IoContext > ioContextRef, boost::system::error_code const &error, int signalNumber)
 
void KeepDatabaseAliveHandler (std::weak_ptr< Trinity::Asio::DeadlineTimer > dbPingTimerRef, int32 dbPingInterval, boost::system::error_code const &error)
 
void BanExpiryHandler (std::weak_ptr< Trinity::Asio::DeadlineTimer > banExpiryCheckTimerRef, int32 banExpiryCheckInterval, boost::system::error_code const &error)
 
variables_map GetConsoleArguments (int argc, char **argv, fs::path &configFile, fs::path &configDir, std::string &winServiceAction)
 
int main (int argc, char **argv)
 

Variables

char serviceName [] = "bnetserver"
 
char serviceLongName [] = "TrinityCore bnet service"
 
char serviceDescription [] = "TrinityCore Battle.net emulator authentication service"
 
int m_ServiceStatus = -1
 

Macro Definition Documentation

◆ _TRINITY_BNET_CONFIG

#define _TRINITY_BNET_CONFIG   "bnetserver.conf"

Definition at line 60 of file Main.cpp.

◆ _TRINITY_BNET_CONFIG_DIR

#define _TRINITY_BNET_CONFIG_DIR   "bnetserver.conf.d"

Definition at line 63 of file Main.cpp.

Function Documentation

◆ BanExpiryHandler()

void BanExpiryHandler ( std::weak_ptr< Trinity::Asio::DeadlineTimer banExpiryCheckTimerRef,
int32  banExpiryCheckInterval,
boost::system::error_code const &  error 
)

Definition at line 348 of file Main.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ GetConsoleArguments()

variables_map GetConsoleArguments ( int  argc,
char **  argv,
fs::path &  configFile,
fs::path &  configDir,
std::string &  winServiceAction 
)

Definition at line 391 of file Main.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ KeepDatabaseAliveHandler()

void KeepDatabaseAliveHandler ( std::weak_ptr< Trinity::Asio::DeadlineTimer dbPingTimerRef,
int32  dbPingInterval,
boost::system::error_code const &  error 
)

Definition at line 330 of file Main.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ main()

int main ( int  argc,
char **  argv 
)

Definition at line 89 of file Main.cpp.

+ Here is the call graph for this function:

◆ ServiceStatusWatcher()

void ServiceStatusWatcher ( std::weak_ptr< Trinity::Asio::DeadlineTimer serviceStatusWatchTimerRef,
std::weak_ptr< Trinity::Asio::IoContext ioContextRef,
boost::system::error_code const &  error 
)

Definition at line 368 of file Main.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ SignalHandler()

void SignalHandler ( std::weak_ptr< Trinity::Asio::IoContext ioContextRef,
boost::system::error_code const &  error,
int  signalNumber 
)

Definition at line 323 of file Main.cpp.

+ Here is the caller graph for this function:

◆ StartDB()

bool StartDB ( )

Initialize connection to the database.

Initialize connection to the databases.

  • Get the realm Id from the configuration file
  • Clean the database before starting
  • Insert version info into DB

Definition at line 299 of file Main.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ StopDB()

void StopDB ( )

Close the connection to the database.

Definition at line 317 of file Main.cpp.

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Variable Documentation

◆ m_ServiceStatus

int m_ServiceStatus = -1

Definition at line 77 of file Main.cpp.

◆ serviceDescription

char serviceDescription[] = "TrinityCore Battle.net emulator authentication service"

Definition at line 70 of file Main.cpp.

◆ serviceLongName

char serviceLongName[] = "TrinityCore bnet service"

Definition at line 69 of file Main.cpp.

◆ serviceName

char serviceName[] = "bnetserver"

Definition at line 68 of file Main.cpp.