about summary refs log tree commit diff
path: root/src/engine
diff options
context:
space:
mode:
authorNoxNebula <patrick.kl@live.de>2010-06-02 04:42:17 +0200
committerMagnus Auvinen <magnus.auvinen@gmail.com>2010-06-02 09:40:08 +0200
commit9a5a19e7c7b0d4364f32540b012bce970807f9b6 (patch)
tree4e1ba9fcc41e3a79e144dc25af4e87c5fd63cadc /src/engine
parentf2920ea5d85ea54a8000fdf6b6f8ccba36ebfdfb (diff)
downloadzcatch-9a5a19e7c7b0d4364f32540b012bce970807f9b6.tar.gz
zcatch-9a5a19e7c7b0d4364f32540b012bce970807f9b6.zip
Admin-Kick-Protection
Add IsAuthed(int ClientID); function.
Add kickprotection for admins (Remote Console logged in players)
Add Anti-Self-Kick (minor)
Diffstat (limited to 'src/engine')
-rw-r--r--src/engine/server.h2
-rw-r--r--src/engine/server/server.cpp7
-rw-r--r--src/engine/server/server.h1
3 files changed, 10 insertions, 0 deletions
diff --git a/src/engine/server.h b/src/engine/server.h
index 52e6ec6a..fa5d2498 100644
--- a/src/engine/server.h
+++ b/src/engine/server.h
@@ -49,6 +49,8 @@ public:
 	virtual void *SnapNewItem(int Type, int Id, int Size) = 0;
 
 	virtual void SnapSetStaticsize(int ItemType, int Size) = 0;
+	
+	virtual bool IsAuthed(int ClientID) = 0;
 };
 
 class IGameServer : public IInterface
diff --git a/src/engine/server/server.cpp b/src/engine/server/server.cpp
index 05e56a74..b5a01a99 100644
--- a/src/engine/server/server.cpp
+++ b/src/engine/server/server.cpp
@@ -293,6 +293,13 @@ int CServer::Init()
 	return 0;
 }
 
+bool CServer::IsAuthed(int ClientID)
+{
+	if(m_aClients[ClientID].m_Authed)
+		return true;
+	return false;
+}
+
 int CServer::GetClientInfo(int ClientID, CClientInfo *pInfo)
 {
 	dbg_assert(ClientID >= 0 && ClientID < MAX_CLIENTS, "client_id is not valid");
diff --git a/src/engine/server/server.h b/src/engine/server/server.h
index 7d56bd33..895a4bd1 100644
--- a/src/engine/server/server.h
+++ b/src/engine/server/server.h
@@ -138,6 +138,7 @@ public:
 
 	int Init();
 
+	bool IsAuthed(int ClientID);
 	int GetClientInfo(int ClientID, CClientInfo *pInfo);
 	void GetClientIP(int ClientID, char *pIPString, int Size);
 	const char *ClientName(int ClientId);