fgms 0.13.5
The
FlightGear MultiPlayer Server
project
FG_SERVER Class Reference

The Main fgms Class. More...

#include <fg_server.hxx>

Public Types

enum  FG_SERVER_CONSTANTS {
  SUCCESS = 0, ERROR_COMMANDLINE = 1, ERROR_CREATE_SOCKET = 2, ERROR_COULDNT_BIND = 3,
  ERROR_NOT_LISTENING = 4, ERROR_COULDNT_LISTEN = 5, MAX_PACKET_SIZE = 1200, UPDATE_INACTIVE_PERIOD = 1,
  MAX_TELNETS = 5, RELAY_MAGIC = 0x53464746
}
 Internal Constants. More...
 

Public Member Functions

 FG_SERVER ()
 Constructor. More...
 
 ~FG_SERVER ()
 Standard destructor. More...
 
void AddBlacklist (const string &DottedIP, const string &Reason, time_t Timeout=10)
 Add an IP to the blacklist. More...
 
void AddCrossfeed (const string &Server, int Port)
 Insert a new crossfeed server into internal list. More...
 
void AddRelay (const string &Server, int Port)
 Insert a new relay server into internal list. More...
 
int AddTracker (const string &Server, int Port, bool IsTracked)
 Add a tracking server. More...
 
void AddWhitelist (const string &DottedIP)
 Add an IP to the whitelist. More...
 
int check_files ()
 Check exit and stat files. More...
 
void CloseTracker ()
 Cleanly closes the tracker. More...
 
void Done ()
 Close sockets, logfile etc. More...
 
void * HandleAdmin (int Fd)
 Handle an admin session. More...
 
void * HandleTelnet (int Fd)
 Handle a telnet session. if a telnet connection is opened, this method outputs a list of all known clients. More...
 
int Init ()
 Basic initialization. More...
 
int Loop ()
 Main loop of the server. More...
 
void PrepareInit ()
 Do anything necessary to (re-) init the server used to handle kill -HUP. More...
 
void SetAdminEnable (string Enable)
 Set enable password for admin connections. More...
 
void SetAdminPass (string Pass)
 Set Password for admin connections. More...
 
void SetAdminPort (int Port)
 Set listening port for admin connections. More...
 
void SetAdminUser (string User)
 Set User for admin connections. More...
 
void SetBindAddress (const std::string &BindAddress)
 Set the address this server listens on. More...
 
void SetDataPort (int Port)
 Set listening port for incoming clients. More...
 
void SetFQDN (const std::string &FQDN)
 Set the external address this server on. More...
 
void SetHub (bool IamHUB)
 Set if we are running as a Hubserver. More...
 
void SetLog (int Facility, int Priority)
 Set the default loglevel. More...
 
void SetLogfile (const std::string &LogfileName)
 Set the logfile. More...
 
void SetMaxRadarRange (int MaxRange)
 Set maximum allowed radar range of clients in nautical miles. More...
 
void SetOutOfReach (int OutOfReach)
 Set nautical miles two players must be apart to be out of reach. More...
 
void SetPlayerExpires (int Seconds)
 Set time in seconds. if no packet arrives from a client within this time, the connection is dropped. More...
 
void SetServerName (const std::string &ServerName)
 Set the server name. More...
 
void SetTelnetPort (int Port)
 Set listening port for telnets. More...
 
void Show_Stats (void)
 Show Stats. More...
 

Public Attributes

string ConfigFile
 

Protected Types

typedef std::map< uint32_t, string > mT_IP2Relay
 
typedef std::map< uint32_t, string >::iterator mT_RelayMapIt
 

Protected Member Functions

void AddBadClient (const netAddress &Sender, string &ErrorMsg, bool IsLocal, int Bytes)
 If we receive bad data from a client, we add the client to the internal list anyway, but mark them as bad. But first we look if it isn't already there. Send an error message to the bad client. More...
 
void AddClient (const netAddress &Sender, char *Msg)
 Insert a new client to internal list. More...
 
void DropClient (PlayerIt &CurrentPlayer)
 
