summaryrefslogtreecommitdiffstats
path: root/src/libtdeldap.h
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2012-06-13 20:56:24 -0500
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2012-06-13 20:56:24 -0500
commit3ba9d6e8524284bd52d302682575fba68a74ad17 (patch)
tree22ed1616fe0c25917d791c69274e3b7f7b3b44e9 /src/libtdeldap.h
parent7982753d889ecbe324089acee31d825a0ed56024 (diff)
downloadlibtdeldap-3ba9d6e8524284bd52d302682575fba68a74ad17.tar.gz
libtdeldap-3ba9d6e8524284bd52d302682575fba68a74ad17.zip
Add service handling routines
Diffstat (limited to 'src/libtdeldap.h')
-rw-r--r--src/libtdeldap.h28
1 files changed, 27 insertions, 1 deletions
diff --git a/src/libtdeldap.h b/src/libtdeldap.h
index 35d3c27..341dff9 100644
--- a/src/libtdeldap.h
+++ b/src/libtdeldap.h
@@ -81,6 +81,7 @@ enum LDAPKRB5Flags {
KRB5_ACTIVE_DEFAULT = KRB5_FORWARDABLE | KRB5_RENEWABLE | KRB5_CLIENT | KRB5_CHANGE_PW,
KRB5_DISABLED_ACCOUNT = KRB5_FORWARDABLE | KRB5_SERVER | KRB5_INVALID | KRB5_REQUIRE_PREAUTH | KRB5_REQUIRE_HWAUTH | KRB5_OK_AS_DELEGATE | KRB5_USER_TO_USER,
KRB5_MACHINE_ACCOUNT_DEFAULT = KRB5_FORWARDABLE | KRB5_PROXIABLE | KRB5_RENEWABLE | KRB5_POSTDATE | KRB5_SERVER | KRB5_CLIENT,
+ KRB5_SERVICE_PRINCIPAL_DEFAULT = KRB5_FORWARDABLE | KRB5_PROXIABLE | KRB5_RENEWABLE | KRB5_POSTDATE | KRB5_SERVER | KRB5_CLIENT,
KRB5_FLAG_MAX = 0x80000000
};
@@ -140,6 +141,7 @@ class LDAPCredentials
TQCString password;
TQString realm;
bool use_tls;
+ bool use_gssapi;
TQString service;
};
@@ -295,7 +297,25 @@ class LDAPMachineInfo
TQString name;
bool tde_builtin_account;
- LDAPKRB5Flags status;
+ LDAPKRB5Flags status; // Default is 126 [KRB5_MACHINE_ACCOUNT_DEFAULT]
+};
+
+class LDAPServiceInfo
+{
+ public:
+ LDAPServiceInfo();
+ ~LDAPServiceInfo();
+
+ public:
+ bool informationValid;
+ TQString distinguishedName;
+ TQString creatorsName;
+
+ TQString name;
+ TQString machine;
+ TQString machine_dn;
+ bool tde_builtin_account;
+ LDAPKRB5Flags status; // Default is 126 [KRB5_SERVICE_PRINCIPAL_DEFAULT]
};
class LDAPTDEBuiltinsInfo
@@ -338,6 +358,7 @@ class KerberosTicketInfo
typedef TQValueList<LDAPUserInfo> LDAPUserInfoList;
typedef TQValueList<LDAPGroupInfo> LDAPGroupInfoList;
typedef TQValueList<LDAPMachineInfo> LDAPMachineInfoList;
+typedef TQValueList<LDAPServiceInfo> LDAPServiceInfoList;
typedef TQValueList<KerberosTicketInfo> KerberosTicketInfoList;
class LDAPManager : public TQObject {
@@ -355,15 +376,19 @@ class LDAPManager : public TQObject {
LDAPUserInfoList users(int* retcode=0);
LDAPGroupInfoList groups(int* retcode=0);
LDAPMachineInfoList machines(int* retcode=0);
+ LDAPServiceInfoList machineServices(TQString machine_dn, int* retcode=0);
+ LDAPServiceInfoList services(int* retcode=0);
LDAPUserInfo getUserByDistinguishedName(TQString dn);
LDAPGroupInfo getGroupByDistinguishedName(TQString dn, TQString *errstr=0);
int updateUserInfo(LDAPUserInfo user);
int updateGroupInfo(LDAPGroupInfo group);
int addUserInfo(LDAPUserInfo user);
int addGroupInfo(LDAPGroupInfo group);
+ int addServiceInfo(LDAPServiceInfo service, TQString *errstr=0);
int deleteUserInfo(LDAPUserInfo user);
int deleteGroupInfo(LDAPGroupInfo group);
int deleteMachineInfo(LDAPMachineInfo machine);
+ int deleteServiceInfo(LDAPServiceInfo service);
LDAPCredentials currentLDAPCredentials();
@@ -400,6 +425,7 @@ class LDAPManager : public TQObject {
LDAPUserInfo parseLDAPUserRecord(LDAPMessage* entry);
LDAPGroupInfo parseLDAPGroupRecord(LDAPMessage* entry);
LDAPMachineInfo parseLDAPMachineRecord(LDAPMessage* entry);
+ LDAPServiceInfo parseLDAPMachineServiceRecord(LDAPMessage* entry);
LDAPTDEBuiltinsInfo parseLDAPTDEBuiltinsRecord(LDAPMessage* entry);
private: