isofs: fix timestamps beyond 2027
authorArnd Bergmann <arnd@arndb.de>
Thu, 19 Oct 2017 14:47:48 +0000 (16:47 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 30 Nov 2017 08:40:45 +0000 (08:40 +0000)
commitf2122d66edb0a2df551eabce64ed364c8eb2d5da
tree69b58961627f587b468d33ceff827a96a62146fc
parent1dd7dd07e875428e5f05ec55d90472ed6089b08e
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: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
fs/isofs/isofs.h
fs/isofs/rock.h
fs/isofs/util.c