void HandlePacket (char *sMsg, int Bytes, const netAddress &SenderAdress)
 Handle client connections. More...
 
bool IsInRange (const FG_ListElement &Relay, const PlayerIt &SendingPlayer, uint32_t MsgId)
 Decide whether the relay is interested in full rate updates. More...
 
bool IsKnownRelay (const netAddress &SenderAddress, size_t Bytes)
 Check if the sender is a known relay. More...
 
bool PacketIsValid (int Bytes, T_MsgHdr *MsgHdr, const netAddress &SenderAddress)
 
bool ReceiverWantsChat (const PlayerIt &SenderPos, const FG_Player &Receiver)
 
bool ReceiverWantsData (const PlayerIt &SenderPos, const FG_Player &Receiver)
 
void SendToCrossfeed (char *Msg, int Bytes, const netAddress &SenderAddress)
 Send message to all crossfeed servers. Crossfeed servers receive all traffic without condition, mainly used for testing and debugging. More...
 
void SendToRelays (char *Msg, int Bytes, PlayerIt &SendingPlayer)
 Send message to all relay servers. More...
 
int UpdateTracker (const string &callsign, const string &passwd, const string &modelname, const time_t time, const int type)
 Updates the remote tracker web server. More...
 
void WantExit ()
 allow the Admin CLI to shut down fgms More...
 

Protected Attributes

string m_AdminEnable
 
string m_AdminPass
 
int m_AdminPort
 
size_t m_AdminReceived
 
netSocketm_AdminSocket
 
string m_AdminUser
 
string m_BindAddress
 
FG_List m_BlackList
 
size_t m_BlackRejected
 
int m_childpid
 
size_t m_CrossFeedFailed
 
FG_List m_CrossfeedList
 
size_t m_CrossFeedSent
 
netSocketm_DataSocket
 
string m_FQDN
 
bool m_IamHUB
 
bool m_Initialized
 
int m_ipcid
 
bool m_IsParent
 
bool m_IsTracked
 
bool m_Listening
 
int m_ListenPort
 
size_t m_LocalClients
 
ofstream m_LogFile
 
string m_LogFileName
 
int m_MaxRadarRange
 
size_t m_NumMaxClients
 
size_t m_PacketsInvalid
 
size_t m_PacketsReceived
 
size_t m_PingReceived
 
int m_PlayerExpires
 
int m_PlayerIsOutOfReach
 
PlayerList m_PlayerList
 
size_t m_PongReceived
 
size_t m_PositionData
 
int16_t m_ProtoMajorVersion
 
int16_t m_ProtoMinorVersion
 
bool m_ReinitAdmin
 
bool m_ReinitData
 
bool m_ReinitTelnet
 
FG_List m_RelayList
 
size_t m_RelayMagic
 
mT_IP2Relay m_RelayMap
 
size_t m_RemoteClients
 
string m_ServerName
 
int m_TelnetPort
 
size_t m_TelnetReceived
 
netSocketm_TelnetSocket
 
FG_TRACKERm_Tracker
 
size_t m_TrackerConnect
 
size_t m_TrackerDisconnect
 
size_t m_TrackerPosition
 
string m_TrackerServer
 
size_t m_UnknownRelay
 
size_t m_UnkownMsgID
 
time_t m_UpdateTrackerFreq
 
time_t m_Uptime
 
bool m_useExitFile
 
bool m_useResetFile
 
bool m_useStatFile
 
bool m_WantExit
 
FG_List m_WhiteList
 
size_t mT_BlackRejected
 
size_t mT_CrossFeedFailed
 
size_t mT_CrossFeedSent
 
size_t mT_PacketsInvalid
 
size_t mT_PacketsReceived
 
size_t mT_PositionData
 
size_t mT_RelayMagic
 
size_t mT_TelnetReceived
 
size_t mT_UnknownRelay
 
size_t mT_UnkownMsgID
 

Friends

void * admin_helper (void *context)
 
class FG_CLI
 

Detailed Description

The Main fgms Class.

Definition at line 55 of file fg_server.hxx.

Member Typedef Documentation

◆ mT_IP2Relay

