1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-27 14:04:05 +03:00

s3:smbd/oplock_onefs: pass smbd_server_connection to onefs_oplock_wait_record()

metze
This commit is contained in:
Stefan Metzmacher 2011-12-13 14:24:58 +01:00
parent daa685c008
commit fcc1f5f7f7
2 changed files with 6 additions and 2 deletions

View File

@ -871,7 +871,8 @@ NTSTATUS onefs_open_file_ntcreate(connection_struct *conn,
*/
if (req) {
SMB_ASSERT(fsp_data);
oplock_callback_id = onefs_oplock_wait_record(req->mid);
oplock_callback_id = onefs_oplock_wait_record(req->sconn,
req->mid);
if (oplock_callback_id == 0) {
return NT_STATUS_NO_MEMORY;
}

View File

@ -47,6 +47,7 @@ enum onefs_callback_state {
struct onefs_callback_record {
struct onefs_callback_record *prev, *next;
struct smbd_server_connection *sconn;
uint64_t id;
enum onefs_callback_state state;
union {
@ -198,7 +199,8 @@ void destroy_onefs_callback_record(uint64_t id)
* 2. OPEN_FILE: Once ifs_createfile completes, the callback record is
* transitioned to this state via onefs_set_oplock_callback.
*/
uint64_t onefs_oplock_wait_record(uint64_t mid)
uint64_t onefs_oplock_wait_record(struct smbd_server_connection *sconn,
uint64_t mid)
{
struct onefs_callback_record *result;
static uint64_t id_generator = 0;
@ -216,6 +218,7 @@ uint64_t onefs_oplock_wait_record(uint64_t mid)
id_generator += 1;
}
result->sconn = sconn;
result->id = id_generator;
result->state = ONEFS_WAITING_FOR_OPLOCK;