Astra Linux Directory Client Core API  1.7.0
 Указатель Классы Пространства имен Файлы Функции Переменные Определения типов Перечисления Элементы перечислений Макросы Группы Страницы
#include <string>
#include "ALDCore.h"
#include "ldap-wrapper.h"
#include "kadm5-wrapper.h"
#include "ald-config.h"
#include "ald-rpc.h"
#include <stdint.h>

См. исходные тексты.

Классы

class  ALD::CALDConnection
 
class  ALD::CALDUserNameValidator
 
class  ALD::CALDGroupNameValidator
 
class  ALD::CALDServiceNameValidator
 
class  ALD::CALDPathValidator
 
class  ALD::CALDGecosValidator
 
class  ALD::CALDPolicyNameValidator
 
class  ALD::CALDPolicyLifeTimeValidator
 
class  ALD::CALDTaskHistoryValidator
 
class  ALD::CALDHiddenPrincipalsValidator
 
class  ALD::CALDHostNameValidator
 
class  ALD::CALDDomainNameValidator
 
class  ALD::CALDDNSNameValidator
 
class  ALD::CALDHostFlagsValidator
 
class  ALD::CALDSvcGroupNameValidator
 
class  ALD::CALDHostGroupNameValidator
 
class  ALD::CALDLogTemplateValidator
 
class  ALD::CALDDocNameValidator
 

Пространства имен

 ALD
 

Макросы

#define ALD_RE_USER_NAME   "[a-z][a-z0-9\\_\\-]*"
 
#define ALD_RE_GROUP_NAME   "[A-Za-z][A-Za-z0-9\\_\\-\\ ]*"
 
#define ALD_RE_SERVICE_NAME   "[A-Za-z][A-Za-z0-9\\_\\-]*"
 
#define ALD_RE_PATH   "[\\/0-9A-Za-zА-Яа-я\\.\\-\\_]+"
 
#define ALD_RE_UTF8_GECOS_FIELD   "[0-9A-Za-zА-Яа-рс-я \\-\\.\\+\\(\\)\\_]*"
 
#define ALD_RE_GECOS_FIELD   "[0-9A-Za-z \\-\\.\\+\\(\\)\\_]*"
 
#define ALD_RE_POLICY_NAME   "[0-9A-Za-z\\_\\-]+"
 
#define ALD_RE_LIFETIME   "\\d+(d|h|m|s)"
 
#define ALD_RE_HOST_NAME   "[a-z0-9\\-][\\.a-z0-9\\-]*"
 
#define ALD_RE_HOST_DOMAIN_NAME   "[a-z0-9\\-]+%s"
 
#define ALD_RE_DOMAIN_NAME   "^\\.[a-z0-9\\-][a-z0-9\\-\\.]*"
 
#define ALD_RE_HOST_FLAGS   "\\[P?C?F?D?\\]"
 
#define ALD_RE_SGROUP_NAME   "[A-Za-z][A-Za-z0-9\\_\\-\\ ]*"
 
#define ALD_RE_HGROUP_NAME   "[A-Za-z][A-Za-z0-9\\_\\-\\ ]*"
 
#define ALD_VALIDATOR_LOG_TEMPLATE   "LogTemplate"
 
Флаги соединения
#define ALD_CI_LDAP   0x1
 
#define ALD_CI_KADM5   0x2
 
#define ALD_CI_RPC   0x4
 
#define ALD_CI_GSS   0x100
 
#define ALD_CI_LAZY   0x200
 
#define ALD_CI_CACHE   0x400
 
#define ALD_CI_ALL   ALD_CI_LDAP|ALD_CI_KADM5|ALD_CI_RPC|ALD_CI_GSS|ALD_CI_LAZY
 
#define ALD_CI_LOCAL   ALD_CI_LDAP|ALD_CI_KADM5
 
#define ALD_CI_CLIENT   ALD_CI_LDAP|ALD_CI_RPC|ALD_CI_GSS|ALD_CI_LAZY
 

Определения типов

typedef shared_ptr
< CALDConnection
ALD::CALDConnectionPtr
 

Функции

void ALD::RegisterLdapSchema (IALDCore &Core, const string &schema)
 
IALDCoreALD::AllocateCore ()
 
void ALD::FreeCore (IALDCore *&ICore)
 
bool ALD::LoginAdmin (IALDCore &Core, const string &admin="")
 
bool ALD::LoginAdmin (IALDCore &Core, const string &admin, const string &pwd)
 
void ALD::Logout (IALDCore &Core, bool keep_cred=false)
 
void ALD::InitCore (IALDCore &Core)
 
void ALD::RegisterBaseValidators (IALDCore &Core)
 
bool ALD::UnparseHostName (IALDCore &Core, const string &host, const string &domain, string &fullname, string *perror)
 
bool ALD::ParseHostName (IALDCore &Core, const string &fullname, string &host, string &domain, string *perror)
 
void ALD::UpdatePrincipalInKeytab (CALDKadm5ConnPtr krb5, const string &keytab, const string &name, bool create)
 
string ALD::HostPrincipal (const string &name)
 
string ALD::UserToDN (const string &user, const string &base)
 
string ALD::DNToUser (const string &dn)
 
void ALD::CheckValidExits (const string &command, const int exitcode, ald_int_list &validlist)
 