typedef std::map<uint32_t,string> FG_SERVER::mT_IP2Relay
protected

Definition at line 137 of file fg_server.hxx.

◆ mT_RelayMapIt

typedef std::map<uint32_t,string>::iterator FG_SERVER::mT_RelayMapIt
protected

Definition at line 138 of file fg_server.hxx.

Member Enumeration Documentation

◆ FG_SERVER_CONSTANTS

Internal Constants.

Enumerator
SUCCESS 
ERROR_COMMANDLINE 
ERROR_CREATE_SOCKET 
ERROR_COULDNT_BIND 
ERROR_NOT_LISTENING 
ERROR_COULDNT_LISTEN 
MAX_PACKET_SIZE 
UPDATE_INACTIVE_PERIOD 
MAX_TELNETS 
RELAY_MAGIC 

Definition at line 63 of file fg_server.hxx.

Constructor & Destructor Documentation

◆ FG_SERVER()

FG_SERVER::FG_SERVER ( )

Constructor.

Definition at line 165 of file fg_server.cxx.

◆ ~FG_SERVER()

FG_SERVER::~FG_SERVER ( )

Standard destructor.

Definition at line 251 of file fg_server.cxx.

Member Function Documentation

◆ AddBadClient()

void FG_SERVER::AddBadClient ( const netAddress Sender,
string &  ErrorMsg,
bool  IsLocal,
int  Bytes 
)
protected

If we receive bad data from a client, we add the client to the internal list anyway, but mark them as bad. But first we look if it isn't already there. Send an error message to the bad client.

Parameters
Sender
ErrorMsg
IsLocal

Definition at line 696 of file fg_server.cxx.

Referenced by HandleTelnet(), and PacketIsValid().

◆ AddBlacklist()

void FG_SERVER::AddBlacklist ( const string &  DottedIP,
const string &  Reason,
time_t  Timeout = 10 
)

Add an IP to the blacklist.

Parameters
FourDottedIPIP to add to blacklist

Definition at line 982 of file fg_server.cxx.

Referenced by IsKnownRelay(), and ProcessConfig().

◆ AddClient()

void FG_SERVER::AddClient ( const netAddress Sender,
char *  Msg 
)
protected

Insert a new client to internal list.

Parameters
Sender
Msg

Definition at line 741 of file fg_server.cxx.

Referenced by HandlePacket().

◆ AddCrossfeed()

void FG_SERVER::AddCrossfeed ( const string &  Server,
int  Port 
)

Insert a new crossfeed server into internal list.

Parameters
Serverchar with server
Portint with port number

Definition at line 920 of file fg_server.cxx.

Referenced by ProcessConfig().

◆ AddRelay()

void FG_SERVER::AddRelay ( const string &  Relay,
int  Port 
)

Insert a new relay server into internal list.

Parameters
Server
Port

Definition at line 865 of file fg_server.cxx.

Referenced by ProcessConfig().

◆ AddTracker()

int FG_SERVER::AddTracker ( const string &  Server,
int  Port,
bool  IsTracked 
)

Add a tracking server.

Parameters
ServerString with server
PortThe port number
IsTrackedIs Stracked
Return values
int-1 for fail or SUCCESS

Definition at line 949 of file fg_server.cxx.

Referenced by ProcessConfig().

◆ AddWhitelist()

void FG_SERVER::AddWhitelist ( const string &  DottedIP)

Add an IP to the whitelist.

Parameters
FourDottedIPIP to add to whitelist

Definition at line 963 of file fg_server.cxx.

Referenced by ProcessConfig().

◆ check_files()

int FG_SERVER::check_files ( )

Check exit and stat files.

Do not think this is used by many, but is a convenient way to output some stats to the LOG, or request an exit. In the past the reset action has failed, and although some fixes have been put in place, a caution about using this reset.

20150619:0.11.9: If running instance can NOT delete a detected file, usually due to wrong permissions, that particular file interface will be disabled. Also if any of these files exist at start-up, again that file interface will be disable. This also gives a way to disable this file interface actions.

Definition at line 1595 of file fg_server.cxx.

Referenced by Loop().

◆ CloseTracker()

