Files
kernel_arpi/include/uapi/linux
Miklos Szeredi 4a2abf99f9 fuse: add FUSE_WRITE_KILL_PRIV
In the FOPEN_DIRECT_IO case the write path doesn't call file_remove_privs()
and that means setuid bit is not cleared if unpriviliged user writes to a
file with setuid bit set.

pjdfstest chmod test 12.t tests this and fails.

Fix this by adding a flag to the FUSE_WRITE message that requests clearing
privileges on the given file.  This needs 

This better than just calling fuse_remove_privs(), because the attributes
may not be up to date, so in that case a write may miss clearing the
privileges.

Test case:

  $ passthrough_ll /mnt/pasthrough-mnt -o default_permissions,allow_other,cache=never
  $ mkdir /mnt/pasthrough-mnt/testdir
  $ cd /mnt/pasthrough-mnt/testdir
  $ prove -rv pjdfstests/tests/chmod/12.t

Reported-by: Vivek Goyal <vgoyal@redhat.com>
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
Tested-by: Vivek Goyal <vgoyal@redhat.com>
2019-05-27 11:42:36 +02:00
..
2019-01-28 08:13:52 +01:00
2019-04-24 09:46:34 -04:00
2019-04-15 18:14:01 -04:00
2019-03-07 18:32:01 -08:00
2019-01-24 11:11:42 -07:00
2019-02-14 11:51:51 -05:00
2018-12-20 19:13:07 +01:00
2019-03-27 13:30:07 -07:00
2018-06-18 15:11:53 +10:00
2019-05-27 11:42:36 +02:00
2018-09-13 10:46:24 +02:00
2018-09-05 22:27:11 -07:00
2018-07-07 17:41:38 +02:00
2018-08-03 10:03:57 -07:00
2018-12-19 09:40:13 +01:00
2018-12-16 12:15:25 -08:00
2018-12-01 12:38:32 +01:00
2019-05-13 18:34:48 -05:00
2019-01-22 10:21:45 +01:00
2019-05-07 14:31:03 +02:00
2019-03-23 21:50:05 -04:00
2019-02-14 11:51:51 -05:00
2018-09-03 13:29:38 +02:00