void ALD::RestartNSCD ()
 
void ALD::InvalidateNSCD ()
 
void ALD::SetAllowTix (CALDKadm5ConnPtr &krb5, bool AllowTix)
 
void ALD::UpdateLifetimes (IALDCore &Core, CALDKadm5ConnPtr &krb5)
 
void ALD::FilterUserPrincipals (IALDCore &Core, ald_string_list &list)
 
void ALD::CheckConfigured (IALDCore &Core)
 
void ALD::CheckCompatibility (IALDCore &Core, const string &version)
 
string ALD::CannonicalizePrincipalName (IALDCore &Core, const string &name, const string &domain)
 
string ALD::SvcPrincipal (IALDCore &Core, const string &svc, const string &host="", const string &realm="")
 
string ALD::LifetimeToStr (unsigned int ltime)
 
void ALD::UseCommonCommand (IALDCore &Core, const string &cmd)
 
bool ALD::GetActiveALDServerName (IALDCore &Core, const string &domain, string &dc)
 
Функции получения интерфейсов
CALDLdapConnPtr ALD::GetLdapConnection (IALDCore &Core, ALDAuthType at, unsigned int ci_flags)
 
CALDKadm5ConnPtr ALD::GetKadm5Connection (IALDCore &Core, ALDAuthType at, unsigned int ci_flags)
 
CALDRpcConnPtr ALD::GetRpcConnection (IALDCore &Core, ALDAuthType at, unsigned int ci_flags)
 
CALDConfigPtr ALD::GetConfig (IALDCore &Core)
 
Исполнение внешних команд
int ALD::ExecCommand (const string &command, bool infinite=false)
 
int ALD::ExecCommandOut (const string &command, ald_string_list &outlist, bool infinite=false)
 
int ALD::ExecCommandInOut (const string &command, ald_string_list &outlist, const ald_string_list &inlist, bool infinite=false)
 
Работа с клиентской точкой монтирования домашних каталогов
void ALD::CreateClientMountPoint (IALDCore &Core)
 
void ALD::UmountClientMountPoint (IALDCore &Core, const string &mode)
 
void ALD::MountClientMountPoint (IALDCore &Core, const string &mode)
 
Функции сериализации объектов Kerberos
string ALD::princ2str (const CALDKrbPrincipalPtr &princ)
 
CALDKrbPrincipalPtr ALD::str2princ (const string &name, const string &body)
 
string ALD::policy2str (const CALDKrbPolicyPtr &policy)
 
CALDKrbPolicyPtr ALD::str2policy (const string &name, const string &body)
 

Управление службами

enum  ALDServiceOperation {
  asoStop, asoStart, asoRestart, asoInstall,
  asoRemove, asoReload
}
 
int ALD::ManageService (const string &service, ALDServiceOperation op, bool ignore=false)
 
int ALD::ManageService (const string &service, const string &op, bool ignore=false)
 

Подробное описание

Объявление вспомогательных типов и функций работы с ядром Astra Linux Directory.

Макросы

#define ALD_RE_DOMAIN_NAME   "^\\.[a-z0-9\\-][a-z0-9\\-\\.]*"

Регулярное выражение имени домена

#define ALD_RE_GECOS_FIELD   "[0-9A-Za-z \\-\\.\\+\\(\\)\\_]*"

Регулярное выражение GECOS.

#define ALD_RE_GROUP_NAME   "[A-Za-z][A-Za-z0-9\\_\\-\\ ]*"

Регулярное выражение имени группы

#define ALD_RE_HGROUP_NAME   "[A-Za-z][A-Za-z0-9\\_\\-\\ ]*"

Регулярное выражение имени группы компьютеров

#define ALD_RE_HOST_DOMAIN_NAME   "[a-z0-9\\-]+%s"

Регулярное выражение имени домена

#define ALD_RE_HOST_FLAGS   "\\[P?C?F?D?\\]"

Регулярное выражение флагов компьютера

#define ALD_RE_HOST_NAME   "[a-z0-9\\-][\\.a-z0-9\\-]*"

Регулярное выражение имени компьютера

#define ALD_RE_LIFETIME   "\\d+(d|h|m|s)"

Регулярное выражение времени жизни

#define ALD_RE_PATH   "[\\/0-9A-Za-zА-Яа-я\\.\\-\\_]+"

Регулярное выражение пути ФС

#define ALD_RE_POLICY_NAME   "[0-9A-Za-z\\_\\-]+"

Регулярное выражение имени политики

#define ALD_RE_SERVICE_NAME   "[A-Za-z][A-Za-z0-9\\_\\-]*"

Регулярное выражение имени сервиса

#define ALD_RE_SGROUP_NAME   "[A-Za-z][A-Za-z0-9\\_\\-\\ ]*"

Регулярное выражение имени группы сервисов

#define ALD_RE_USER_NAME   "[a-z][a-z0-9\\_\\-]*"

Регулярное выражение имени пользователя

#define ALD_RE_UTF8_GECOS_FIELD   "[0-9A-Za-zА-Яа-рс-я \\-\\.\\+\\(\\)\\_]*"

Регулярное выражение RU GECOS.

#define ALD_VALIDATOR_LOG_TEMPLATE   "LogTemplate"

Регулярное выражение шаблона протоколирования