void FG_SERVER::CloseTracker ( )

Cleanly closes the tracker.

Definition at line 2217 of file fg_server.cxx.

Referenced by AddTracker(), Done(), main(), and PrepareInit().

◆ Done()

void FG_SERVER::Done ( )

Close sockets, logfile etc.

Definition at line 2027 of file fg_server.cxx.

Referenced by Init(), main(), and ~FG_SERVER().

◆ DropClient()

void FG_SERVER::DropClient ( PlayerIt CurrentPlayer)
protected

Definition at line 1193 of file fg_server.cxx.

Referenced by HandlePacket(), and Loop().

◆ HandleAdmin()

void * FG_SERVER::HandleAdmin ( int  Fd)

Handle an admin session.

If a telnet connection to the admin port is established, a new FG_CLI instance is created.

Parameters
Fd– docs todo –

Definition at line 548 of file fg_server.cxx.

Referenced by admin_helper().

◆ HandlePacket()

void FG_SERVER::HandlePacket ( char *  Msg,
int  Bytes,
const netAddress SenderAddress 
)
protected

Handle client connections.

Parameters
Msg
Bytes
SenderAddress

Definition at line 1238 of file fg_server.cxx.

Referenced by DropClient(), and Loop().

◆ HandleTelnet()

void * FG_SERVER::HandleTelnet ( int  Fd)

Handle a telnet session. if a telnet connection is opened, this method outputs a list of all known clients.

Parameters
Fd– docs todo –

Geodetic Coordinates

Definition at line 569 of file fg_server.cxx.

Referenced by telnet_helper().

◆ Init()

int FG_SERVER::Init ( )

Basic initialization.

If we are already initialized, close all connections and re-init all variables

Definition at line 294 of file fg_server.cxx.

Referenced by main(), and SigHUPHandler().

◆ IsInRange()

bool FG_SERVER::IsInRange ( const FG_ListElement Relay,
const PlayerIt SendingPlayer,
uint32_t  MsgId 
)
protected

Decide whether the relay is interested in full rate updates.

See also
server.out_of_reach config.
Parameters
Relay
SendingPlayer
Return values
trueis within range

Definition at line 2412 of file fg_server.cxx.

Referenced by SendToRelays().

◆ IsKnownRelay()

bool FG_SERVER::IsKnownRelay ( const netAddress SenderAddress,
size_t  Bytes 
)
protected

Check if the sender is a known relay.

Parameters
SenderAddress
Return values
booltrue if known relay

Definition at line 1002 of file fg_server.cxx.

Referenced by HandlePacket().

◆ Loop()

int FG_SERVER::Loop ( )

Main loop of the server.

Definition at line 1676 of file fg_server.cxx.

Referenced by main().

◆ PacketIsValid()

bool FG_SERVER::PacketIsValid ( int  Bytes,
T_MsgHdr MsgHdr,
const netAddress SenderAddress 
)
protected

Definition at line 1045 of file fg_server.cxx.

Referenced by HandlePacket(), and IsKnownRelay().

◆ PrepareInit()

void FG_SERVER::PrepareInit ( )

Do anything necessary to (re-) init the server used to handle kill -HUP.

Definition at line 518 of file fg_server.cxx.

Referenced by SigHUPHandler().

◆ ReceiverWantsChat()

bool FG_SERVER::ReceiverWantsChat ( const PlayerIt SenderPos,
const FG_Player Receiver 
)
protected

Definition at line 2304 of file fg_server.cxx.

◆ ReceiverWantsData()

bool FG_SERVER::ReceiverWantsData ( const PlayerIt SenderPos,
const FG_Player Receiver 
)
protected

Definition at line 2238 of file fg_server.cxx.

Referenced by CloseTracker(), HandlePacket(), and IsInRange().

◆ SendToCrossfeed()

void FG_SERVER::SendToCrossfeed ( char *  Msg,
int  Bytes,
const netAddress SenderAddress 
)
protected

Send message to all crossfeed servers. Crossfeed servers receive all traffic without condition, mainly used for testing and debugging.

Definition at line 1127 of file fg_server.cxx.

