bool modified : 1;
bool is_directory : 1;
bool aio_write_behind : 1;
+ bool initial_delete_on_close : 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 initial_delete_on_close; /* Only set at NTCreateX if file was created. */
bool delete_on_close;
uint64_t posix_flags;
bool is_sparse;
}
}
- if (fsp->initial_delete_on_close &&
+ if (fsp->fsp_flags.initial_delete_on_close &&
!is_delete_on_close_set(lck, fsp->name_hash)) {
bool became_user = False;
return NT_STATUS_INVALID_PARAMETER;
}
- if (fsp->initial_delete_on_close) {
+ if (fsp->fsp_flags.initial_delete_on_close) {
bool became_user = False;
/* Initial delete on close was set - for
* For now let it be simple and do not keep
* delete on close files durable open
*/
- if (fsp->initial_delete_on_close) {
+ if (fsp->fsp_flags.initial_delete_on_close) {
return NT_STATUS_NOT_SUPPORTED;
}
if (fsp->delete_on_close) {
}
/* Note that here we set the *initial* delete on close flag,
not the regular one. The magic gets handled in close. */
- fsp->initial_delete_on_close = True;
+ fsp->fsp_flags.initial_delete_on_close = true;
}
/*
if (NT_STATUS_IS_OK(status)) {
/* Note that here we set the *initial* delete on close flag,
not the regular one. The magic gets handled in close. */
- fsp->initial_delete_on_close = True;
+ fsp->fsp_flags.initial_delete_on_close = true;
}
}
if (NT_STATUS_IS_OK(status)) {
/* Note that here we set the *initial* delete on close flag,
* not the regular one. The magic gets handled in close. */
- fsp->initial_delete_on_close = True;
+ fsp->fsp_flags.initial_delete_on_close = true;
}
}
TALLOC_FREE(lck);
}
if ((in_flags & SMB2_CLOSE_FLAGS_FULL_INFORMATION) &&
- (fsp->initial_delete_on_close ||
+ (fsp->fsp_flags.initial_delete_on_close ||
fsp->delete_on_close))
{
/*