1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-02 09:47:23 +03:00

opendb: pass down open_disposition and break_to_none to odb_open_file()

metze
(This used to be commit aaaa26ae5e810495f313dfada771a8de86cedbd4)
This commit is contained in:
Stefan Metzmacher 2008-02-25 16:47:48 +01:00
parent 69631a215b
commit facdc472c7
4 changed files with 21 additions and 18 deletions

View File

@ -279,11 +279,13 @@ static NTSTATUS odb_oplock_break_send(struct odb_context *odb, struct opendb_ent
Note that the path is only used by the delete on close logic, not
for comparing with other filenames
*/
static NTSTATUS odb_ctdb_open_file(struct odb_lock *lck, void *file_handle,
static NTSTATUS odb_ctdb_open_file(struct odb_lock *lck,
void *file_handle, const char *path,
uint32_t stream_id, uint32_t share_access,
uint32_t access_mask, bool delete_on_close,
const char *path,
uint32_t open_disposition, bool break_to_none,
uint32_t oplock_level, uint32_t *oplock_granted)
{
struct odb_context *odb = lck->odb;
struct opendb_entry e;

View File

@ -93,15 +93,16 @@ _PUBLIC_ DATA_BLOB odb_get_key(TALLOC_CTX *mem_ctx, struct odb_lock *lck)
Note that the path is only used by the delete on close logic, not
for comparing with other filenames
*/
_PUBLIC_ NTSTATUS odb_open_file(struct odb_lock *lck, void *file_handle,
_PUBLIC_ NTSTATUS odb_open_file(struct odb_lock *lck,
void *file_handle, const char *path,
uint32_t stream_id, uint32_t share_access,
uint32_t access_mask, bool delete_on_close,
const char *path,
uint32_t open_disposition, bool break_to_none,
uint32_t oplock_level, uint32_t *oplock_granted)
{
return ops->odb_open_file(lck, file_handle, stream_id, share_access,
access_mask, delete_on_close, path, oplock_level,
oplock_granted);
return ops->odb_open_file(lck, file_handle, path, stream_id, share_access,
access_mask, delete_on_close, open_disposition,
break_to_none, oplock_level, oplock_granted);
}

View File

@ -25,10 +25,11 @@ struct opendb_ops {
struct odb_lock *(*odb_lock)(TALLOC_CTX *mem_ctx,
struct odb_context *odb, DATA_BLOB *file_key);
DATA_BLOB (*odb_get_key)(TALLOC_CTX *mem_ctx, struct odb_lock *lck);
NTSTATUS (*odb_open_file)(struct odb_lock *lck, void *file_handle,
NTSTATUS (*odb_open_file)(struct odb_lock *lck,
void *file_handle, const char *path,
uint32_t stream_id, uint32_t share_access,
uint32_t access_mask, bool delete_on_close,
const char *path,
uint32_t open_disposition, bool break_to_none,
uint32_t oplock_level, uint32_t *oplock_granted);
NTSTATUS (*odb_open_file_pending)(struct odb_lock *lck, void *private);
NTSTATUS (*odb_close_file)(struct odb_lock *lck, void *file_handle);

View File

@ -388,18 +388,17 @@ static NTSTATUS odb_tdb_open_can_internal(struct odb_context *odb,
Note that the path is only used by the delete on close logic, not
for comparing with other filenames
*/
static NTSTATUS odb_tdb_open_file(struct odb_lock *lck, void *file_handle,
static NTSTATUS odb_tdb_open_file(struct odb_lock *lck,
void *file_handle, const char *path,
uint32_t stream_id, uint32_t share_access,
uint32_t access_mask, bool delete_on_close,
const char *path,
uint32_t open_disposition, bool break_to_none,
uint32_t oplock_level, uint32_t *oplock_granted)
{
struct odb_context *odb = lck->odb;
struct opendb_entry e;
struct opendb_file file;
NTSTATUS status;
uint32_t open_disposition = 0;
bool break_to_none = false;
bool attrs_only = false;
if (odb->oplocks == false) {