[SSSD] [PATCH] sysdb: sysdb_search_group_by_name should work like sysdb_search_user_by_name
Jakub Hrozek
jhrozek at redhat.com
Wed Sep 17 10:27:24 UTC 2014
On Tue, Sep 16, 2014 at 05:58:36PM +0200, Sumit Bose wrote:
> Hi,
>
> I came across this when trying to resolve the SID of a group with the
> group's name.
>
> bye,
> Sumit
ACK. The code also reads much nicer now, thank you.
Is it OK to squash in the attached test?
-------------- next part --------------
>From c9d35c190f03db4db943d5d6e9c56cc60cfcdb87 Mon Sep 17 00:00:00 2001
From: Jakub Hrozek <jhrozek at redhat.com>
Date: Wed, 17 Sep 2014 12:12:29 +0200
Subject: [PATCH] TESTS: Add a case-insensitive sysdb test
---
src/tests/sysdb-tests.c | 27 ++++++++++++++++++++++-----
1 file changed, 22 insertions(+), 5 deletions(-)
diff --git a/src/tests/sysdb-tests.c b/src/tests/sysdb-tests.c
index 5ab8b66144c33ca94242cd0cb75eb46581e17412..2a1393002bec180be9369d6696d4486c45f1f08e 100644
--- a/src/tests/sysdb-tests.c
+++ b/src/tests/sysdb-tests.c
@@ -4972,6 +4972,7 @@ START_TEST(test_sysdb_subdomain_group_ops)
struct sss_domain_info *subdomain = NULL;
struct ldb_message *msg = NULL;
struct ldb_dn *check_dn = NULL;
+ struct sysdb_attrs *group_attrs;
ret = setup_sysdb_tests(&test_ctx);
fail_if(ret != EOK, "Could not set up the test");
@@ -4989,20 +4990,36 @@ START_TEST(test_sysdb_subdomain_group_ops)
fail_unless(ret == EOK, "sysdb_update_subdomains failed with [%d][%s]",
ret, strerror(ret));
+ group_attrs = sysdb_new_attrs(test_ctx);
+ fail_unless(group_attrs != NULL, "sysdb_new_attrs failed");
+
+ ret = sysdb_attrs_add_string(group_attrs, SYSDB_NAME_ALIAS, "subdomgroup");
+ fail_unless(ret == EOK, "sysdb_store_user failed.");
+
ret = sysdb_store_group(subdomain,
- "subdomgroup", 12345, NULL, -1, 0);
+ "subDomGroup", 12345, group_attrs, -1, 0);
fail_unless(ret == EOK, "sysdb_store_domgroup failed.");
check_dn = ldb_dn_new(test_ctx, test_ctx->sysdb->ldb,
- "name=subdomgroup,cn=groups,cn=test.sub,cn=sysdb");
+ "name=subDomGroup,cn=groups,cn=test.sub,cn=sysdb");
fail_unless(check_dn != NULL);
- ret = sysdb_search_group_by_name(test_ctx, subdomain, "subdomgroup", NULL,
+ ret = sysdb_search_group_by_name(test_ctx, subdomain, "subDomGroup", NULL,
&msg);
fail_unless(ret == EOK, "sysdb_search_domgroup_by_name failed with [%d][%s].",
ret, strerror(ret));
fail_unless(ldb_dn_compare(msg->dn, check_dn) == 0,
- "Unexpedted DN returned");
+ "Unexpected DN returned");
+
+ /* subdomains are case insensitive, so it should be possible to search
+ the group with a lowercase name version, too */
+ ret = sysdb_search_group_by_name(test_ctx, subdomain, "subdomgroup", NULL,
+ &msg);
+ fail_unless(ret == EOK, "case-insensitive group search failed with [%d][%s].",
+ ret, strerror(ret));
+ fail_unless(ldb_dn_compare(msg->dn, check_dn) == 0,
+ "Unexpected DN returned");
+
ret = sysdb_search_group_by_gid(test_ctx, subdomain, 12345, NULL, &msg);
fail_unless(ret == EOK, "sysdb_search_domgroup_by_gid failed with [%d][%s].",
@@ -5010,7 +5027,7 @@ START_TEST(test_sysdb_subdomain_group_ops)
fail_unless(ldb_dn_compare(msg->dn, check_dn) == 0,
"Unexpedted DN returned");
- ret = sysdb_delete_group(subdomain, "subdomgroup", 12345);
+ ret = sysdb_delete_group(subdomain, "subDomGroup", 12345);
fail_unless(ret == EOK, "sysdb_delete_domgroup failed with [%d][%s].",
ret, strerror(ret));
--
1.9.3
More information about the sssd-devel
mailing list