mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-27 22:03:31 +01:00
Merge branch 'maint-0.3.2' of https://git.torproject.org/tor into maint-0.3.2
This commit is contained in:
commit
d1a6043bfb
4
changes/bug27335
Normal file
4
changes/bug27335
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
o Minor bugfixes (hidden service v3):
|
||||||
|
- In case the hidden service directory can't be created or has wrong
|
||||||
|
permissions, do not BUG() on it which lead to a non fatal stacktrace.
|
||||||
|
Fixes bug 27335; bugfix on 0.3.2.1.
|
6
changes/bug27658
Normal file
6
changes/bug27658
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
o Minor bugfixes (testing):
|
||||||
|
- If a unit test running in a subprocess exits abnormally or with a
|
||||||
|
nonzero status code, treat the test as having failed, even if
|
||||||
|
the test reported success. Without this fix, memory leaks don't cause
|
||||||
|
cause the tests to fail, even with LeakSanitizer. Fixes bug 27658;
|
||||||
|
bugfix on 0.2.2.4-alpha.
|
@ -207,12 +207,20 @@ testcase_run_forked_(const struct testgroup_t *group,
|
|||||||
r = (int)read(outcome_pipe[0], b, 1);
|
r = (int)read(outcome_pipe[0], b, 1);
|
||||||
if (r == 0) {
|
if (r == 0) {
|
||||||
printf("[Lost connection!] ");
|
printf("[Lost connection!] ");
|
||||||
return 0;
|
return FAIL;
|
||||||
} else if (r != 1) {
|
} else if (r != 1) {
|
||||||
perror("read outcome from pipe");
|
perror("read outcome from pipe");
|
||||||
}
|
}
|
||||||
waitpid(pid, &status, 0);
|
r = waitpid(pid, &status, 0);
|
||||||
close(outcome_pipe[0]);
|
close(outcome_pipe[0]);
|
||||||
|
if (r == -1) {
|
||||||
|
perror("waitpid");
|
||||||
|
return FAIL;
|
||||||
|
}
|
||||||
|
if (! WIFEXITED(status) || WEXITSTATUS(status) != 0) {
|
||||||
|
printf("[did not exit cleanly.]");
|
||||||
|
return FAIL;
|
||||||
|
}
|
||||||
return b[0]=='Y' ? OK : (b[0]=='S' ? SKIP : FAIL);
|
return b[0]=='Y' ? OK : (b[0]=='S' ? SKIP : FAIL);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
@ -974,9 +974,9 @@ load_service_keys(hs_service_t *service)
|
|||||||
* files to that directory so make sure it exists and has the right
|
* files to that directory so make sure it exists and has the right
|
||||||
* permissions. We do this here because at this stage we know that Tor is
|
* permissions. We do this here because at this stage we know that Tor is
|
||||||
* actually running and the service we have has been validated. */
|
* actually running and the service we have has been validated. */
|
||||||
if (BUG(hs_check_service_private_dir(get_options()->User,
|
if (hs_check_service_private_dir(get_options()->User,
|
||||||
config->directory_path,
|
config->directory_path,
|
||||||
config->dir_group_readable, 1) < 0)) {
|
config->dir_group_readable, 1) < 0) {
|
||||||
goto end;
|
goto end;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user