summaryrefslogtreecommitdiff
path: root/source3/smbd/open.c
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2011-10-26 14:47:52 -0700
committerJeremy Allison <jra@samba.org>2011-10-28 12:16:42 -0700
commit18df3aedb9dc0b7af0cc4046efb23026708f5d71 (patch)
tree3c656e73d4f5ce047bb414e9e12ad610513f13b3 /source3/smbd/open.c
parent1619de30805e57adc8bf063a9ccf6f5ba245bc5a (diff)
downloadsamba-18df3aedb9dc0b7af0cc4046efb23026708f5d71.tar.gz
samba-18df3aedb9dc0b7af0cc4046efb23026708f5d71.tar.bz2
samba-18df3aedb9dc0b7af0cc4046efb23026708f5d71.zip
Move parent_override_delete() to before I need to use it.
Diffstat (limited to 'source3/smbd/open.c')
-rw-r--r--source3/smbd/open.c38
1 files changed, 19 insertions, 19 deletions
diff --git a/source3/smbd/open.c b/source3/smbd/open.c
index 976bb6fdb4..4d70603f53 100644
--- a/source3/smbd/open.c
+++ b/source3/smbd/open.c
@@ -65,6 +65,25 @@ NTSTATUS smb1_file_se_access_check(struct connection_struct *conn,
}
/****************************************************************************
+ If the requester wanted DELETE_ACCESS and was only rejected because
+ the file ACL didn't include DELETE_ACCESS, see if the parent ACL
+ ovverrides this.
+****************************************************************************/
+
+static bool parent_override_delete(connection_struct *conn,
+ struct smb_filename *smb_fname,
+ uint32_t access_mask,
+ uint32_t rejected_mask)
+{
+ if ((access_mask & DELETE_ACCESS) &&
+ (rejected_mask == DELETE_ACCESS) &&
+ can_delete_file_in_directory(conn, smb_fname)) {
+ return true;
+ }
+ return false;
+}
+
+/****************************************************************************
Check if we have open rights.
****************************************************************************/
@@ -192,25 +211,6 @@ static NTSTATUS check_parent_access(struct connection_struct *conn,
}
/****************************************************************************
- If the requester wanted DELETE_ACCESS and was only rejected because
- the file ACL didn't include DELETE_ACCESS, see if the parent ACL
- ovverrides this.
-****************************************************************************/
-
-static bool parent_override_delete(connection_struct *conn,
- struct smb_filename *smb_fname,
- uint32_t access_mask,
- uint32_t rejected_mask)
-{
- if ((access_mask & DELETE_ACCESS) &&
- (rejected_mask == DELETE_ACCESS) &&
- can_delete_file_in_directory(conn, smb_fname)) {
- return true;
- }
- return false;
-}
-
-/****************************************************************************
fd support routines - attempt to do a dos_open.
****************************************************************************/