idset.c File Reference

Parsing of GLOBSET structures. More...

#include "libmapi/libmapi.h"
#include "libmapi/libmapi_private.h"

Functions

_PUBLIC_ uint64_t exchange_globcnt (uint64_t globcnt)
_PUBLIC_ struct globset_range * GLOBSET_parse (TALLOC_CTX *mem_ctx, DATA_BLOB buffer, uint32_t *countP, uint32_t *byte_countP)
_PUBLIC_ void IDSET_dump (const struct idset *idset, const char *label)
_PUBLIC_ bool IDSET_includes_eid (const struct idset *idset, uint64_t eid)
_PUBLIC_ bool IDSET_includes_guid_glob (const struct idset *idset, struct GUID *replica_guid, uint64_t id)
_PUBLIC_ struct idset * IDSET_merge_idsets (TALLOC_CTX *mem_ctx, const struct idset *left, const struct idset *right)
_PUBLIC_ struct idset * IDSET_parse (TALLOC_CTX *mem_ctx, DATA_BLOB buffer, bool idbased)
_PUBLIC_ struct Binary_r * IDSET_serialize (TALLOC_CTX *mem_ctx, const struct idset *idset)
_PUBLIC_ void ndr_push_idset (struct ndr_push *ndr, struct idset *idset)

Detailed Description

Parsing of GLOBSET structures.


Function Documentation

_PUBLIC_ uint64_t exchange_globcnt ( uint64_t  globcnt)

Inverts the bytes of a globcnt, such as for the ids returned by Exchange

Referenced by IDSET_dump(), IDSET_includes_eid(), and IDSET_includes_guid_glob().

_PUBLIC_ struct globset_range* GLOBSET_parse ( TALLOC_CTX *  mem_ctx,
DATA_BLOB  buffer,
uint32_t *  countP,
uint32_t *  byte_countP 
)
read

deserialize a GLOBSET following the format described in [OXCFXICS - 2.2.2.5]

Referenced by IDSET_parse().

_PUBLIC_ void IDSET_dump ( const struct idset *  idset,
const char *  label 
)

dump an idset structure

References exchange_globcnt().

Referenced by IDSET_parse().

_PUBLIC_ bool IDSET_includes_eid ( const struct idset *  idset,
uint64_t  eid 
)

tests the presence of a specific id in the ranges of a ReplID-based idset structure

References exchange_globcnt().

_PUBLIC_ bool IDSET_includes_guid_glob ( const struct idset *  idset,
struct GUID *  replica_guid,
uint64_t  id 
)

tests the presence of a specific id in the ranges of a ReplGUID-based idset structure

References exchange_globcnt().

_PUBLIC_ struct idset* IDSET_merge_idsets ( TALLOC_CTX *  mem_ctx,
const struct idset *  left,
const struct idset *  right 
)
read

merge two idsets structures into a third one

_PUBLIC_ struct idset* IDSET_parse ( TALLOC_CTX *  mem_ctx,
DATA_BLOB  buffer,
bool  idbased 
)
read

deserialize an IDSET following the format described in [OXCFXICS - 2.2.2.4]

References GLOBSET_parse(), and IDSET_dump().

_PUBLIC_ struct Binary_r* IDSET_serialize ( TALLOC_CTX *  mem_ctx,
const struct idset *  idset 
)
read

serialize an idset structure in a struct SBinary_r

Referenced by ndr_push_idset().

_PUBLIC_ void ndr_push_idset ( struct ndr_push *  ndr,
struct idset *  idset 
)

push an idset on an ndr stream

References IDSET_serialize().


Creative Commons License
Creative Commons Attribution icon Creative Commons Share Alike icon
This content is licensed under the Creative Commons
Attribution ShareAlike License v. 3.0:
http://creativecommons.org/licenses/by-sa/3.0/