isofs: fix timestamps beyond 2027
authorArnd Bergmann <arnd@arndb.de>
Thu, 19 Oct 2017 14:47:48 +0000 (16:47 +0200)
committerBen Hutchings <ben@decadent.org.uk>
Tue, 13 Feb 2018 18:32:13 +0000 (18:32 +0000)
commit17e395ec7e80bf0211ec8fd9c5fd5fec4094c3d8
treeb3604d549a910a8d01e7784ef16d5ffdfdf431b4
parent3c467333654f621ad61701193c8b2340da52de5b
isofs: fix timestamps beyond 2027

commit 34be4dbf87fc3e474a842305394534216d428f5d upstream.

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 changes the function argument to a 'u8' array, which
is defined the same way on all architectures, and unambiguously
lets us use years until 2155.

This should be backported to all kernels that might still be
in use by that date.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jan Kara <jack@suse.cz>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
fs/isofs/isofs.h
fs/isofs/rock.h
fs/isofs/util.c