mirror of
https://github.com/samba-team/samba.git
synced 2024-12-23 17:34:34 +03:00
opendb: add odb_get_key() function to get the key back from a struct odb_lock
metze
This commit is contained in:
parent
438032e12f
commit
11f35a2a4d
@ -133,6 +133,16 @@ static struct odb_lock *odb_ctdb_lock(TALLOC_CTX *mem_ctx,
|
||||
return lck;
|
||||
}
|
||||
|
||||
static DATA_BLOB odb_ctdb_get_key(TALLOC_CTX *mem_ctx, struct odb_lock *lck)
|
||||
{
|
||||
/*
|
||||
* as this file will went away and isn't used yet,
|
||||
* copy the implementation from the tdb backend
|
||||
* --metze
|
||||
*/
|
||||
return data_blob_const(NULL, 0);
|
||||
}
|
||||
|
||||
/*
|
||||
determine if two odb_entry structures conflict
|
||||
|
||||
@ -610,6 +620,7 @@ static NTSTATUS odb_ctdb_can_open(struct odb_lock *lck,
|
||||
static const struct opendb_ops opendb_ctdb_ops = {
|
||||
.odb_init = odb_ctdb_init,
|
||||
.odb_lock = odb_ctdb_lock,
|
||||
.odb_get_key = odb_ctdb_get_key,
|
||||
.odb_open_file = odb_ctdb_open_file,
|
||||
.odb_open_file_pending = odb_ctdb_open_file_pending,
|
||||
.odb_close_file = odb_ctdb_close_file,
|
||||
|
@ -81,6 +81,10 @@ _PUBLIC_ struct odb_lock *odb_lock(TALLOC_CTX *mem_ctx,
|
||||
return ops->odb_lock(mem_ctx, odb, file_key);
|
||||
}
|
||||
|
||||
_PUBLIC_ DATA_BLOB odb_get_key(TALLOC_CTX *mem_ctx, struct odb_lock *lck)
|
||||
{
|
||||
return ops->odb_get_key(mem_ctx, lck);
|
||||
}
|
||||
|
||||
/*
|
||||
register an open file in the open files database. This implements the share_access
|
||||
|
@ -24,6 +24,7 @@ struct opendb_ops {
|
||||
struct ntvfs_context *ntvfs_ctx);
|
||||
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,
|
||||
uint32_t stream_id, uint32_t share_access,
|
||||
uint32_t access_mask, bool delete_on_close,
|
||||
|
@ -134,6 +134,12 @@ static struct odb_lock *odb_tdb_lock(TALLOC_CTX *mem_ctx,
|
||||
return lck;
|
||||
}
|
||||
|
||||
static DATA_BLOB odb_tdb_get_key(TALLOC_CTX *mem_ctx, struct odb_lock *lck)
|
||||
{
|
||||
return data_blob_talloc(mem_ctx, lck->key.dptr, lck->key.dsize);
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
determine if two odb_entry structures conflict
|
||||
|
||||
@ -609,6 +615,7 @@ static NTSTATUS odb_tdb_can_open(struct odb_lock *lck,
|
||||
static const struct opendb_ops opendb_tdb_ops = {
|
||||
.odb_init = odb_tdb_init,
|
||||
.odb_lock = odb_tdb_lock,
|
||||
.odb_get_key = odb_tdb_get_key,
|
||||
.odb_open_file = odb_tdb_open_file,
|
||||
.odb_open_file_pending = odb_tdb_open_file_pending,
|
||||
.odb_close_file = odb_tdb_close_file,
|
||||
|
Loading…
Reference in New Issue
Block a user