summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKees Cook <keescook@chromium.org>2017-05-08 23:49:27 +0200
committerKees Cook <keescook@chromium.org>2017-05-28 19:11:49 +0200
commit7585d12f6555fdf4faaefec34ac58b28555b27d0 (patch)
treeb9b1636760cab17d4cc8b5071843c8d48c0d5a9e
parentntfs: Use ERR_CAST() to avoid cross-structure cast (diff)
downloadlinux-7585d12f6555fdf4faaefec34ac58b28555b27d0.tar.xz
linux-7585d12f6555fdf4faaefec34ac58b28555b27d0.zip
ocfs2: Use ERR_CAST() to avoid cross-structure cast
When trying to propagate an error result, the error return path attempts to retain the error, but does this with an open cast across very different types, which the upcoming structure layout randomization plugin flags as being potentially dangerous in the face of randomization. This is a false positive, but what this code actually wants to do is use ERR_CAST() to retain the error value. Cc: Mark Fasheh <mfasheh@versity.com> Cc: Joel Becker <jlbec@evilplan.org> Signed-off-by: Kees Cook <keescook@chromium.org>
-rw-r--r--fs/ocfs2/export.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ocfs2/export.c b/fs/ocfs2/export.c
index 827fc9809bc2..9f88188060db 100644
--- a/fs/ocfs2/export.c
+++ b/fs/ocfs2/export.c
@@ -119,7 +119,7 @@ check_err:
if (IS_ERR(inode)) {
mlog_errno(PTR_ERR(inode));
- result = (void *)inode;
+ result = ERR_CAST(inode);
goto bail;
}