Referenced by HandlePacket().

◆ SendToRelays()

void FG_SERVER::SendToRelays ( char *  Msg,
int  Bytes,
PlayerIt SendingPlayer 
)
protected

Send message to all relay servers.

Definition at line 1153 of file fg_server.cxx.

Referenced by HandlePacket().

◆ SetAdminEnable()

void FG_SERVER::SetAdminEnable ( string  Enable)

Set enable password for admin connections.

Definition at line 1906 of file fg_server.cxx.

Referenced by ProcessConfig().

◆ SetAdminPass()

void FG_SERVER::SetAdminPass ( string  Pass)

Set Password for admin connections.

Definition at line 1896 of file fg_server.cxx.

Referenced by ProcessConfig().

◆ SetAdminPort()

void FG_SERVER::SetAdminPort ( int  Port)

Set listening port for admin connections.

Definition at line 1872 of file fg_server.cxx.

Referenced by ParseParams(), and ProcessConfig().

◆ SetAdminUser()

void FG_SERVER::SetAdminUser ( string  User)

Set User for admin connections.

Definition at line 1886 of file fg_server.cxx.

Referenced by ProcessConfig().

◆ SetBindAddress()

void FG_SERVER::SetBindAddress ( const std::string &  BindAddress)

Set the address this server listens on.

Definition at line 2005 of file fg_server.cxx.

Referenced by ProcessConfig().

◆ SetDataPort()

void FG_SERVER::SetDataPort ( int  Port)

Set listening port for incoming clients.

Definition at line 1843 of file fg_server.cxx.

Referenced by ParseParams(), and ProcessConfig().

◆ SetFQDN()

void FG_SERVER::SetFQDN ( const std::string &  FQDN)

Set the external address this server on.

Definition at line 2016 of file fg_server.cxx.

Referenced by ProcessConfig().

◆ SetHub()

void FG_SERVER::SetHub ( bool  IamHUB)

Set if we are running as a Hubserver.

Definition at line 1983 of file fg_server.cxx.

Referenced by ProcessConfig().

◆ SetLog()

void FG_SERVER::SetLog ( int  Facility,
int  Priority 
)

Set the default loglevel.

Definition at line 1953 of file fg_server.cxx.

Referenced by ParseParams().

◆ SetLogfile()

void FG_SERVER::SetLogfile ( const std::string &  LogfileName)

Set the logfile.

Definition at line 1964 of file fg_server.cxx.

Referenced by ParseParams(), and ProcessConfig().

◆ SetMaxRadarRange()

void FG_SERVER::SetMaxRadarRange ( int  MaxRange)

Set maximum allowed radar range of clients in nautical miles.

Definition at line 1940 of file fg_server.cxx.

Referenced by ProcessConfig(), and SetOutOfReach().

◆ SetOutOfReach()

void FG_SERVER::SetOutOfReach ( int  OutOfReach)

Set nautical miles two players must be apart to be out of reach.

Definition at line 1928 of file fg_server.cxx.

Referenced by ParseParams(), and ProcessConfig().

◆ SetPlayerExpires()

void FG_SERVER::SetPlayerExpires ( int  Seconds)

Set time in seconds. if no packet arrives from a client within this time, the connection is dropped.

Definition at line 1917 of file fg_server.cxx.

Referenced by ParseParams(), and ProcessConfig().

◆ SetServerName()

void FG_SERVER::SetServerName ( const std::string &  ServerName)

Set the server name.

Definition at line 1994 of file fg_server.cxx.

Referenced by ProcessConfig().

◆ SetTelnetPort()

void FG_SERVER::SetTelnetPort ( int  Port)

Set listening port for telnets.

Definition at line 1858 of file fg_server.cxx.

Referenced by ParseParams(), and ProcessConfig().

◆ Show_Stats()

void FG_SERVER::Show_Stats ( void  )

Show Stats.

Definition at line 1520 of file fg_server.cxx.

Referenced by check_files(), and Done().

◆ UpdateTracker()

int FG_SERVER::UpdateTracker ( const string &  callsign,
const string &  passwd,
const string &  modelname,
const time_t  time,
const int  type 
)
protected

