diff options
author | Simo Sorce <ssorce@redhat.com> | 2011-06-10 14:35:46 -0400 |
---|---|---|
committer | Simo Sorce <ssorce@redhat.com> | 2011-08-26 08:24:49 -0400 |
commit | 46c803a08d691c067d985791f2c98467219a8adc (patch) | |
tree | 30fc7957331e543aa67592d597f4a87026aaed78 /daemons/ipa-kdb/ipa_kdb.h | |
parent | b5ba0f7f4879d9312aa76a2097f614d1d3271467 (diff) | |
download | freeipa-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.h | 31 |
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); + |