Account provisioning. More...
#include <ctype.h>
#include <string.h>
#include "dcesrv_exchange_emsmdb.h"
#include <gen_ndr/ndr_property.h>
Macros | |
#define | MAILBOX_ROOT_NAME "OpenChange: %s" |
Functions | |
_PUBLIC_ enum MAPISTATUS | emsmdbp_mailbox_provision (struct emsmdbp_context *emsmdbp_ctx, const char *username) |
_PUBLIC_ enum MAPISTATUS | emsmdbp_mailbox_provision_public_freebusy (struct emsmdbp_context *emsmdbp_ctx, const char *EssDN) |
static const char ** | get_folders_names (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx) |
static enum MAPISTATUS | get_new_public_folder_id (struct emsmdbp_context *emsmdbp_ctx, uint64_t parent_fid, uint64_t *fid) |
static struct emsmdbp_special_folder * | get_special_folders (TALLOC_CTX *mem_ctx, struct emsmdbp_context *emsmdbp_ctx) |
Account provisioning.
#define MAILBOX_ROOT_NAME "OpenChange: %s" |
Referenced by emsmdbp_mailbox_provision().
_PUBLIC_ enum MAPISTATUS emsmdbp_mailbox_provision | ( | struct emsmdbp_context * | emsmdbp_ctx, |
const char * | username | ||
) |
create root/Freebusy Data folder + "LocalFreebusy" message (OXODLGT)
References EMSMDBP_DEFERRED_ACTION, EMSMDBP_DELETED_ITEMS, emsmdbp_fetch_organizational_units(), EMSMDBP_INBOX, EMSMDBP_MAILBOX_ROOT, EMSMDBP_MAX_MAILBOX_SYSTEMIDX, EMSMDBP_OUTBOX, EMSMDBP_REMINDERS, EMSMDBP_SENT_ITEMS, EMSMDBP_TOP_INFORMATION_STORE, emsmdbp_special_folder::entryid_property, get_folders_names(), get_special_folders(), emsmdbp_context::lp_ctx, MAILBOX_ROOT_NAME, emsmdbp_context::mstore_ctx, emsmdbp_special_folder::name, emsmdbp_context::oc_ctx, openchangedb_create_folder(), openchangedb_create_mailbox(), openchangedb_delete_folder(), openchangedb_get_fid(), openchangedb_get_fid_by_name(), openchangedb_get_folder_property(), openchangedb_get_MailboxGuid(), openchangedb_get_MailboxReplica(), openchangedb_get_mapistoreURI(), openchangedb_get_MAPIStoreURIs(), openchangedb_get_new_changeNumber(), openchangedb_get_SpecialFolderID(), openchangedb_get_SystemFolderID(), openchangedb_set_folder_properties(), openchangedb_set_locale(), openchangedb_set_mapistoreURI(), openchangedb_set_ReceiveFolder(), openchangedb_set_system_idx(), openchangedb_transaction_commit(), openchangedb_transaction_start(), PROVISIONING_SPECIAL_FOLDERS_SIZE, emsmdbp_special_folder::role, special_folders, emsmdbp_context::userLanguage, and emsmdbp_context::username.
Referenced by RopLogon_Mailbox().
_PUBLIC_ enum MAPISTATUS emsmdbp_mailbox_provision_public_freebusy | ( | struct emsmdbp_context * | emsmdbp_ctx, |
const char * | EssDN | ||
) |
Provision the Local FreeBusy message for the user in Public Folder store.
emsmdbp_ctx | pointer to the emsmdbp context |
EssDN | pointer to enterprise distinguished name (X500 DN) |
References EMSMDBP_PF_FREEBUSY, get_new_public_folder_id(), emsmdbp_context::oc_ctx, openchangedb_create_folder(), openchangedb_get_fid_by_name(), openchangedb_get_mid_by_subject(), openchangedb_get_new_changeNumber(), openchangedb_get_PublicFolderID(), openchangedb_message_create(), openchangedb_message_save(), openchangedb_message_set_properties(), and emsmdbp_context::username.
Referenced by RopLogon_Mailbox().
|
static |
References emsmdbp_get_folders_names(), and PROVISIONING_FOLDERS_SIZE.
Referenced by emsmdbp_mailbox_provision().
|
static |
|
static |
References emsmdbp_get_special_folders(), emsmdbp_special_folder::name, and PROVISIONING_SPECIAL_FOLDERS_SIZE.
Referenced by emsmdbp_mailbox_provision().
![]() ![]() ![]() |
This content is licensed under the Creative Commons Attribution ShareAlike License v. 3.0: http://creativecommons.org/licenses/by-sa/3.0/ |