mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-11 05:33:47 +01:00
Merge remote-tracking branch 'origin/maint-0.2.4'
This commit is contained in:
commit
55817c4c50
3
changes/bug8638
Normal file
3
changes/bug8638
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
o Minor features
|
||||||
|
In our testsuite, create temporary directories with a bit more entropy
|
||||||
|
in their name to make name collissions less likely. Fixes bug 8638.
|
@ -88,8 +88,14 @@ setup_directory(void)
|
|||||||
{
|
{
|
||||||
static int is_setup = 0;
|
static int is_setup = 0;
|
||||||
int r;
|
int r;
|
||||||
|
char rnd[256], rnd32[256];
|
||||||
if (is_setup) return;
|
if (is_setup) return;
|
||||||
|
|
||||||
|
/* Due to base32 limitation needs to be a multiple of 5. */
|
||||||
|
#define RAND_PATH_BYTES 5
|
||||||
|
crypto_rand(rnd, RAND_PATH_BYTES);
|
||||||
|
base32_encode(rnd32, sizeof(rnd32), rnd, RAND_PATH_BYTES);
|
||||||
|
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
{
|
{
|
||||||
char buf[MAX_PATH];
|
char buf[MAX_PATH];
|
||||||
@ -98,11 +104,11 @@ setup_directory(void)
|
|||||||
if (!GetTempPathA(sizeof(buf),buf))
|
if (!GetTempPathA(sizeof(buf),buf))
|
||||||
tmp = "c:\\windows\\temp";
|
tmp = "c:\\windows\\temp";
|
||||||
tor_snprintf(temp_dir, sizeof(temp_dir),
|
tor_snprintf(temp_dir, sizeof(temp_dir),
|
||||||
"%s\\tor_test_%d", tmp, (int)getpid());
|
"%s\\tor_test_%d_%s", tmp, (int)getpid(), rnd32);
|
||||||
r = mkdir(temp_dir);
|
r = mkdir(temp_dir);
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
tor_snprintf(temp_dir, sizeof(temp_dir), "/tmp/tor_test_%d", (int) getpid());
|
tor_snprintf(temp_dir, sizeof(temp_dir), "/tmp/tor_test_%d_%s", (int) getpid(), rnd32);
|
||||||
r = mkdir(temp_dir, 0700);
|
r = mkdir(temp_dir, 0700);
|
||||||
#endif
|
#endif
|
||||||
if (r) {
|
if (r) {
|
||||||
@ -2182,6 +2188,7 @@ main(int c, const char **v)
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
crypto_set_tls_dh_prime(NULL);
|
crypto_set_tls_dh_prime(NULL);
|
||||||
|
crypto_seed_rng(1);
|
||||||
rep_hist_init();
|
rep_hist_init();
|
||||||
network_init();
|
network_init();
|
||||||
setup_directory();
|
setup_directory();
|
||||||
@ -2194,8 +2201,6 @@ main(int c, const char **v)
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
crypto_seed_rng(1);
|
|
||||||
|
|
||||||
atexit(remove_directory);
|
atexit(remove_directory);
|
||||||
|
|
||||||
have_failed = (tinytest_main(c, v, testgroups) != 0);
|
have_failed = (tinytest_main(c, v, testgroups) != 0);
|
||||||
|
Loading…
Reference in New Issue
Block a user