summaryrefslogtreecommitdiffstats
path: root/fs/isofs/rock.h
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2017-10-19 16:47:48 +0200
committerJan Kara <jack@suse.cz>2017-10-31 17:56:53 +0100
commit34be4dbf87fc3e474a842305394534216d428f5d (patch)
treeeff6a52a4aa4d9d6e9260203b3e7fba574a11e06 /fs/isofs/rock.h
parentudf: Fix some sign-conversion warnings (diff)
downloadlinux-34be4dbf87fc3e474a842305394534216d428f5d.tar.xz
linux-34be4dbf87fc3e474a842305394534216d428f5d.zip
isofs: fix timestamps beyond 2027
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. Cc: stable@vger.kernel.org Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/isofs/rock.h')
-rw-r--r--fs/isofs/rock.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/isofs/rock.h b/fs/isofs/rock.h
index ed09e2b08637..f835976ce033 100644
--- a/fs/isofs/rock.h
+++ b/fs/isofs/rock.h
@@ -65,7 +65,7 @@ struct RR_PL_s {
};
struct stamp {
- char time[7];
+ __u8 time[7]; /* actually 6 unsigned, 1 signed */
} __attribute__ ((packed));
struct RR_TF_s {