Messages in this thread Patch in this message | | | From | Arnd Bergmann <> | Subject | [PATCH] isofs: fix timestamps beyond 2027 | Date | Thu, 19 Oct 2017 11:50:18 +0200 |
| |
isofs uses a 'char' variable to load the number of years since 1900 for an inode timestamp. On architectures that use a signed char type by default, this results in an invalid date for anything beyond 2027.
This adds a cast to 'u8' for the year number, which should extend the shelf life of the file system until 2155.
This should be backported to all kernels that might still be in use by that date.
Cc: stable@vger.kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de> --- fs/isofs/util.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fs/isofs/util.c b/fs/isofs/util.c index 005a15cfd30a..f40796c4c6c2 100644 --- a/fs/isofs/util.c +++ b/fs/isofs/util.c @@ -20,7 +20,7 @@ int iso_date(char * p, int flag) int year, month, day, hour, minute, second, tz; int crtime; - year = p[0]; + year = (int)(u8)p[0]; month = p[1]; day = p[2]; hour = p[3]; -- 2.9.0
| |