X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=fs%2Fnamei.c;h=32fd9655485b7fc9b8c8616ad6a61f6ac243b328;hb=ec42418f1973e1f77da1fcca3be59c0acb878a9d;hp=e179f71bfcb058df613f83cb1ff923d47ffc4618;hpb=e43fe686e48835ca027559a068bbe0b6d264a254;p=linux-2.6 diff --git a/fs/namei.c b/fs/namei.c index e179f71bfc..32fd965548 100644 --- a/fs/namei.c +++ b/fs/namei.c @@ -30,6 +30,7 @@ #include #include #include +#include #include #include @@ -281,6 +282,10 @@ int permission(struct inode *inode, int mask, struct nameidata *nd) if (retval) return retval; + retval = devcgroup_inode_permission(inode, mask); + if (retval) + return retval; + return security_inode_permission(inode, mask, nd); } @@ -2028,6 +2033,10 @@ int vfs_mknod(struct inode *dir, struct dentry *dentry, int mode, dev_t dev) if (!dir->i_op || !dir->i_op->mknod) return -EPERM; + error = devcgroup_inode_mknod(mode, dev); + if (error) + return error; + error = security_inode_mknod(dir, dentry, mode, dev); if (error) return error;