Skip to contentSkip to conversation

ocfs2: Use ERR_CAST() to avoid cross-structure cast

PATCH New Kees Cook 1 participant 1 message May 8, 2017 OCFS2

lore
Share & tools
lore

Kees Cook

author
#0 lore raw

PATCH 1/1 ocfs2: Use ERR_CAST() to avoid cross-structure cast

When trying to propegate 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.

---
 fs/ocfs2/export.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
fs/ocfs2/export.c +1 -1
index 827fc9809bc2..9f88188060db 100644
@@ -119,7 +119,7 @@ static struct dentry *ocfs2_get_dentry(struct super_block *sb,
 
 	if (IS_ERR(inode)) {
 		mlog_errno(PTR_ERR(inode));
-		result = (void *)inode;
+		result = ERR_CAST(inode);
 		goto bail;
 	}
 
Signature · 6 lines
2.7.4


-- 
Kees Cook
Pixel Security