bool can_write : 1;
bool modified : 1;
bool is_directory : 1;
+ bool aio_write_behind : 1;
} fsp_flags;
struct tevent_timer *update_write_time_event;
struct lock_struct last_lock_failure;
int current_lock_count; /* Count the number of outstanding locks and pending locks. */
- bool aio_write_behind;
bool initial_delete_on_close; /* Only set at NTCreateX if file was created. */
bool delete_on_close;
uint64_t posix_flags;
contend_level2_oplocks_end(fsp, LEVEL2_CONTEND_WRITE);
if (!aio_ex->write_through && !lp_sync_always(SNUM(fsp->conn))
- && fsp->aio_write_behind) {
+ && fsp->fsp_flags.aio_write_behind)
+ {
/* Lie to the client and immediately claim we finished the
* write. */
SSVAL(aio_ex->outbuf.data,smb_vwv2,numtowrite);
mark_file_modified(fsp);
- if (fsp->aio_write_behind) {
+ if (fsp->fsp_flags.aio_write_behind) {
if (nwritten != numtowrite) {
if (nwritten == -1) {
/*
* We do not support aio write behind for smb2
*/
- fsp->aio_write_behind = false;
+ fsp->fsp_flags.aio_write_behind = false;
fsp->oplock_type = e.op_type;
if (fsp->oplock_type == LEASE_OPLOCK) {
((access_mask & (FILE_WRITE_DATA | FILE_APPEND_DATA)) != 0);
to->fsp_flags.modified = from->fsp_flags.modified;
to->fsp_flags.is_directory = from->fsp_flags.is_directory;
- to->aio_write_behind = from->aio_write_behind;
+ to->fsp_flags.aio_write_behind = from->fsp_flags.aio_write_behind;
return fsp_set_smb_fname(to, from->fsp_name);
}
if (conn->aio_write_behind_list &&
is_in_path(smb_fname->base_name, conn->aio_write_behind_list,
conn->case_sensitive)) {
- fsp->aio_write_behind = True;
+ fsp->fsp_flags.aio_write_behind = true;
}
DEBUG(2,("%s opened file %s read=%s write=%s (numopen=%d)\n",