From c66ab06124fd757056817b38a9c16f8c8444bf0a Mon Sep 17 00:00:00 2001 From: David Härdeman Date: Mon, 22 Jun 2020 22:13:26 +0200 Subject: Make announce interval a config option --- main.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'main.c') diff --git a/main.c b/main.c index 111ea33..fd6b2aa 100644 --- a/main.c +++ b/main.c @@ -31,6 +31,7 @@ #define DEFAULT_HOMEDIR_PATH "/home/david/intest" #define DEFAULT_MAIN_CONFIG_FILE_PATH "./mcproxy.conf" +#define DEFAULT_ANNOUNCE_INTERVAL 3 /* Global */ struct cfg *cfg = NULL; @@ -196,7 +197,8 @@ cfg_free(struct uring_task *task) enum mcfg_keys { MCFG_KEY_INVALID = 0, MCFG_KEY_IGMP, - MCFG_KEY_IGMP_IFACE + MCFG_KEY_IGMP_IFACE, + MCFG_KEY_ANN_INTERVAL, }; struct cfg_key_value_map mcfg_key_map[] = { @@ -208,6 +210,10 @@ struct cfg_key_value_map mcfg_key_map[] = { .key_name = "igmp_iface", .key_value = MCFG_KEY_IGMP_IFACE, .value_type = CFG_VAL_TYPE_STRING, + }, { + .key_name = "announce_interval", + .key_value = MCFG_KEY_ANN_INTERVAL, + .value_type = CFG_VAL_TYPE_UINT16, }, { .key_name = NULL, .key_value = MCFG_KEY_INVALID, @@ -293,6 +299,10 @@ cfg_read() break; + case MCFG_KEY_ANN_INTERVAL: + cfg->announce_interval = value.uint16; + break; + case MCFG_KEY_INVALID: default: die("main config file (%s) invalid", path); @@ -387,6 +397,7 @@ cfg_init(int argc, char **argv) if (!cfg) die("malloc: %m"); + cfg->announce_interval = DEFAULT_ANNOUNCE_INTERVAL; cfg->uid = geteuid(); cfg->gid = getegid(); uring_task_init(&cfg->task, "main", NULL, cfg_free); -- cgit v1.2.3