uint64_t vuid; /* SMB2 compat */
struct timeval open_time;
uint32_t access_mask; /* NTCreateX access bits (FILE_READ_DATA etc.) */
- bool kernel_share_modes_taken;
+ struct {
+ bool kernel_share_modes_taken : 1;
+ } fsp_flags;
bool update_write_time_triggered;
struct tevent_timer *update_write_time_event;
struct gpfs_config_data,
return -1);
- if (config->sharemodes && fsp->kernel_share_modes_taken) {
+ if (config->sharemodes &&
+ (fsp->fsp_flags.kernel_share_modes_taken))
+ {
/*
* Always clear GPFS sharemode in case the actual
* close gets deferred due to outstanding POSIX locks
}
}
- if (fsp->kernel_share_modes_taken) {
+ if (fsp->fsp_flags.kernel_share_modes_taken) {
int ret_flock;
/*
fsp_str_dbg(fsp), strerror(errno));
}
- fsp->kernel_share_modes_taken = false;
+ fsp->fsp_flags.kernel_share_modes_taken = false;
}
pop_sec_ctx();
}
- if (fsp->kernel_share_modes_taken) {
+ if (fsp->fsp_flags.kernel_share_modes_taken) {
int ret_flock;
/* remove filesystem sharemodes */
return NT_STATUS_SHARING_VIOLATION;
}
- fsp->kernel_share_modes_taken = true;
+ fsp->fsp_flags.kernel_share_modes_taken = true;
}
/*