summaryrefslogtreecommitdiffstats
path: root/src/db/sysdb.c
diff options
context:
space:
mode:
authorPavel Reichl <preichl@redhat.com>2014-06-04 15:25:31 +0100
committerJakub Hrozek <jhrozek@redhat.com>2014-06-18 14:11:18 +0200
commit21fc2ea7d4a9944582ffd4d11500faf4bddae835 (patch)
treefc2ae2c0f0f3868367b5b054ea2333226a7f1616 /src/db/sysdb.c
parent4ed403fe53f71059758efc48265f6239393facd0 (diff)
downloadsssd-21fc2ea7d4a9944582ffd4d11500faf4bddae835.tar.gz
sssd-21fc2ea7d4a9944582ffd4d11500faf4bddae835.tar.xz
sssd-21fc2ea7d4a9944582ffd4d11500faf4bddae835.zip
SYSDB: utility call sysdb_attrs_add_lower_case_string
Resolves: https://fedorahosted.org/sssd/ticket/2056 Reviewed-by: Sumit Bose <sbose@redhat.com>
Diffstat (limited to 'src/db/sysdb.c')
-rw-r--r--src/db/sysdb.c40
1 files changed, 23 insertions, 17 deletions
diff --git a/src/db/sysdb.c b/src/db/sysdb.c
index 12964189a..1bc020db6 100644
--- a/src/db/sysdb.c
+++ b/src/db/sysdb.c
@@ -547,6 +547,28 @@ int sysdb_attrs_add_string(struct sysdb_attrs *attrs,
return sysdb_attrs_add_val(attrs, name, &v);
}
+int sysdb_attrs_add_lower_case_string(struct sysdb_attrs *attrs,
+ const char *name, const char *str)
+{
+ char *lc_str;
+ int ret;
+
+ if (attrs == NULL || str == NULL) {
+ return EINVAL;
+ }
+
+ lc_str = sss_tc_utf8_str_tolower(attrs, str);
+ if (lc_str == NULL) {
+ DEBUG(SSSDBG_OP_FAILURE, "Cannot convert name to lowercase.\n");
+ return ENOMEM;
+ }
+
+ ret = sysdb_attrs_add_string(attrs, name, lc_str);
+ talloc_free(lc_str);
+
+ return ret;
+}
+
int sysdb_attrs_add_mem(struct sysdb_attrs *attrs, const char *name,
const void *mem, size_t size)
{
@@ -656,23 +678,7 @@ int sysdb_attrs_add_time_t(struct sysdb_attrs *attrs,
int sysdb_attrs_add_lc_name_alias(struct sysdb_attrs *attrs,
const char *value)
{
- char *lc_str;
- int ret;
-
- if (attrs == NULL || value == NULL) {
- return EINVAL;
- }
-
- lc_str = sss_tc_utf8_str_tolower(attrs, value);
- if (lc_str == NULL) {
- DEBUG(SSSDBG_OP_FAILURE, "Cannot convert name to lowercase\n");
- return ENOMEM;
- }
-
- ret = sysdb_attrs_add_string(attrs, SYSDB_NAME_ALIAS, lc_str);
- talloc_free(lc_str);
-
- return ret;
+ return sysdb_attrs_add_lower_case_string(attrs, SYSDB_NAME_ALIAS, value);
}
int sysdb_attrs_copy_values(struct sysdb_attrs *src,