summaryrefslogtreecommitdiffstats
path: root/daemons/ipa-kdb/ipa_kdb.h
diff options
context:
space:
mode:
authorSimo Sorce <ssorce@redhat.com>2011-06-10 14:35:46 -0400
committerSimo Sorce <ssorce@redhat.com>2011-08-26 08:24:49 -0400
commit46c803a08d691c067d985791f2c98467219a8adc (patch)
tree30fc7957331e543aa67592d597f4a87026aaed78 /daemons/ipa-kdb/ipa_kdb.h
parentb5ba0f7f4879d9312aa76a2097f614d1d3271467 (diff)
downloadfreeipa-46c803a08d691c067d985791f2c98467219a8adc.tar.gz
freeipa-46c803a08d691c067d985791f2c98467219a8adc.tar.xz
freeipa-46c803a08d691c067d985791f2c98467219a8adc.zip
ipa-kdb: add common utility ldap wrapper functions
Diffstat (limited to 'daemons/ipa-kdb/ipa_kdb.h')
-rw-r--r--daemons/ipa-kdb/ipa_kdb.h31
1 files changed, 31 insertions, 0 deletions
diff --git a/daemons/ipa-kdb/ipa_kdb.h b/daemons/ipa-kdb/ipa_kdb.h
index 008779f7c..760508d6d 100644
--- a/daemons/ipa-kdb/ipa_kdb.h
+++ b/daemons/ipa-kdb/ipa_kdb.h
@@ -42,3 +42,34 @@ struct ipadb_context {
struct ipadb_context *ipadb_get_context(krb5_context kcontext);
int ipadb_get_connection(struct ipadb_context *ipactx);
+
+/* COMMON LDAP FUNCTIONS */
+char *ipadb_filter_escape(const char *input, bool star);
+krb5_error_code ipadb_simple_search(struct ipadb_context *ipactx,
+ char *basedn, int scope,
+ char *filter, char **attrs,
+ LDAPMessage **res);
+krb5_error_code ipadb_simple_delete(struct ipadb_context *ipactx, char *dn);
+krb5_error_code ipadb_simple_add(struct ipadb_context *ipactx,
+ char *dn, LDAPMod **mods);
+krb5_error_code ipadb_simple_modify(struct ipadb_context *ipactx,
+ char *dn, LDAPMod **mods);
+krb5_error_code ipadb_simple_delete_val(struct ipadb_context *ipactx,
+ char *dn, char *attr, char *value);
+
+int ipadb_ldap_attr_to_int(LDAP *lcontext, LDAPMessage *le,
+ char *attrname, int *result);
+int ipadb_ldap_attr_to_uint32(LDAP *lcontext, LDAPMessage *le,
+ char *attrname, uint32_t *result);
+int ipadb_ldap_attr_to_str(LDAP *lcontext, LDAPMessage *le,
+ char *attrname, char **result);
+int ipadb_ldap_attr_to_strlist(LDAP *lcontext, LDAPMessage *le,
+ char *attrname, char ***result);
+int ipadb_ldap_attr_to_bool(LDAP *lcontext, LDAPMessage *le,
+ char *attrname, bool *result);
+int ipadb_ldap_attr_to_time_t(LDAP *lcontext, LDAPMessage *le,
+ char *attrname, time_t *result);
+
+int ipadb_ldap_attr_has_value(LDAP *lcontext, LDAPMessage *le,
+ char *attrname, char *value);
+