summaryrefslogtreecommitdiffstats
path: root/src/db
diff options
context:
space:
mode:
authorJakub Hrozek <jhrozek@redhat.com>2012-09-21 23:41:42 +0200
committerJakub Hrozek <jhrozek@redhat.com>2012-09-24 18:23:15 +0200
commit95f5e7963a36b7b68859ce91ae4b232088bbaa09 (patch)
treeb5216b8dc726d1539d9960a43957cb9da2e1ebd1 /src/db
parent77f445dbaecc8e792e1ad42e3742800ad141bee0 (diff)
downloadsssd-95f5e7963a36b7b68859ce91ae4b232088bbaa09.tar.gz
sssd-95f5e7963a36b7b68859ce91ae4b232088bbaa09.tar.xz
sssd-95f5e7963a36b7b68859ce91ae4b232088bbaa09.zip
SYSDB: Remove unnecessary domain parameter from several sysdb calls
The domain can be read from the sysdb object. Removing the domain string makes the API more self-contained.
Diffstat (limited to 'src/db')
-rw-r--r--src/db/sysdb.c33
-rw-r--r--src/db/sysdb.h17
-rw-r--r--src/db/sysdb_autofs.c3
-rw-r--r--src/db/sysdb_ops.c78
-rw-r--r--src/db/sysdb_sudo.c3
5 files changed, 58 insertions, 76 deletions
diff --git a/src/db/sysdb.c b/src/db/sysdb.c
index e949cafdc..1e5e8ada1 100644
--- a/src/db/sysdb.c
+++ b/src/db/sysdb.c
@@ -93,7 +93,6 @@ errno_t sysdb_dn_sanitize(TALLOC_CTX *mem_ctx, const char *input,
struct ldb_dn *sysdb_custom_subtree_dn(struct sysdb_ctx *sysdb,
TALLOC_CTX *mem_ctx,
- const char *domain,
const char *subtree_name)
{
errno_t ret;
@@ -111,7 +110,7 @@ struct ldb_dn *sysdb_custom_subtree_dn(struct sysdb_ctx *sysdb,
}
dn = ldb_dn_new_fmt(tmp_ctx, sysdb->ldb, SYSDB_TMPL_CUSTOM_SUBTREE,
- clean_subtree, domain);
+ clean_subtree, sysdb->domain->name);
if (dn) {
talloc_steal(mem_ctx, dn);
}
@@ -119,9 +118,10 @@ struct ldb_dn *sysdb_custom_subtree_dn(struct sysdb_ctx *sysdb,
return dn;
}
+
struct ldb_dn *sysdb_custom_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx,
- const char *domain, const char *object_name,
- const char *subtree_name)
+ const char *object_name,
+ const char *subtree_name)
{
errno_t ret;
TALLOC_CTX *tmp_ctx;
@@ -145,7 +145,7 @@ struct ldb_dn *sysdb_custom_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx,
}
dn = ldb_dn_new_fmt(mem_ctx, sysdb->ldb, SYSDB_TMPL_CUSTOM, clean_name,
- clean_subtree, domain);
+ clean_subtree, sysdb->domain->name);
done:
talloc_free(tmp_ctx);
@@ -153,7 +153,7 @@ done:
}
struct ldb_dn *sysdb_user_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx,
- const char *domain, const char *name)
+ const char *name)
{
errno_t ret;
char *clean_name;
@@ -165,14 +165,14 @@ struct ldb_dn *sysdb_user_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx,
}
dn = ldb_dn_new_fmt(mem_ctx, sysdb->ldb, SYSDB_TMPL_USER,
- clean_name, domain);
+ clean_name, sysdb->domain->name);
talloc_free(clean_name);
return dn;
}
struct ldb_dn *sysdb_group_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx,
- const char *domain, const char *name)
+ const char *name)
{
errno_t ret;
char *clean_name;
@@ -184,14 +184,14 @@ struct ldb_dn *sysdb_group_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx,
}
dn = ldb_dn_new_fmt(mem_ctx, sysdb->ldb, SYSDB_TMPL_GROUP,
- clean_name, domain);
+ clean_name, sysdb->domain->name);
talloc_free(clean_name);
return dn;
}
struct ldb_dn *sysdb_netgroup_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx,
- const char *domain, const char *name)
+ const char *name)
{
errno_t ret;
char *clean_name;
@@ -203,16 +203,16 @@ struct ldb_dn *sysdb_netgroup_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx,
}
dn = ldb_dn_new_fmt(mem_ctx, sysdb->ldb, SYSDB_TMPL_NETGROUP,
- clean_name, domain);
+ clean_name, sysdb->domain->name);
talloc_free(clean_name);
return dn;
}
-struct ldb_dn *sysdb_netgroup_base_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx,
- const char *domain)
+struct ldb_dn *sysdb_netgroup_base_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx)
{
- return ldb_dn_new_fmt(mem_ctx, sysdb->ldb, SYSDB_TMPL_NETGROUP_BASE, domain);
+ return ldb_dn_new_fmt(mem_ctx, sysdb->ldb, SYSDB_TMPL_NETGROUP_BASE,
+ sysdb->domain->name);
}
errno_t sysdb_get_rdn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx,
@@ -279,10 +279,9 @@ errno_t sysdb_group_dn_name(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx,
return sysdb_get_rdn(sysdb, mem_ctx, _dn, NULL, _name);
}
-struct ldb_dn *sysdb_domain_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx,
- const char *domain)
+struct ldb_dn *sysdb_domain_dn(struct sysdb_ctx *sysdb, TALLOC_CTX *mem_ctx)
{
- return ldb_dn_new_fmt(mem_ctx, sysdb->ldb, SYSDB_DOM_BASE, domain);
+ return ldb_dn_new_fmt(mem_ctx, sysdb->ldb, SYSDB_DOM_BASE, sysdb->domain->name);
}
struct ldb_context *sysdb_ctx_get_ldb(struct sysdb_ctx *sysdb)
diff --git a/src/db/sysdb.h b/src/db/sysdb.h
index f74fceec3..b53b9880f 100644
--- a/src/db/sysdb.h
+++ b/src/db/sysdb.h
@@ -319,22 +319,19 @@ int sysdb_error_to_errno(int ldberr);
errno_t sysdb_get_rdn(struct sysdb_ctx *sysdb, void *mem_ctx,
const char *_dn, char **_name, char **_val);
struct ldb_dn *sysdb_user_dn(struct sysdb_ctx *sysdb, void *mem_ctx,
- const char *domain, const char *name);
+ const char *name);
struct ldb_dn *sysdb_group_dn(struct sysdb_ctx *sysdb, void *mem_ctx,
- const char *domain, const char *name);
+ const char *name);
struct ldb_dn *sysdb_netgroup_dn(struct sysdb_ctx *sysdb, void *mem_ctx,
- const char *domain, const char *name);
-struct ldb_dn *sysdb_netgroup_base_dn(struct sysdb_ctx *sysdb, void *mem_ctx,
- const char *domain);
+ const char *name);
+struct ldb_dn *sysdb_netgroup_base_dn(struct sysdb_ctx *sysdb, void *mem_ctx);
errno_t sysdb_group_dn_name(struct sysdb_ctx *sysdb, void *mem_ctx,
const char *dn_str, char **name);
-struct ldb_dn *sysdb_domain_dn(struct sysdb_ctx *sysdb, void *mem_ctx,
- const char *domain);
+struct ldb_dn *sysdb_domain_dn(struct sysdb_ctx *sysdb, void *mem_ctx);
struct ldb_dn *sysdb_custom_dn(struct sysdb_ctx *sysdb, void *mem_ctx,
- const char *domain, const char *object_name,
- const char *subtree_name);
+ const char *object_name,
+ const char *subtree_name);
struct ldb_dn *sysdb_custom_subtree_dn(struct sysdb_ctx *sysdb, void *mem_ctx,
- const char *domain,
const char *subtree_name);
char *sysdb_user_strdn(TALLOC_CTX *mem_ctx,
diff --git a/src/db/sysdb_autofs.c b/src/db/sysdb_autofs.c
index bf4e9b172..c5ec4c8c6 100644
--- a/src/db/sysdb_autofs.c
+++ b/src/db/sysdb_autofs.c
@@ -31,8 +31,7 @@ sysdb_autofsmap_dn(TALLOC_CTX *mem_ctx,
struct sysdb_ctx *sysdb,
const char *map_name)
{
- return sysdb_custom_dn(sysdb, mem_ctx, sysdb->domain->name,
- map_name, AUTOFS_MAP_SUBDIR);
+ return sysdb_custom_dn(sysdb, mem_ctx, map_name, AUTOFS_MAP_SUBDIR);
}
static struct ldb_dn *
diff --git a/src/db/sysdb_ops.c b/src/db/sysdb_ops.c
index 52da27d3c..52f0cef54 100644
--- a/src/db/sysdb_ops.c
+++ b/src/db/sysdb_ops.c
@@ -217,7 +217,7 @@ int sysdb_search_user_by_name(TALLOC_CTX *mem_ctx,
return ENOMEM;
}
- basedn = sysdb_user_dn(sysdb, tmp_ctx, sysdb->domain->name, name);
+ basedn = sysdb_user_dn(sysdb, tmp_ctx, name);
if (!basedn) {
ret = ENOMEM;
goto done;
@@ -319,7 +319,7 @@ int sysdb_search_group_by_name(TALLOC_CTX *mem_ctx,
return ENOMEM;
}
- basedn = sysdb_group_dn(sysdb, tmp_ctx, sysdb->domain->name, name);
+ basedn = sysdb_group_dn(sysdb, tmp_ctx, name);
if (!basedn) {
ret = ENOMEM;
goto done;
@@ -421,7 +421,7 @@ int sysdb_search_netgroup_by_name(TALLOC_CTX *mem_ctx,
return ENOMEM;
}
- basedn = sysdb_netgroup_dn(sysdb, tmp_ctx, sysdb->domain->name, name);
+ basedn = sysdb_netgroup_dn(sysdb, tmp_ctx, name);
if (!basedn) {
ret = ENOMEM;
goto done;
@@ -525,7 +525,7 @@ int sysdb_set_user_attr(struct sysdb_ctx *sysdb,
return ENOMEM;
}
- dn = sysdb_user_dn(sysdb, tmp_ctx, sysdb->domain->name, name);
+ dn = sysdb_user_dn(sysdb, tmp_ctx, name);
if (!dn) {
ret = ENOMEM;
goto done;
@@ -560,7 +560,7 @@ int sysdb_set_group_attr(struct sysdb_ctx *sysdb,
goto done;
}
- dn = sysdb_group_dn(sysdb, tmp_ctx, sysdb->domain->name, name);
+ dn = sysdb_group_dn(sysdb, tmp_ctx, name);
if (!dn) {
ret = ENOMEM;
goto done;
@@ -593,7 +593,7 @@ int sysdb_set_netgroup_attr(struct sysdb_ctx *sysdb,
return ENOMEM;
}
- dn = sysdb_netgroup_dn(sysdb, tmp_ctx, sysdb->domain->name, name);
+ dn = sysdb_netgroup_dn(sysdb, tmp_ctx, name);
if (!dn) {
ret = ENOMEM;
goto done;
@@ -631,7 +631,7 @@ int sysdb_get_new_id(struct sysdb_ctx *sysdb,
return ENOMEM;
}
- base_dn = sysdb_domain_dn(sysdb, tmp_ctx, domain->name);
+ base_dn = sysdb_domain_dn(sysdb, tmp_ctx);
if (!base_dn) {
talloc_zfree(tmp_ctx);
return ENOMEM;
@@ -797,7 +797,7 @@ int sysdb_add_basic_user(struct sysdb_ctx *sysdb,
}
/* user dn */
- msg->dn = sysdb_user_dn(sysdb, msg, sysdb->domain->name, name);
+ msg->dn = sysdb_user_dn(sysdb, msg, name);
if (!msg->dn) {
ERROR_OUT(ret, ENOMEM, done);
}
@@ -1011,7 +1011,7 @@ int sysdb_add_user(struct sysdb_ctx *sysdb,
goto done;
}
- tmpdn = sysdb_user_dn(sysdb, tmp_ctx, sysdb->domain->name, name);
+ tmpdn = sysdb_user_dn(sysdb, tmp_ctx, name);
if (!tmpdn) {
ERROR_OUT(ret, ENOMEM, done);
}
@@ -1117,7 +1117,7 @@ int sysdb_add_basic_group(struct sysdb_ctx *sysdb,
}
/* group dn */
- msg->dn = sysdb_group_dn(sysdb, msg, sysdb->domain->name, name);
+ msg->dn = sysdb_group_dn(sysdb, msg, name);
if (!msg->dn) {
ERROR_OUT(ret, ENOMEM, done);
}
@@ -1375,7 +1375,7 @@ int sysdb_add_basic_netgroup(struct sysdb_ctx *sysdb,
}
/* netgroup dn */
- msg->dn = sysdb_netgroup_dn(sysdb, msg, sysdb->domain->name, name);
+ msg->dn = sysdb_netgroup_dn(sysdb, msg, name);
if (!msg->dn) {
ERROR_OUT(ret, ENOMEM, done);
}
@@ -1767,34 +1767,25 @@ sysdb_group_membership_mod(struct sysdb_ctx *sysdb,
}
if (type == SYSDB_MEMBER_USER) {
- member_dn = sysdb_user_dn(sysdb, tmp_ctx, sysdb->domain->name, member);
- if (!member_dn) {
- ret = ENOMEM;
- goto done;
- }
-
- group_dn = sysdb_group_dn(sysdb, tmp_ctx, sysdb->domain->name, group);
- if (!group_dn) {
- ret = ENOMEM;
- goto done;
- }
+ member_dn = sysdb_user_dn(sysdb, tmp_ctx, member);
} else if (type == SYSDB_MEMBER_GROUP) {
- member_dn = sysdb_group_dn(sysdb, tmp_ctx, sysdb->domain->name, member);
- if (!member_dn) {
- ret = ENOMEM;
- goto done;
- }
-
- group_dn = sysdb_group_dn(sysdb, tmp_ctx, sysdb->domain->name, group);
- if (!group_dn) {
- ret = ENOMEM;
- goto done;
- }
+ member_dn = sysdb_group_dn(sysdb, tmp_ctx, member);
} else {
ret = EINVAL;
goto done;
}
+ if (!member_dn) {
+ ret = ENOMEM;
+ goto done;
+ }
+
+ group_dn = sysdb_group_dn(sysdb, tmp_ctx, group);
+ if (!group_dn) {
+ ret = ENOMEM;
+ goto done;
+ }
+
ret = sysdb_mod_group_member(sysdb, member_dn, group_dn, modify_op);
done:
@@ -1900,8 +1891,7 @@ int sysdb_search_custom(TALLOC_CTX *mem_ctx,
return EINVAL;
}
- basedn = sysdb_custom_subtree_dn(sysdb, mem_ctx,
- sysdb->domain->name, subtree_name);
+ basedn = sysdb_custom_subtree_dn(sysdb, mem_ctx, subtree_name);
if (basedn == NULL) {
DEBUG(1, ("sysdb_custom_subtree_dn failed.\n"));
return ENOMEM;
@@ -1940,8 +1930,7 @@ int sysdb_search_custom_by_name(TALLOC_CTX *mem_ctx,
return ENOMEM;
}
- basedn = sysdb_custom_dn(sysdb, tmp_ctx,
- sysdb->domain->name, object_name, subtree_name);
+ basedn = sysdb_custom_dn(sysdb, tmp_ctx, object_name, subtree_name);
if (basedn == NULL) {
DEBUG(1, ("sysdb_custom_dn failed.\n"));
ret = ENOMEM;
@@ -2023,8 +2012,7 @@ int sysdb_store_custom(struct sysdb_ctx *sysdb,
goto done;
}
- msg->dn = sysdb_custom_dn(sysdb, tmp_ctx,
- sysdb->domain->name, object_name, subtree_name);
+ msg->dn = sysdb_custom_dn(sysdb, tmp_ctx, object_name, subtree_name);
if (!msg->dn) {
DEBUG(1, ("sysdb_custom_dn failed.\n"));
ret = ENOMEM;
@@ -2094,7 +2082,7 @@ int sysdb_delete_custom(struct sysdb_ctx *sysdb,
return ENOMEM;
}
- dn = sysdb_custom_dn(sysdb, tmp_ctx, sysdb->domain->name, object_name, subtree_name);
+ dn = sysdb_custom_dn(sysdb, tmp_ctx, object_name, subtree_name);
if (dn == NULL) {
DEBUG(1, ("sysdb_custom_dn failed.\n"));
ret = ENOMEM;
@@ -2985,7 +2973,7 @@ errno_t sysdb_mod_netgroup_tuple(struct sysdb_ctx *sysdb,
ERROR_OUT(ret, ENOMEM, done);
}
- msg->dn = sysdb_netgroup_dn(sysdb, msg, sysdb->domain->name, netgroup);
+ msg->dn = sysdb_netgroup_dn(sysdb, msg, netgroup);
if (!msg->dn) {
ERROR_OUT(ret, ENOMEM, done);
}
@@ -3043,7 +3031,7 @@ errno_t sysdb_mod_netgroup_member(struct sysdb_ctx *sysdb,
ERROR_OUT(ret, ENOMEM, done);
}
- msg->dn = sysdb_netgroup_dn(sysdb, msg, sysdb->domain->name, netgroup);
+ msg->dn = sysdb_netgroup_dn(sysdb, msg, netgroup);
if (!msg->dn) {
ERROR_OUT(ret, ENOMEM, done);
}
@@ -3088,15 +3076,15 @@ errno_t sysdb_remove_attrs(struct sysdb_ctx *sysdb,
switch(type) {
case SYSDB_MEMBER_USER:
- msg->dn = sysdb_user_dn(sysdb, msg, sysdb->domain->name, name);
+ msg->dn = sysdb_user_dn(sysdb, msg, name);
break;
case SYSDB_MEMBER_GROUP:
- msg->dn = sysdb_group_dn(sysdb, msg, sysdb->domain->name, name);
+ msg->dn = sysdb_group_dn(sysdb, msg, name);
break;
case SYSDB_MEMBER_NETGROUP:
- msg->dn = sysdb_netgroup_dn(sysdb, msg, sysdb->domain->name, name);
+ msg->dn = sysdb_netgroup_dn(sysdb, msg, name);
break;
case SYSDB_MEMBER_SERVICE:
diff --git a/src/db/sysdb_sudo.c b/src/db/sysdb_sudo.c
index e1434e254..39b1504da 100644
--- a/src/db/sysdb_sudo.c
+++ b/src/db/sysdb_sudo.c
@@ -545,8 +545,7 @@ errno_t sysdb_sudo_purge_all(struct sysdb_ctx *sysdb)
tmp_ctx = talloc_new(NULL);
NULL_CHECK(tmp_ctx, ret, done);
- base_dn = sysdb_custom_subtree_dn(sysdb, tmp_ctx, sysdb->domain->name,
- SUDORULE_SUBDIR);
+ base_dn = sysdb_custom_subtree_dn(sysdb, tmp_ctx, SUDORULE_SUBDIR);
NULL_CHECK(base_dn, ret, done);
ret = sysdb_delete_recursive(sysdb, base_dn, true);