From: Kern Sibbald Date: Sun, 10 May 2020 15:46:46 +0000 (+0200) Subject: Improve scanning data/time, fixes bug #2472 X-Git-Tag: Release-9.6.4~40 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9b4c1d702f89ba79a20e458bfc9993abeeab21dd;p=thirdparty%2Fbacula.git Improve scanning data/time, fixes bug #2472 --- diff --git a/bacula/src/lib/btime.c b/bacula/src/lib/btime.c index 3f0f548e3..3d6e29db8 100644 --- a/bacula/src/lib/btime.c +++ b/bacula/src/lib/btime.c @@ -128,13 +128,15 @@ utime_t str_to_utime(char *str) struct tm tm; time_t time; - /* Check for bad argument */ - if (!str || *str == 0) { + /* Minimal check for bad argument */ + if (!str || *str == 0 || (strlen(str) != 19) || + (str[4] != '-') || (str[7] != '-') || + (str[13] != ':') || (str[16] != ':')) { return 0; } - if (sscanf(str, "%d-%d-%d %d:%d:%d", &tm.tm_year, &tm.tm_mon, &tm.tm_mday, - &tm.tm_hour, &tm.tm_min, &tm.tm_sec) != 6) { + if (sscanf(str, "%d-%d-%d %d:%d:%d", &tm.tm_year, + &tm.tm_mon, &tm.tm_mday, &tm.tm_hour, &tm.tm_min, &tm.tm_sec) != 6) { return 0; } if (tm.tm_mon > 0) {