[Devel] [PATCH RH9 21/33] ve/fs/locks: Make CAP_LEASE work in containers

Andrey Zhadchenko andrey.zhadchenko at virtuozzo.com
Thu Sep 23 22:08:24 MSK 2021


From: Evgenii Shatokhin <eshatokhin at virtuozzo.com>

Allowing the privileged processes in the containers to set leases on
arbitrary files seems to make no harm. Let us make CAP_LEASE work there.

https://jira.sw.ru/browse/PSBM-46199

Signed-off-by: Evgenii Shatokhin <eshatokhin at virtuozzo.com>
Acked-by: Cyrill Gorcunov <gorcunov at openvz.org>

(cherry picked from vz8 commit 3550407163989a6901cfa17922783d1143dd69d1)
Signed-off-by: Andrey Zhadchenko <andrey.zhadchenko at virtuozzo.com>
---
 fs/locks.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/locks.c b/fs/locks.c
index 74b2a1d..3edcf30 100644
--- a/fs/locks.c
+++ b/fs/locks.c
@@ -2000,7 +2000,7 @@ int generic_setlease(struct file *filp, long arg, struct file_lock **flp,
 	struct inode *inode = locks_inode(filp);
 	int error;
 
-	if ((!uid_eq(current_fsuid(), inode->i_uid)) && !capable(CAP_LEASE))
+	if ((!uid_eq(current_fsuid(), inode->i_uid)) && !ve_capable(CAP_LEASE))
 		return -EACCES;
 	if (!S_ISREG(inode->i_mode))
 		return -EINVAL;
-- 
1.8.3.1



More information about the Devel mailing list