Message ID | 1449070821-73820-9-git-send-email-seth.forshee@canonical.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
On Wed, Dec 02, 2015 at 09:40:08AM -0600, Seth Forshee wrote: > 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.forshee@canonical.com> Acked-by: Serge Hallyn <serge.hallyn@canonical.com> > --- > kernel/cred.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/kernel/cred.c b/kernel/cred.c > index 71179a09c1d6..ff8606f77d90 100644 > --- a/kernel/cred.c > +++ b/kernel/cred.c > @@ -689,6 +689,8 @@ EXPORT_SYMBOL(set_security_override_from_ctx); > */ > 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); > -- > 1.9.1 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/
diff --git a/kernel/cred.c b/kernel/cred.c index 71179a09c1d6..ff8606f77d90 100644 --- a/kernel/cred.c +++ b/kernel/cred.c @@ -689,6 +689,8 @@ EXPORT_SYMBOL(set_security_override_from_ctx); */ 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);
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.forshee@canonical.com> --- kernel/cred.c | 2 ++ 1 file changed, 2 insertions(+)