diff --git a/src/basic/time-util.c b/src/basic/time-util.c index 031b871640..64ee777d01 100644 --- a/src/basic/time-util.c +++ b/src/basic/time-util.c @@ -1311,6 +1311,9 @@ bool timezone_is_valid(const char *name, int log_level) { if (slash) return false; + if (p - name >= PATH_MAX) + return false; + t = strjoina("/usr/share/zoneinfo/", name); fd = open(t, O_RDONLY|O_CLOEXEC);