#pragma once
//////////////////////////////////////////////////////////////////////////
//																		//
//					  Active Directory 插件接口函数						//
//								（v1.0）								//
//																		//
//////////////////////////////////////////////////////////////////////////


// 枚举用户的回调函数，ADPluginEnumUsers函数中枚举到一个用户即调用一次本回调函数，把枚举到
// 的用户名称、E-mail和部门传给调用者。
typedef BOOL (*ENUMUSERCALLBACK)(LPCTSTR lpszUser, LPCTSTR lpszEmail, LPCTSTR lpszDepts);

// 枚举部门的回调函数，ADPluginEnumDepts函数中枚举到一个部门即调用一次本回调函数，把枚举到
// 的部门名称传给调用者。
typedef BOOL (*ENUMDEPTCALLBACK)(LPCTSTR lpszDept);

// 枚举用户。
void ADPluginEnumUsers(ENUMUSERCALLBACK pfnEnumUserCallback);

// 枚举部门。
void ADPluginEnumDepts(ENUMDEPTCALLBACK pfnEnumDeptCallback);

// 验证用户。
BOOL ADPluginUserValidate(LPCTSTR lpszUser, LPCTSTR lpszPassword);