aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--changes/bug195783
-rw-r--r--src/common/util.c9
2 files changed, 8 insertions, 4 deletions
diff --git a/changes/bug19578 b/changes/bug19578
new file mode 100644
index 0000000000..8b3355b191
--- /dev/null
+++ b/changes/bug19578
@@ -0,0 +1,3 @@
+ o Minor bugfixes (logging):
+ - When logging a directory ownership mismatch, log the owning username
+ correctly. Fixes bug 19578; bugfix on 0.2.2.29-beta.
diff --git a/src/common/util.c b/src/common/util.c
index 538aeb108d..d61985e036 100644
--- a/src/common/util.c
+++ b/src/common/util.c
@@ -2291,13 +2291,14 @@ check_private_dir,(const char *dirname, cpd_check_t check,
running_gid = getgid();
}
if (st.st_uid != running_uid) {
- const struct passwd *pw = NULL;
+ const struct passwd *pw_uid = NULL;
char *process_ownername = NULL;
- pw = tor_getpwuid(running_uid);
- process_ownername = pw ? tor_strdup(pw->pw_name) : tor_strdup("<unknown>");
+ pw_uid = tor_getpwuid(running_uid);
+ process_ownername = pw_uid ? tor_strdup(pw_uid->pw_name) :
+ tor_strdup("<unknown>");
- pw = tor_getpwuid(st.st_uid);
+ pw_uid = tor_getpwuid(st.st_uid);
log_warn(LD_FS, "%s is not owned by this user (%s, %d) but by "
"%s (%d). Perhaps you are running Tor as the wrong user?",