Structures for MAPI admin functions. More...
#include <sys/types.h>
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include <unistd.h>
#include <errno.h>
#include <string.h>
#include <stdint.h>
#include <talloc.h>
#include <ldb.h>
#include <tevent.h>
#include "libmapi/libmapi.h"
Data Structures | |
struct | mapiadmin_ctx |
MAPI admin function context. More... | |
struct | test_join |
Macros | |
#define | _GNU_SOURCE 1 |
#define | _PRINTF_ATTRIBUTE(a1, a2) PRINTF_ATTRIBUTE(a1, a2) |
#define | _PRINTF_ATTRIBUTE(a1, a2) |
#define | DEFAULT_PROFDB_PATH "%s/.openchange/profiles.ldb" |
#define | MAPIADMIN_DEBUG_STR "[%s:%d]: %s %s\n", __FUNCTION__, __LINE__ |
#define | MAX(p, q) (((p) >= (q)) ? (p) : (q)) |
Functions | |
void | arcfour_crypt_blob (uint8_t *, int, const DATA_BLOB *) |
__BEGIN_DECLS struct ldb_dn struct dom_sid * | dom_sid_add_rid (TALLOC_CTX *, const struct dom_sid *, uint32_t) |
bool | encode_pw_buffer (uint8_t buffer[516], const char *, int) |
struct mapiadmin_ctx * | mapiadmin_init (struct mapi_session *) |
Create and initialise a mapiadmin_ctx structure. More... | |
enum MAPISTATUS | mapiadmin_release (struct mapiadmin_ctx *) |
Clean up a mapiadmin_ctx structure. More... | |
enum MAPISTATUS | mapiadmin_user_add (struct mapiadmin_ctx *) |
Add a user to Active Directory. More... | |
enum MAPISTATUS | mapiadmin_user_del (struct mapiadmin_ctx *) |
Delete a user from Active Directory. More... | |
enum MAPISTATUS | mapiadmin_user_extend (struct mapiadmin_ctx *) |
Extend user attributes to be Exchange user. More... | |
enum MAPISTATUS | mapiadmin_user_mod (struct mapiadmin_ctx *) |
__BEGIN_DECLS struct ldb_dn * | samdb_search_dn (struct ldb_context *, TALLOC_CTX *, struct ldb_dn *, const char *,...) _PRINTF_ATTRIBUTE(4 |
Structures for MAPI admin functions.
#define _GNU_SOURCE 1 |
#define _PRINTF_ATTRIBUTE | ( | a1, | |
a2 | |||
) | PRINTF_ATTRIBUTE(a1, a2) |
#define _PRINTF_ATTRIBUTE | ( | a1, | |
a2 | |||
) |
#define DEFAULT_PROFDB_PATH "%s/.openchange/profiles.ldb" |
#define MAPIADMIN_DEBUG_STR "[%s:%d]: %s %s\n", __FUNCTION__, __LINE__ |
Referenced by mapiadmin_user_extend().
#define MAX | ( | p, | |
q | |||
) | (((p) >= (q)) ? (p) : (q)) |
Referenced by mapiadmin_user_add().
void arcfour_crypt_blob | ( | uint8_t * | , |
int | , | ||
const DATA_BLOB * | |||
) |
Referenced by mapiadmin_user_add().
__BEGIN_DECLS struct ldb_dn struct dom_sid* dom_sid_add_rid | ( | TALLOC_CTX * | , |
const struct dom_sid * | , | ||
uint32_t | |||
) |
Referenced by mapiadmin_user_add().
bool encode_pw_buffer | ( | uint8_t | buffer[516], |
const char * | , | ||
int | |||
) |
Referenced by mapiadmin_user_add().
struct mapiadmin_ctx* mapiadmin_init | ( | struct mapi_session * | session) |
Create and initialise a mapiadmin_ctx structure.
You should use mapiadmin_release to clean up the mapiadmin_ctx structure when done.
References mapiadmin_ctx::binding, and mapiadmin_ctx::session.
enum MAPISTATUS mapiadmin_release | ( | struct mapiadmin_ctx * | mapiadmin_ctx) |
Clean up a mapiadmin_ctx structure.
The structure is assumed to have been allocated using mapiadmin_init() or equivalent code.
enum MAPISTATUS mapiadmin_user_add | ( | struct mapiadmin_ctx * | ) |
Add a user to Active Directory.
References arcfour_crypt_blob(), mapiadmin_ctx::comment, mapiadmin_ctx::description, test_join::dom_sid, dom_sid_add_rid(), encode_pw_buffer(), mapiadmin_ctx::fullname, mapiadmin_ctx::handle, mapiadmin_user_del(), mapiadmin_user_extend(), MAX, test_join::p, mapiadmin_ctx::password, mapiadmin_ctx::session, mapiadmin_ctx::user_ctx, test_join::user_handle, test_join::user_sid, and mapiadmin_ctx::username.
enum MAPISTATUS mapiadmin_user_del | ( | struct mapiadmin_ctx * | ) |
Delete a user from Active Directory.
References mapiadmin_ctx::handle, test_join::p, mapiadmin_ctx::user_ctx, and mapiadmin_ctx::username.
Referenced by mapiadmin_user_add().
enum MAPISTATUS mapiadmin_user_extend | ( | struct mapiadmin_ctx * | ) |
Extend user attributes to be Exchange user.
References MAPIADMIN_DEBUG_STR, samdb_search_dn(), mapiadmin_ctx::session, mapiadmin_ctx::user_ctx, test_join::user_sid, and mapiadmin_ctx::username.
Referenced by mapiadmin_user_add().
enum MAPISTATUS mapiadmin_user_mod | ( | struct mapiadmin_ctx * | ) |
__BEGIN_DECLS struct ldb_dn* samdb_search_dn | ( | struct ldb_context * | , |
TALLOC_CTX * | , | ||
struct ldb_dn * | , | ||
const char * | , | ||
... | |||
) |
Referenced by mapiadmin_user_extend().
![]() ![]() ![]() |
This content is licensed under the Creative Commons Attribution ShareAlike License v. 3.0: http://creativecommons.org/licenses/by-sa/3.0/ |