about summary refs log tree commit diff
path: root/src/engine/shared/console.cpp
diff options
context:
space:
mode:
authorMarius "Teelevision" Neugebauer <marius@teele.eu>2014-08-14 18:08:22 +0200
committerMarius "Teelevision" Neugebauer <marius@teele.eu>2014-08-14 18:08:22 +0200
commit3ba0fdd48b5d13520ea33916ccf7e6741e3b9900 (patch)
tree2bf80fd62212530b94b57af9a6278901353342bc /src/engine/shared/console.cpp
parentb0fae09546c09f008553fcd0500228d9ea8f5036 (diff)
downloadzcatch-3ba0fdd48b5d13520ea33916ccf7e6741e3b9900.tar.gz
zcatch-3ba0fdd48b5d13520ea33916ccf7e6741e3b9900.zip
restrict access of subadmins to server rcon settings
Diffstat (limited to 'src/engine/shared/console.cpp')
-rw-r--r--src/engine/shared/console.cpp14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/engine/shared/console.cpp b/src/engine/shared/console.cpp
index dcace5b8..a0d786ae 100644
--- a/src/engine/shared/console.cpp
+++ b/src/engine/shared/console.cpp
@@ -683,10 +683,24 @@ CConsole::CConsole(int FlagMask)
 		Register(#ScriptName, "?r", Flags, StrVariableCommand, &Data, Desc); \
 	}
 
+	#define MACRO_CONFIG_INT_ACCESSLEVEL(Name,ScriptName,Def,Min,Max,Flags,Desc,accessLevel) \
+	{ \
+		static CIntVariableData Data = { this, &g_Config.m_##Name, Min, Max }; \
+		Register(#ScriptName, "?i", Flags, IntVariableCommand, &Data, Desc, ACCESS_LEVEL_ADMIN); \
+	}
+
+	#define MACRO_CONFIG_STR_ACCESSLEVEL(Name,ScriptName,Len,Def,Flags,Desc,accessLevel) \
+	{ \
+		static CStrVariableData Data = { this, g_Config.m_##Name, Len }; \
+		Register(#ScriptName, "?r", Flags, StrVariableCommand, &Data, Desc, ACCESS_LEVEL_ADMIN); \
+	}
+
 	#include "config_variables.h"
 
 	#undef MACRO_CONFIG_INT
 	#undef MACRO_CONFIG_STR
+	#undef MACRO_CONFIG_INT_ACCESSLEVEL
+	#undef MACRO_CONFIG_STR_ACCESSLEVEL
 }
 
 void CConsole::ParseArguments(int NumArgs, const char **ppArguments)