-/* Copyright (C) 2009-2011, Martin Johansson <martin@fatbob.nu>
- Copyright (C) 2005-2011, Thorvald Natvig <thorvald@natvig.com>
+/* Copyright (C) 2009-2014, Martin Johansson <martin@fatbob.nu>
+ Copyright (C) 2005-2014, Thorvald Natvig <thorvald@natvig.com>
All rights reserved.
#define DEFAULT_MAX_BANDWIDTH 48000
#define DEFAULT_BINDPORT 64738
#define DEFAULT_BAN_LENGTH (60*60)
+#define DEFAULT_OPUS_THRESHOLD 100
const char defaultconfig[] = DEFAULT_CONFIG;
return "/etc/umurmur/private_key.key";
}
break;
+ case CAPATH:
+ setting = config_lookup(&configuration, "ca_path");
+ if (!setting)
+ return NULL;
+ else {
+ if ((strsetting = config_setting_get_string(setting)) != NULL)
+ return strsetting;
+ else
+ return NULL;
+ }
+ break;
case PASSPHRASE:
setting = config_lookup(&configuration, "password");
if (!setting)
return NULL;
}
break;
+ case BANFILE:
+ setting = config_lookup(&configuration, "banfile");
+ if (!setting)
+ return NULL;
+ else {
+ if ((strsetting = config_setting_get_string(setting)) != NULL)
+ return strsetting;
+ else
+ return NULL;
+ }
+ break;
default:
doAssert(false);
break;
return config_setting_get_int(setting);
}
break;
+ case OPUS_THRESHOLD:
+ setting = config_lookup(&configuration, "opus_threshold");
+ if (!setting)
+ return DEFAULT_OPUS_THRESHOLD;
+ else {
+ return config_setting_get_int(setting);
+ }
+ break;
default:
doAssert(false);
}
else
return config_setting_get_bool(setting);
break;
+ case ENABLE_BAN:
+ setting = config_lookup(&configuration, "enable_ban");
+ if (!setting)
+ return false;
+ else
+ return config_setting_get_bool(setting);
+ break;
+ case SYNC_BANFILE:
+ setting = config_lookup(&configuration, "sync_banfile");
+ if (!setting)
+ return false;
+ else
+ return config_setting_get_bool(setting);
+ break;
default:
doAssert(false);
}
chdesc->noenter = false;
else
chdesc->noenter = config_setting_get_bool(setting);
+
+ ret = snprintf(configstr, maxconfig, "channels.[%d].silent", index);
+ setting = config_lookup(&configuration, configstr);
+ if (ret >= maxconfig || ret < 0 || setting == NULL) /* Optional */
+ chdesc->silent = false;
+ else
+ chdesc->silent = config_setting_get_bool(setting);
+
+ ret = snprintf(configstr, maxconfig, "channels.[%d].position", index);
+ setting = config_lookup(&configuration, configstr);
+ if (ret >= maxconfig || ret < 0 || setting == NULL) /* Optional */
+ chdesc->position = 0;
+ else
+ chdesc->position = config_setting_get_int(setting);
return 0;
}