oxosfld.c File Reference

Server-side procedures about special folders. More...

#include "dcesrv_exchange_emsmdb.h"
#include <gen_ndr/ndr_property.h>

Functions

static bool fid_in_entry_id (struct Binary_r *checked_entry_id, uint64_t parent_fid, struct FolderEntryId *entry_id, uint64_t entry_id_fid)
 
_PUBLIC_ bool oxosfld_is_special_folder (struct emsmdbp_context *emsmdbp_ctx, uint64_t fid)
 

Detailed Description

Server-side procedures about special folders.

Function Documentation

§ fid_in_entry_id()

static bool fid_in_entry_id ( struct Binary_r *  checked_entry_id,
uint64_t  parent_fid,
struct FolderEntryId *  entry_id,
uint64_t  entry_id_fid 
)
static

§ oxosfld_is_special_folder()

_PUBLIC_ bool oxosfld_is_special_folder ( struct emsmdbp_context emsmdbp_ctx,
uint64_t  fid 
)

Check if a fid is an special following [MS-OXOSFLD] Section 2.2.2 rules.

Parameters
emsmdbp_ctxpointer to the emsmdb provider context
fidthe folder identifier to check
Returns
true on success, otherwise false
Note
An error on any call is interpreted as false

References EMSMDBP_INBOX, EMSMDBP_MAILBOX_ROOT, fid_in_entry_id(), emsmdbp_context::oc_ctx, openchangedb_get_folder_property(), openchangedb_get_MailboxGuid(), openchangedb_get_MailboxReplica(), openchangedb_get_system_idx(), openchangedb_get_SystemFolderID(), and emsmdbp_context::username.

Referenced by EcDoRpc_RopCreateFolder(), and emsmdbp_folder_delete().


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/