Updates the remote tracker web server.

Definition at line 2073 of file fg_server.cxx.

Referenced by AddClient(), DropClient(), and Loop().

◆ WantExit()

void FG_SERVER::WantExit ( )
protected

allow the Admin CLI to shut down fgms

Definition at line 1665 of file fg_server.cxx.

Referenced by HandleAdmin().

Friends And Related Function Documentation

◆ admin_helper

void* admin_helper ( void *  context)
friend

Definition at line 268 of file fg_server.cxx.

Referenced by Loop().

◆ FG_CLI

friend class FG_CLI
friend

Definition at line 59 of file fg_server.hxx.

Referenced by HandleAdmin().

Member Data Documentation

◆ ConfigFile

string FG_SERVER::ConfigFile

Definition at line 128 of file fg_server.hxx.

Referenced by ProcessConfig(), and SigHUPHandler().

◆ m_AdminEnable

string FG_SERVER::m_AdminEnable
protected

Definition at line 152 of file fg_server.hxx.

Referenced by SetAdminEnable(), and FG_CLI::setup().

◆ m_AdminPass

string FG_SERVER::m_AdminPass
protected

Definition at line 151 of file fg_server.hxx.

Referenced by Loop(), SetAdminPass(), and FG_CLI::setup().

◆ m_AdminPort

int FG_SERVER::m_AdminPort
protected

Definition at line 146 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_settings(), Init(), SetAdminPort(), and SetDataPort().

◆ m_AdminReceived

size_t FG_SERVER::m_AdminReceived
protected

Definition at line 199 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_stats(), and Loop().

◆ m_AdminSocket

netSocket* FG_SERVER::m_AdminSocket
protected

Definition at line 168 of file fg_server.hxx.

Referenced by Done(), Init(), and Loop().

◆ m_AdminUser

string FG_SERVER::m_AdminUser
protected

Definition at line 150 of file fg_server.hxx.

Referenced by Loop(), SetAdminUser(), and FG_CLI::setup().

◆ m_BindAddress

string FG_SERVER::m_BindAddress
protected

Definition at line 155 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_settings(), Init(), and SetBindAddress().

◆ m_BlackList

◆ m_BlackRejected

size_t FG_SERVER::m_BlackRejected
protected

Definition at line 192 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_stats(), HandlePacket(), and Show_Stats().

◆ m_childpid

int FG_SERVER::m_childpid
protected

Definition at line 176 of file fg_server.hxx.

◆ m_CrossFeedFailed

size_t FG_SERVER::m_CrossFeedFailed
protected

Definition at line 203 of file fg_server.hxx.

Referenced by Show_Stats().

◆ m_CrossfeedList

◆ m_CrossFeedSent

size_t FG_SERVER::m_CrossFeedSent
protected

Definition at line 203 of file fg_server.hxx.

Referenced by Show_Stats().

◆ m_DataSocket

netSocket* FG_SERVER::m_DataSocket
protected

Definition at line 166 of file fg_server.hxx.

Referenced by Done(), HandlePacket(), Init(), Loop(), SendToCrossfeed(), and SendToRelays().

◆ m_FQDN

string FG_SERVER::m_FQDN
protected

◆ m_IamHUB

bool FG_SERVER::m_IamHUB
protected

Definition at line 178 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_version(), Init(), SendToRelays(), and SetHub().

◆ m_Initialized

bool FG_SERVER::m_Initialized
protected

Definition at line 139 of file fg_server.hxx.

Referenced by Init().

◆ m_ipcid

int FG_SERVER::m_ipcid
protected

Definition at line 175 of file fg_server.hxx.

◆ m_IsParent

bool FG_SERVER::m_IsParent
protected

Definition at line 162 of file fg_server.hxx.

Referenced by Done(), Loop(), and PrepareInit().

◆ m_IsTracked

bool FG_SERVER::m_IsTracked
protected

◆ m_Listening

bool FG_SERVER::m_Listening
protected

Definition at line 143 of file fg_server.hxx.

Referenced by Done(), Init(), and Loop().

◆ m_ListenPort

