]> git.ipfire.org Git - thirdparty/knot-dns.git/commitdiff
mod-geoip: fix memory leak in geoip_conf_check
author秦龙飞 <qinlongfei.1@bytedance.com>
Thu, 15 Dec 2022 02:32:21 +0000 (10:32 +0800)
committerDaniel Salzman <daniel.salzman@nic.cz>
Thu, 15 Dec 2022 08:00:58 +0000 (09:00 +0100)
src/knot/modules/geoip/geoip.c

index 0a62bb77bec81263ca66c01cce31bd2711b2baf9..2257e08bf8e56ad7d8bb08e684b732740f4a5a1c 100644 (file)
@@ -104,11 +104,14 @@ int geoip_conf_check(knotd_conf_check_args_t *args)
                        return KNOT_EINVAL;
                }
                for (size_t i = 0; i < conf.count; i++) {
-                       geodb_path_t path;
+                       geodb_path_t path = { 0 };
                        if (parse_geodb_path(&path, (char *)conf.multi[i].string) != 0) {
                                args->err_str = "unrecognized geodb-key format";
                                return KNOT_EINVAL;
                        }
+                       for (int j = 0; j < GEODB_MAX_PATH_LEN; j++) {
+                               free(path.path[j]);
+                       }
                }
                knotd_conf_free(&conf);
        }