4.4-stable review patch. If anyone has any objections, please let me know.
------------------ From: Seth Forshee <seth.fors...@canonical.com> [ Upstream commit 5f65e5ca286126a60f62c8421b77c2018a482b8a ] Using INVALID_[UG]ID for the LSM file creation context doesn't make sense, so return an error if the inode passed to set_create_file_as() has an invalid id. Signed-off-by: Seth Forshee <seth.fors...@canonical.com> Acked-by: Serge Hallyn <serge.hal...@canonical.com> Signed-off-by: Eric W. Biederman <ebied...@xmission.com> Signed-off-by: Sasha Levin <alexander.le...@verizon.com> Signed-off-by: Greg Kroah-Hartman <gre...@linuxfoundation.org> --- kernel/cred.c | 2 ++ 1 file changed, 2 insertions(+) --- a/kernel/cred.c +++ b/kernel/cred.c @@ -689,6 +689,8 @@ EXPORT_SYMBOL(set_security_override_from */ int set_create_files_as(struct cred *new, struct inode *inode) { + if (!uid_valid(inode->i_uid) || !gid_valid(inode->i_gid)) + return -EINVAL; new->fsuid = inode->i_uid; new->fsgid = inode->i_gid; return security_kernel_create_files_as(new, inode);