mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-12-06 19:41:15 +01:00
Specify text or binary mode in every start_writing_to_stdio_file call
This commit is contained in:
committed by
Nick Mathewson
parent
866a2828bd
commit
f021df5824
@@ -0,0 +1,15 @@
|
||||
o Minor bugfixes:
|
||||
|
||||
- Write several files (currently, buffer-stats, dirreq-stats, and
|
||||
entry-stats on relays that collect those statistics, client_keys
|
||||
and hostname files for hidden services that use authentication,
|
||||
and (in the tor-gencert utility) newly generated identity and
|
||||
signing keys) in text mode, on OSes that distinguish text mode
|
||||
from binary mode (i.e. on Windows). Previously, we wouldn't
|
||||
specify text mode or binary mode, leading to an assertion
|
||||
failure. Fixes bug 3607. Bugfix on 0.2.1.1-alpha (when the
|
||||
DirRecordUsageByCountry option which would have triggered the
|
||||
assertion failure was added), although this assertion failure
|
||||
would have occurred in tor-gencert on Windows in 0.2.0.1-alpha.
|
||||
|
||||
|
||||
+2
-2
@@ -976,7 +976,7 @@ geoip_dirreq_stats_write(time_t now)
|
||||
data_v2 = geoip_get_client_history(GEOIP_CLIENT_NETWORKSTATUS_V2);
|
||||
data_v3 = geoip_get_client_history(GEOIP_CLIENT_NETWORKSTATUS);
|
||||
format_iso_time(written, now);
|
||||
out = start_writing_to_stdio_file(filename, OPEN_FLAGS_APPEND,
|
||||
out = start_writing_to_stdio_file(filename, OPEN_FLAGS_APPEND | O_TEXT,
|
||||
0600, &open_file);
|
||||
if (!out)
|
||||
goto done;
|
||||
@@ -1309,7 +1309,7 @@ geoip_entry_stats_write(time_t now)
|
||||
filename = get_datadir_fname2("stats", "entry-stats");
|
||||
data = geoip_get_client_history(GEOIP_CLIENT_CONNECT);
|
||||
format_iso_time(written, now);
|
||||
out = start_writing_to_stdio_file(filename, OPEN_FLAGS_APPEND,
|
||||
out = start_writing_to_stdio_file(filename, OPEN_FLAGS_APPEND | O_TEXT,
|
||||
0600, &open_file);
|
||||
if (!out)
|
||||
goto done;
|
||||
|
||||
@@ -635,13 +635,15 @@ rend_service_load_keys(void)
|
||||
}
|
||||
|
||||
/* Prepare client_keys and hostname files. */
|
||||
if (!(cfile = start_writing_to_stdio_file(cfname, OPEN_FLAGS_REPLACE,
|
||||
if (!(cfile = start_writing_to_stdio_file(cfname,
|
||||
OPEN_FLAGS_REPLACE | O_TEXT,
|
||||
0600, &open_cfile))) {
|
||||
log_warn(LD_CONFIG, "Could not open client_keys file %s",
|
||||
escaped(cfname));
|
||||
goto err;
|
||||
}
|
||||
if (!(hfile = start_writing_to_stdio_file(fname, OPEN_FLAGS_REPLACE,
|
||||
if (!(hfile = start_writing_to_stdio_file(fname,
|
||||
OPEN_FLAGS_REPLACE | O_TEXT,
|
||||
0600, &open_hfile))) {
|
||||
log_warn(LD_CONFIG, "Could not open hostname file %s", escaped(fname));
|
||||
goto err;
|
||||
|
||||
+1
-1
@@ -2500,7 +2500,7 @@ rep_hist_buffer_stats_write(time_t now)
|
||||
if (check_private_dir(statsdir, CPD_CREATE, get_options()->User) < 0)
|
||||
goto done;
|
||||
filename = get_datadir_fname2("stats", "buffer-stats");
|
||||
out = start_writing_to_stdio_file(filename, OPEN_FLAGS_APPEND,
|
||||
out = start_writing_to_stdio_file(filename, OPEN_FLAGS_APPEND | O_TEXT,
|
||||
0600, &open_file);
|
||||
if (!out)
|
||||
goto done;
|
||||
|
||||
@@ -264,7 +264,7 @@ load_identity_key(void)
|
||||
}
|
||||
|
||||
if (!(f = start_writing_to_stdio_file(identity_key_file,
|
||||
OPEN_FLAGS_REPLACE, 0400,
|
||||
OPEN_FLAGS_REPLACE | O_TEXT, 0400,
|
||||
&open_file)))
|
||||
return 1;
|
||||
|
||||
@@ -349,7 +349,7 @@ generate_signing_key(void)
|
||||
}
|
||||
|
||||
if (!(f = start_writing_to_stdio_file(signing_key_file,
|
||||
OPEN_FLAGS_REPLACE, 0600,
|
||||
OPEN_FLAGS_REPLACE | O_TEXT, 0600,
|
||||
&open_file)))
|
||||
return 1;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user