From: Mike Gilbert Date: Sat, 12 May 2018 19:20:13 +0000 (-0400) Subject: basic: add log_level argument to timezone_is_valid X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=6a315d96772de973b2ae192ae8edd375b032816b;p=elogind.git basic: add log_level argument to timezone_is_valid --- diff --git a/src/basic/time-util.c b/src/basic/time-util.c index e9838a82a..fc9b99f51 100644 --- a/src/basic/time-util.c +++ b/src/basic/time-util.c @@ -890,7 +890,7 @@ int parse_timestamp(const char *t, usec_t *usec) { int r; last_space = strrchr(t, ' '); - if (last_space != NULL && timezone_is_valid(last_space + 1)) + if (last_space != NULL && timezone_is_valid(last_space + 1, LOG_DEBUG)) tz = last_space + 1; if (!tz || endswith_no_case(t, " UTC")) @@ -1290,7 +1290,7 @@ int get_timezones(char ***ret) { return 0; } -bool timezone_is_valid(const char *name) { +bool timezone_is_valid(const char *name, int log_level) { bool slash = false; const char *p, *t; _cleanup_close_ int fd = -1; @@ -1327,25 +1327,25 @@ bool timezone_is_valid(const char *name) { fd = open(t, O_RDONLY|O_CLOEXEC); if (fd < 0) { - log_debug_errno(errno, "Failed to open timezone file '%s': %m", t); + log_full_errno(log_level, errno, "Failed to open timezone file '%s': %m", t); return false; } r = fd_verify_regular(fd); if (r < 0) { - log_debug_errno(r, "Timezone file '%s' is not a regular file: %m", t); + log_full_errno(log_level, r, "Timezone file '%s' is not a regular file: %m", t); return false; } r = loop_read_exact(fd, buf, 4, false); if (r < 0) { - log_debug_errno(r, "Failed to read from timezone file '%s': %m", t); + log_full_errno(log_level, r, "Failed to read from timezone file '%s': %m", t); return false; } /* Magic from tzfile(5) */ if (memcmp(buf, "TZif", 4) != 0) { - log_debug("Timezone file '%s' has wrong magic bytes", t); + log_full(log_level, "Timezone file '%s' has wrong magic bytes", t); return false; } @@ -1433,7 +1433,7 @@ int get_timezone(char **tz) { if (!e) return -EINVAL; - if (!timezone_is_valid(e)) + if (!timezone_is_valid(e, LOG_DEBUG)) return -EINVAL; z = strdup(e); diff --git a/src/basic/time-util.h b/src/basic/time-util.h index 42d4f9889..1662197d6 100644 --- a/src/basic/time-util.h +++ b/src/basic/time-util.h @@ -145,7 +145,7 @@ int parse_nsec(const char *t, nsec_t *nsec); bool ntp_synced(void); int get_timezones(char ***l); -bool timezone_is_valid(const char *name); +bool timezone_is_valid(const char *name, int log_level); #endif // 0 bool clock_boottime_supported(void);