return status;
}
- status = check_access(conn, fsp, smb_fname, FILE_WRITE_EA);
+ if (fsp != NULL) {
+ status = check_access_fsp(fsp, FILE_WRITE_EA);
+ } else {
+ status = check_access(conn, fsp, smb_fname, FILE_WRITE_EA);
+ }
if (!NT_STATUS_IS_OK(status)) {
return status;
}
return NT_STATUS_INVALID_PARAMETER;
}
- status = check_access(conn, fsp, smb_fname, FILE_WRITE_ATTRIBUTES);
+ if (fsp != NULL) {
+ status = check_access_fsp(fsp, FILE_WRITE_ATTRIBUTES);
+ } else {
+ status = check_access(conn, fsp, smb_fname, FILE_WRITE_ATTRIBUTES);
+ }
if (!NT_STATUS_IS_OK(status)) {
return status;
}
DEBUG(10,("smb_set_info_standard: file %s\n",
smb_fname_str_dbg(smb_fname)));
- status = check_access(conn, fsp, smb_fname, FILE_WRITE_ATTRIBUTES);
+ if (fsp != NULL) {
+ status = check_access_fsp(fsp, FILE_WRITE_ATTRIBUTES);
+ } else {
+ status = check_access(conn, fsp, smb_fname, FILE_WRITE_ATTRIBUTES);
+ }
if (!NT_STATUS_IS_OK(status)) {
return status;
}