mirror of
https://github.com/samba-team/samba.git
synced 2025-08-03 04:22:09 +03:00
smbd: Convert get_share_mode_blob_header() to use a const ptr
Signed-off-by: Volker Lendecke <vl@samba.org> Reviewed-by: Ralph Boehme <slow@samba.org>
This commit is contained in:
committed by
Ralph Boehme
parent
7905afcd77
commit
955b3c3de9
@ -211,9 +211,12 @@ static void share_mode_memcache_store(struct share_mode_data *d)
|
||||
*/
|
||||
|
||||
static enum ndr_err_code get_share_mode_blob_header(
|
||||
DATA_BLOB *blob, uint64_t *pseq, uint16_t *pflags)
|
||||
const uint8_t *buf, size_t buflen, uint64_t *pseq, uint16_t *pflags)
|
||||
{
|
||||
struct ndr_pull ndr = {.data = blob->data, .data_size = blob->length};
|
||||
struct ndr_pull ndr = {
|
||||
.data = discard_const_p(uint8_t, buf),
|
||||
.data_size = buflen,
|
||||
};
|
||||
NDR_CHECK(ndr_pull_hyper(&ndr, NDR_SCALARS, pseq));
|
||||
NDR_CHECK(ndr_pull_uint16(&ndr, NDR_SCALARS, pflags));
|
||||
return NDR_ERR_SUCCESS;
|
||||
@ -228,11 +231,10 @@ static void fsp_update_share_mode_flags_fn(
|
||||
TDB_DATA value, bool *modified_dependent, void *private_data)
|
||||
{
|
||||
struct fsp_update_share_mode_flags_state *state = private_data;
|
||||
DATA_BLOB blob = { .data = value.dptr, .length = value.dsize };
|
||||
uint64_t seq;
|
||||
|
||||
state->ndr_err = get_share_mode_blob_header(
|
||||
&blob, &seq, &state->share_mode_flags);
|
||||
value.dptr, value.dsize, &seq, &state->share_mode_flags);
|
||||
}
|
||||
|
||||
static NTSTATUS fsp_update_share_mode_flags(struct files_struct *fsp)
|
||||
@ -313,7 +315,8 @@ static struct share_mode_data *share_mode_memcache_fetch(TALLOC_CTX *mem_ctx,
|
||||
return NULL;
|
||||
}
|
||||
/* sequence number key is at start of blob. */
|
||||
ndr_err = get_share_mode_blob_header(blob, &sequence_number, &flags);
|
||||
ndr_err = get_share_mode_blob_header(
|
||||
blob->data, blob->length, &sequence_number, &flags);
|
||||
if (ndr_err != NDR_ERR_SUCCESS) {
|
||||
/* Bad blob. Remove entry. */
|
||||
DBG_DEBUG("bad blob %u key %s\n",
|
||||
|
Reference in New Issue
Block a user