From af20923a0fa67bf8e506c4420a0cb950827366c6 Mon Sep 17 00:00:00 2001 From: Jihwan Kim Date: Mon, 28 Mar 2022 11:48:30 +0900 Subject: [PATCH] Fix datetime format string to follow POSIX spec in ftp_mdtm() Closes GH-8259 --- NEWS | 3 +++ ext/ftp/ftp.c | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/NEWS b/NEWS index c753c53622e..b85273c07ac 100644 --- a/NEWS +++ b/NEWS @@ -30,6 +30,9 @@ PHP NEWS . Added support for listening queue on macOS. (David Carlier) . Changed default for listen.backlog on Linux to -1. (Cristian Rodríguez) +- FTP: + . Fix datetime format string to follow POSIX spec in ftp_mdtm(). (Jihwan Kim) + - Intl: . Update all grandfathered language tags with preferred values . Fixed GH-7939 (Cannot unserialize IntlTimeZone objects). (cmb) diff --git a/ext/ftp/ftp.c b/ext/ftp/ftp.c index ef91fdec979..1af4f13c65a 100644 --- a/ext/ftp/ftp.c +++ b/ext/ftp/ftp.c @@ -1145,7 +1145,7 @@ ftp_mdtm(ftpbuf_t *ftp, const char *path, const size_t path_len) } /* parse out the timestamp */ for (ptr = ftp->inbuf; *ptr && !isdigit(*ptr); ptr++); - n = sscanf(ptr, "%4u%2u%2u%2u%2u%2u", &tm.tm_year, &tm.tm_mon, &tm.tm_mday, &tm.tm_hour, &tm.tm_min, &tm.tm_sec); + n = sscanf(ptr, "%4d%2d%2d%2d%2d%2d", &tm.tm_year, &tm.tm_mon, &tm.tm_mday, &tm.tm_hour, &tm.tm_min, &tm.tm_sec); if (n != 6) { return -1; }