linux/fs/ksmbd
Christian Brauner 28a5d3de9d ksmbd: defer notify_change() call
When ownership is changed we might in certain scenarios loose the
ability to alter the inode after we changed ownership. This can e.g.
happen when we are on an idmapped mount where uid 0 is mapped to uid
1000 and uid 1000 is mapped to uid 0.
A caller with fs*id 1000 will be able to create files as *id 1000 on
disk. They will also be able to change ownership of files owned by *id 0
to *id 1000 but they won't be able to change ownership in the other
direction. This means acl operations following notify_change() would
fail. Move the notify_change() call after the acls have been updated.
This guarantees that we don't end up with spurious "hash value diff"
warnings later on because we managed to change ownership but didn't
manage to alter acls.

Cc: Steve French <stfrench@microsoft.com>
Cc: Christoph Hellwig <hch@infradead.org>
Cc: Namjae Jeon <namjae.jeon@samsung.com>
Cc: Hyunchul Lee <hyc.lee@gmail.com>
Cc: Sergey Senozhatsky <senozhatsky@chromium.org>
Cc: linux-cifs@vger.kernel.org
Signed-off-by: Christian Brauner <christian.brauner@ubuntu.com>
Signed-off-by: Namjae Jeon <linkinjeon@kernel.org>
Signed-off-by: Steve French <stfrench@microsoft.com>
2021-09-03 23:29:45 -05:00
..
mgmt ksmbd: reorder and document on-disk and netlink structures in headers 2021-06-30 14:47:24 +09:00
asn1.c
asn1.h
auth.c
auth.h
connection.c ksmbd: fix typo in comment 2021-07-15 10:25:30 +09:00
connection.h ksmbd: add support for negotiating signing algorithm 2021-07-22 09:56:02 +09:00
crypto_ctx.c
crypto_ctx.h
glob.h
Kconfig ksmbd: remove select FS_POSIX_ACL in Kconfig 2021-08-13 08:18:10 +09:00
ksmbd_netlink.h ksmbd: reorder and document on-disk and netlink structures in headers 2021-06-30 14:47:24 +09:00
ksmbd_spnego_negtokeninit.asn1
ksmbd_spnego_negtokentarg.asn1
ksmbd_work.c ksmbd: reorder and document on-disk and netlink structures in headers 2021-06-30 14:47:24 +09:00
ksmbd_work.h ksmbd: change data type of volatile/persistent id to u64 2021-07-09 08:23:16 +09:00
Makefile
misc.c
misc.h
ndr.c ndr: fix translation in ndr_encode_posix_acl() 2021-09-03 23:29:45 -05:00
ndr.h ksmbd: add user namespace support 2021-07-02 16:27:10 +09:00
nterr.h
ntlmssp.h
oplock.c ksmbd: fix translation in create_posix_rsp_buf() 2021-09-03 23:29:44 -05:00
oplock.h ksmbd: remove SMB1 oplock level macros 2021-06-30 14:43:51 +09:00
server.c ksmbd: set STATUS_INVALID_PARAMETER error status if credit charge is invalid 2021-07-19 16:20:02 +09:00
server.h ksmbd: change server config string index to enumeration 2021-06-30 14:44:01 +09:00
smb2misc.c ksmbd: move credit charge verification over smb2 request size verification 2021-07-19 16:20:04 +09:00
smb2ops.c ksmbd: add support for negotiating signing algorithm 2021-07-22 09:56:02 +09:00
smb2pdu.c ksmbd: remove setattr preparations in set_file_basic_info() 2021-09-03 23:29:45 -05:00
smb2pdu.h ksmbd: change int data type to boolean 2021-08-13 08:18:03 +09:00
smb_common.c ksmbd: fix translation in smb2_populate_readdir_entry() 2021-09-03 23:29:44 -05:00
smb_common.h ksmbd: fix translation in smb2_populate_readdir_entry() 2021-09-03 23:29:44 -05:00
smbacl.c ksmbd: defer notify_change() call 2021-09-03 23:29:45 -05:00
smbacl.h ksmbd: fix translation in acl entries 2021-09-03 23:29:44 -05:00
smbfsctl.h
smbstatus.h
transport_ipc.c ksmbd: fix kernel oops in ksmbd_rpc_ioctl/rap() 2021-07-03 08:02:18 +09:00
transport_ipc.h
transport_rdma.c ksmbd: smbd: fix kernel oops during server shutdown 2021-08-13 08:18:13 +09:00
transport_rdma.h ksmbd: fix typo of MS-SMBD 2021-07-22 09:55:58 +09:00
transport_tcp.c ksmbd: Fix potential memory leak in tcp_destroy_socket() 2021-07-23 13:10:55 +09:00
transport_tcp.h
unicode.c
unicode.h
uniupr.h
vfs_cache.c ksmbd: free ksmbd_lock when file is closed 2021-07-10 16:23:50 +09:00
vfs_cache.h ksmbd: free ksmbd_lock when file is closed 2021-07-10 16:23:50 +09:00
vfs.c ksmbd: fix translation in acl entries 2021-09-03 23:29:44 -05:00
vfs.h ksmbd: fix lookup on idmapped mounts 2021-09-03 23:29:44 -05:00
xattr.h ksmbd: reorder and document on-disk and netlink structures in headers 2021-06-30 14:47:24 +09:00