From ccdae2f753ea7125962f65fc50478753e40cc76b Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Fri, 15 Oct 2021 10:18:31 +0200 Subject: On Android, get_data_directory() should not use LOCALSTATEDIR closes https://gitlab.torproject.org/tpo/core/tor/-/issues/40487 --- src/app/config/config.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/app') diff --git a/src/app/config/config.c b/src/app/config/config.c index 8df5275cc6..3c3499696b 100644 --- a/src/app/config/config.c +++ b/src/app/config/config.c @@ -6883,6 +6883,15 @@ get_data_directory(const char *val) } else { return tor_strdup(get_windows_conf_root()); } +#elif defined(__ANDROID__) + /* Android apps can only use paths that are configured at runtime. + * /data/local/tmp is guaranteed to exist, but is only usable by the + * 'shell' and 'root' users, so this fallback is for debugging only. */ + if (val) { + return tor_strdup(val); + } else { + return tor_strdup("/data/local/tmp"); + } #else /* !defined(_WIN32) */ const char *d = val; if (!d) -- cgit v1.2.3-54-g00ecf