int FG_SERVER::m_ListenPort
protected

Definition at line 144 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_settings(), Init(), and SetDataPort().

◆ m_LocalClients

size_t FG_SERVER::m_LocalClients
protected

Definition at line 158 of file fg_server.hxx.

Referenced by AddBadClient(), AddClient(), FG_CLI::cmd_show_stats(), and DropClient().

◆ m_LogFile

ofstream FG_SERVER::m_LogFile
protected

Definition at line 153 of file fg_server.hxx.

Referenced by Done(), Init(), and SetLogfile().

◆ m_LogFileName

string FG_SERVER::m_LogFileName
protected

Definition at line 154 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_settings(), Init(), and SetLogfile().

◆ m_MaxRadarRange

int FG_SERVER::m_MaxRadarRange
protected

◆ m_NumMaxClients

size_t FG_SERVER::m_NumMaxClients
protected

Definition at line 157 of file fg_server.hxx.

Referenced by AddClient(), FG_CLI::cmd_show_stats(), DropClient(), and Init().

◆ m_PacketsInvalid

size_t FG_SERVER::m_PacketsInvalid
protected

Definition at line 193 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_stats(), HandlePacket(), and Show_Stats().

◆ m_PacketsReceived

size_t FG_SERVER::m_PacketsReceived
protected

Definition at line 189 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_stats(), Loop(), and Show_Stats().

◆ m_PingReceived

size_t FG_SERVER::m_PingReceived
protected

Definition at line 190 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_stats(), and HandlePacket().

◆ m_PlayerExpires

int FG_SERVER::m_PlayerExpires
protected

◆ m_PlayerIsOutOfReach

int FG_SERVER::m_PlayerIsOutOfReach
protected

◆ m_PlayerList

◆ m_PongReceived

size_t FG_SERVER::m_PongReceived
protected

Definition at line 191 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_stats(), and HandlePacket().

◆ m_PositionData

size_t FG_SERVER::m_PositionData
protected

Definition at line 196 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_stats(), HandlePacket(), and Show_Stats().

◆ m_ProtoMajorVersion

int16_t FG_SERVER::m_ProtoMajorVersion
protected

Definition at line 161 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_version(), HandleTelnet(), Init(), and PacketIsValid().

◆ m_ProtoMinorVersion

int16_t FG_SERVER::m_ProtoMinorVersion
protected

Definition at line 160 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_version(), HandleTelnet(), and Init().

◆ m_ReinitAdmin

bool FG_SERVER::m_ReinitAdmin
protected

Definition at line 142 of file fg_server.hxx.

Referenced by check_files(), Init(), SetAdminPort(), and SetDataPort().

◆ m_ReinitData

bool FG_SERVER::m_ReinitData
protected

Definition at line 140 of file fg_server.hxx.

Referenced by check_files(), Init(), and SetDataPort().

◆ m_ReinitTelnet

bool FG_SERVER::m_ReinitTelnet
protected

Definition at line 141 of file fg_server.hxx.

Referenced by check_files(), Init(), SetDataPort(), and SetTelnetPort().

◆ m_RelayList

◆ m_RelayMagic

size_t FG_SERVER::m_RelayMagic
protected

Definition at line 195 of file fg_server.hxx.

Referenced by HandlePacket(), and Show_Stats().

◆ m_RelayMap

mT_IP2Relay FG_SERVER::m_RelayMap
protected

◆ m_RemoteClients

size_t FG_SERVER::m_RemoteClients
protected

Definition at line 159 of file fg_server.hxx.

Referenced by AddBadClient(), AddClient(), FG_CLI::cmd_show_stats(), and DropClient().

◆ m_ServerName

string FG_SERVER::m_ServerName
protected

◆ m_TelnetPort

int FG_SERVER::m_TelnetPort
protected

Definition at line 145 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_settings(), Init(), SetDataPort(), and SetTelnetPort().

◆ m_TelnetReceived

size_t FG_SERVER::m_TelnetReceived
protected

Definition at line 198 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_stats(), Loop(), and Show_Stats().

◆ m_TelnetSocket

netSocket* FG_SERVER::m_TelnetSocket
protected

