diff options
| -rw-r--r-- | source3/smbd/open.c | 4 | 
1 files changed, 3 insertions, 1 deletions
diff --git a/source3/smbd/open.c b/source3/smbd/open.c index 86291ae714..19a13cde60 100644 --- a/source3/smbd/open.c +++ b/source3/smbd/open.c @@ -99,7 +99,9 @@ NTSTATUS smbd_check_access_rights(struct connection_struct *conn,  		return NT_STATUS_OK;  	} -	if (access_mask == DELETE_ACCESS && S_ISLNK(smb_fname->st.st_ex_mode)) { +	if (access_mask == DELETE_ACCESS && +			VALID_STAT(smb_fname->st) && +			S_ISLNK(smb_fname->st.st_ex_mode)) {  		/* We can always delete a symlink. */  		DEBUG(10,("smbd_check_access_rights: not checking ACL "  			"on DELETE_ACCESS on symlink %s.\n",  | 
