Loading src/or/config.c +18 −15 Original line number Diff line number Diff line Loading @@ -5566,27 +5566,28 @@ parse_outbound_addresses(or_options_t *options, int validate_only, char **msg) } /** Load one of the geoip files, <a>family</a> determining which * one. Note that <a>fname</a> will be freed by this * function. <a>default_fname</a> is used if on Windows and * one. <a>default_fname</a> is used if on Windows and * <a>fname</a> equals "<default>". */ static void config_load_geoip_file_(sa_family_t family, char *fname, /* will be freed */ const char *fname, const char *default_fname) { (void)default_fname; #ifdef _WIN32 char *free_fname = NULL; /* Used to hold any temporary-allocated value */ /* XXXX Don't use this "<default>" junk; make our filename options * understand prefixes somehow. -NM */ /* XXXX024 Reload GeoIPFile on SIGHUP. -NM */ #ifdef _WIN32 if (!strcmp(fname, "<default>")) { const char *conf_root = get_windows_conf_root(); tor_free(fname); tor_asprintf(&fname, "%s\\%s", conf_root, default_fname); tor_asprintf(&free_fname, "%s\\%s", conf_root, default_fname); fname = free_fname; } #endif geoip_load_file(family, fname); tor_free(fname); tor_free(free_fname); #else (void)default_fname; geoip_load_file(family, fname); #endif } /** Load geoip files for IPv4 and IPv6 if <a>options</a> and Loading @@ -5595,14 +5596,16 @@ static void config_maybe_load_geoip_files_(const or_options_t *options, const or_options_t *old_options) { /* XXXX024 Reload GeoIPFile on SIGHUP. -NM */ if (options->GeoIPFile && ((!old_options || !opt_streq(old_options->GeoIPFile, options->GeoIPFile)) || !geoip_is_loaded(AF_INET))) config_load_geoip_file_(AF_INET, tor_strdup(options->GeoIPFile), "geoip"); config_load_geoip_file_(AF_INET, options->GeoIPFile, "geoip"); if (options->GeoIPv6File && ((!old_options || !opt_streq(old_options->GeoIPv6File, options->GeoIPv6File)) || !geoip_is_loaded(AF_INET6))) config_load_geoip_file_(AF_INET6, tor_strdup(options->GeoIPv6File), "geoip6"); config_load_geoip_file_(AF_INET6, options->GeoIPv6File, "geoip6"); } Loading
src/or/config.c +18 −15 Original line number Diff line number Diff line Loading @@ -5566,27 +5566,28 @@ parse_outbound_addresses(or_options_t *options, int validate_only, char **msg) } /** Load one of the geoip files, <a>family</a> determining which * one. Note that <a>fname</a> will be freed by this * function. <a>default_fname</a> is used if on Windows and * one. <a>default_fname</a> is used if on Windows and * <a>fname</a> equals "<default>". */ static void config_load_geoip_file_(sa_family_t family, char *fname, /* will be freed */ const char *fname, const char *default_fname) { (void)default_fname; #ifdef _WIN32 char *free_fname = NULL; /* Used to hold any temporary-allocated value */ /* XXXX Don't use this "<default>" junk; make our filename options * understand prefixes somehow. -NM */ /* XXXX024 Reload GeoIPFile on SIGHUP. -NM */ #ifdef _WIN32 if (!strcmp(fname, "<default>")) { const char *conf_root = get_windows_conf_root(); tor_free(fname); tor_asprintf(&fname, "%s\\%s", conf_root, default_fname); tor_asprintf(&free_fname, "%s\\%s", conf_root, default_fname); fname = free_fname; } #endif geoip_load_file(family, fname); tor_free(fname); tor_free(free_fname); #else (void)default_fname; geoip_load_file(family, fname); #endif } /** Load geoip files for IPv4 and IPv6 if <a>options</a> and Loading @@ -5595,14 +5596,16 @@ static void config_maybe_load_geoip_files_(const or_options_t *options, const or_options_t *old_options) { /* XXXX024 Reload GeoIPFile on SIGHUP. -NM */ if (options->GeoIPFile && ((!old_options || !opt_streq(old_options->GeoIPFile, options->GeoIPFile)) || !geoip_is_loaded(AF_INET))) config_load_geoip_file_(AF_INET, tor_strdup(options->GeoIPFile), "geoip"); config_load_geoip_file_(AF_INET, options->GeoIPFile, "geoip"); if (options->GeoIPv6File && ((!old_options || !opt_streq(old_options->GeoIPv6File, options->GeoIPv6File)) || !geoip_is_loaded(AF_INET6))) config_load_geoip_file_(AF_INET6, tor_strdup(options->GeoIPv6File), "geoip6"); config_load_geoip_file_(AF_INET6, options->GeoIPv6File, "geoip6"); }