Definition at line 167 of file fg_server.hxx.

Referenced by Done(), Init(), and Loop().

◆ m_Tracker

FG_TRACKER* FG_SERVER::m_Tracker
protected

◆ m_TrackerConnect

size_t FG_SERVER::m_TrackerConnect
protected

Definition at line 205 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_stats(), Show_Stats(), and UpdateTracker().

◆ m_TrackerDisconnect

size_t FG_SERVER::m_TrackerDisconnect
protected

Definition at line 205 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_stats(), Show_Stats(), and UpdateTracker().

◆ m_TrackerPosition

size_t FG_SERVER::m_TrackerPosition
protected

Definition at line 205 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_stats(), Show_Stats(), and UpdateTracker().

◆ m_TrackerServer

string FG_SERVER::m_TrackerServer
protected

Definition at line 165 of file fg_server.hxx.

◆ m_UnknownRelay

size_t FG_SERVER::m_UnknownRelay
protected

Definition at line 194 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_stats(), HandlePacket(), and Show_Stats().

◆ m_UnkownMsgID

size_t FG_SERVER::m_UnkownMsgID
protected

Definition at line 197 of file fg_server.hxx.

Referenced by FG_CLI::cmd_show_stats(), HandlePacket(), and Show_Stats().

◆ m_UpdateTrackerFreq

time_t FG_SERVER::m_UpdateTrackerFreq
protected

Definition at line 179 of file fg_server.hxx.

Referenced by Loop().

◆ m_Uptime

◆ m_useExitFile

bool FG_SERVER::m_useExitFile
protected

Definition at line 183 of file fg_server.hxx.

Referenced by check_files(), and Init().

◆ m_useResetFile

bool FG_SERVER::m_useResetFile
protected

Definition at line 183 of file fg_server.hxx.

Referenced by check_files().

◆ m_useStatFile

bool FG_SERVER::m_useStatFile
protected

Definition at line 183 of file fg_server.hxx.

Referenced by check_files(), and Init().

◆ m_WantExit

bool FG_SERVER::m_WantExit
protected

Definition at line 180 of file fg_server.hxx.

Referenced by FG_CLI::cmd_fgms_die(), Loop(), and WantExit().

◆ m_WhiteList

◆ mT_BlackRejected

size_t FG_SERVER::mT_BlackRejected
protected

Definition at line 200 of file fg_server.hxx.

Referenced by Show_Stats().

◆ mT_CrossFeedFailed

size_t FG_SERVER::mT_CrossFeedFailed
protected

Definition at line 204 of file fg_server.hxx.

Referenced by Show_Stats().

◆ mT_CrossFeedSent

size_t FG_SERVER::mT_CrossFeedSent
protected

Definition at line 204 of file fg_server.hxx.

Referenced by Show_Stats().

◆ mT_PacketsInvalid

size_t FG_SERVER::mT_PacketsInvalid
protected

Definition at line 200 of file fg_server.hxx.

Referenced by Show_Stats().

◆ mT_PacketsReceived

size_t FG_SERVER::mT_PacketsReceived
protected

Definition at line 200 of file fg_server.hxx.

Referenced by Show_Stats().

◆ mT_PositionData

size_t FG_SERVER::mT_PositionData
protected

Definition at line 201 of file fg_server.hxx.

Referenced by Show_Stats().

◆ mT_RelayMagic

size_t FG_SERVER::mT_RelayMagic
protected

Definition at line 202 of file fg_server.hxx.

Referenced by Show_Stats().

◆ mT_TelnetReceived

size_t FG_SERVER::mT_TelnetReceived
protected

Definition at line 201 of file fg_server.hxx.

Referenced by Show_Stats().

◆ mT_UnknownRelay

size_t FG_SERVER::mT_UnknownRelay
protected

Definition at line 201 of file fg_server.hxx.

Referenced by Show_Stats().

◆ mT_UnkownMsgID

size_t FG_SERVER::mT_UnkownMsgID
protected

Definition at line 202 of file fg_server.hxx.

Referenced by Show_Stats().


The documentation for this class was generated from the following files: