summaryrefslogtreecommitdiff
path: root/shared/server-config-options.h
diff options
context:
space:
mode:
Diffstat (limited to 'shared/server-config-options.h')
-rw-r--r--shared/server-config-options.h84
1 files changed, 84 insertions, 0 deletions
diff --git a/shared/server-config-options.h b/shared/server-config-options.h
new file mode 100644
index 0000000..acedb7a
--- /dev/null
+++ b/shared/server-config-options.h
@@ -0,0 +1,84 @@
+#ifndef fooserverconfigoptionshfoo
+#define fooserverconfigoptionshfoo
+
+#define SERVER_CFG_HEADER "server"
+
+enum scfg_keys {
+ SCFG_KEY_INVALID = 0,
+ SCFG_KEY_TYPE,
+ SCFG_KEY_NAME,
+ SCFG_KEY_PORT,
+ SCFG_KEY_LOCAL,
+ SCFG_KEY_REMOTE,
+ SCFG_KEY_IDLE_TIMEOUT,
+ SCFG_KEY_STOP_METHOD,
+ SCFG_KEY_START_METHOD,
+ SCFG_KEY_STOP_EXEC,
+ SCFG_KEY_START_EXEC,
+ SCFG_KEY_RCON,
+ SCFG_KEY_RCON_PASSWORD,
+ SCFG_KEY_SYSTEMD_SERVICE,
+};
+
+struct cfg_key_value_map scfg_key_map[] = {
+ {
+ .key_name = "type",
+ .key_value = SCFG_KEY_TYPE,
+ .value_type = CFG_VAL_TYPE_STRING,
+ }, {
+ .key_name = "name",
+ .key_value = SCFG_KEY_NAME,
+ .value_type = CFG_VAL_TYPE_STRING,
+ }, {
+ .key_name = "port",
+ .key_value = SCFG_KEY_PORT,
+ .value_type = CFG_VAL_TYPE_UINT16,
+ }, {
+ .key_name = "local",
+ .key_value = SCFG_KEY_LOCAL,
+ .value_type = CFG_VAL_TYPE_ASYNC_ADDRS,
+ }, {
+ .key_name = "remote",
+ .key_value = SCFG_KEY_REMOTE,
+ .value_type = CFG_VAL_TYPE_ASYNC_ADDRS,
+ }, {
+ .key_name = "idle_timeout",
+ .key_value = SCFG_KEY_IDLE_TIMEOUT,
+ .value_type = CFG_VAL_TYPE_UINT16,
+ }, {
+ .key_name = "stop_method",
+ .key_value = SCFG_KEY_STOP_METHOD,
+ .value_type = CFG_VAL_TYPE_STRING,
+ }, {
+ .key_name = "start_method",
+ .key_value = SCFG_KEY_START_METHOD,
+ .value_type = CFG_VAL_TYPE_STRING,
+ }, {
+ .key_name = "stop_exec",
+ .key_value = SCFG_KEY_STOP_EXEC,
+ .value_type = CFG_VAL_TYPE_STRING,
+ }, {
+ .key_name = "start_exec",
+ .key_value = SCFG_KEY_START_EXEC,
+ .value_type = CFG_VAL_TYPE_STRING,
+ }, {
+ .key_name = "rcon",
+ .key_value = SCFG_KEY_RCON,
+ .value_type = CFG_VAL_TYPE_ASYNC_ADDRS,
+ }, {
+ .key_name = "rcon_password",
+ .key_value = SCFG_KEY_RCON_PASSWORD,
+ .value_type = CFG_VAL_TYPE_STRING,
+ }, {
+ .key_name = "systemd_service",
+ .key_value = SCFG_KEY_SYSTEMD_SERVICE,
+ .value_type = CFG_VAL_TYPE_STRING,
+ }, {
+ .key_name = NULL,
+ .key_value = SCFG_KEY_INVALID,
+ .value_type = CFG_VAL_TYPE_INVALID,
+ }
+};
+
+#endif
+