From: Stefan Metzmacher Date: Tue, 13 Dec 2011 13:24:58 +0000 (+0100) Subject: s3:smbd/oplock_onefs: pass smbd_server_connection to onefs_oplock_wait_record() X-Git-Url: http://git.samba.org/?p=kai%2Fsamba.git;a=commitdiff_plain;h=fcc1f5f7f7a5a1f51657c8da90f45142359a01bb s3:smbd/oplock_onefs: pass smbd_server_connection to onefs_oplock_wait_record() metze --- diff --git a/source3/modules/onefs_open.c b/source3/modules/onefs_open.c index d7b2af35441..a77d6f3e7e7 100644 --- a/source3/modules/onefs_open.c +++ b/source3/modules/onefs_open.c @@ -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; } diff --git a/source3/smbd/oplock_onefs.c b/source3/smbd/oplock_onefs.c index d7e36087350..9e427a3607f 100644 --- a/source3/smbd/oplock_onefs.c +++ b/source3/smbd/oplock_onefs.c @@ -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;