smbd: set fsp_flags.is_fsa to true on printer file handles
authorRalph Boehme <slow@samba.org>
Thu, 21 Dec 2023 15:27:42 +0000 (16:27 +0100)
committerJule Anger <janger@samba.org>
Tue, 9 Jan 2024 12:13:13 +0000 (12:13 +0000)
Printer file handles went through SMB_VFS_CREATE_FILE() and are network
callable, so it makes sense to set this on them.

This ensures that check_access_fsp() doesn't take the codepath calling
smbd_check_access_rights_fsp(), but just checks the request rights from
fsp->access_mask.

BUG: https://bugzilla.samba.org/show_bug.cgi?id=13688

Signed-off-by: Ralph Boehme <slow@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
(cherry picked from commit 76c8fe16bff36a29fa326355256b50737d04bd85)

source3/printing/printspoolss.c

index 31117a4b74389bcf0034231df722514dbbfa7a7b..94404f7682ab66147774ffe01fb3e07659fd2a48 100644 (file)
@@ -244,6 +244,7 @@ NTSTATUS print_spool_open(files_struct *fsp,
        fsp->sent_oplock_break = NO_BREAK_SENT;
        fsp->fsp_flags.is_directory = false;
        fsp->fsp_flags.delete_on_close = false;
+       fsp->fsp_flags.is_fsa = true;
 
        fsp->print_file = pf;