summaryrefslogtreecommitdiffstats
path: root/src/util
diff options
context:
space:
mode:
authorLukas Slebodnik <lslebodn@redhat.com>2014-02-28 23:42:19 +0100
committerJakub Hrozek <jhrozek@redhat.com>2014-06-02 19:07:57 +0200
commitbe7eabee6b7eb8def2441bf5de4c6d4950c155bf (patch)
treeca9e24f955becb2fdc09823919185e0b3554a5da /src/util
parent69994add9cd4e57d40b3b7a0b1783ef2d0aa974c (diff)
downloadsssd-be7eabee6b7eb8def2441bf5de4c6d4950c155bf.tar.gz
sssd-be7eabee6b7eb8def2441bf5de4c6d4950c155bf.tar.xz
sssd-be7eabee6b7eb8def2441bf5de4c6d4950c155bf.zip
UTIL: Add function sss_parse_name_const
Variable with type 'const char *' can be used as output argument in function sss_parse_name, but there will be warning. warning: passing 'const char **' to parameter of type 'char **' discards qualifiers in nested pointer types [-Wincompatible-pointer-types-discards-qualifiers]
Diffstat (limited to 'src/util')
-rw-r--r--src/util/usertools.c24
-rw-r--r--src/util/util.h4
2 files changed, 28 insertions, 0 deletions
diff --git a/src/util/usertools.c b/src/util/usertools.c
index ea2123061..57945c7f1 100644
--- a/src/util/usertools.c
+++ b/src/util/usertools.c
@@ -366,6 +366,30 @@ int sss_parse_name(TALLOC_CTX *memctx,
return EOK;
}
+int sss_parse_name_const(TALLOC_CTX *memctx,
+ struct sss_names_ctx *snctx, const char *orig,
+ const char **_domain, const char **_name)
+{
+ char *domain;
+ char *name;
+ int ret;
+
+ ret = sss_parse_name(memctx, snctx, orig,
+ (_domain == NULL) ? NULL : &domain,
+ (_name == NULL) ? NULL : &name);
+ if (ret == EOK) {
+ if (_domain != NULL) {
+ *_domain = domain;
+ }
+
+ if (_name != NULL) {
+ *_name = name;
+ }
+ }
+
+ return ret;
+}
+
static struct sss_domain_info * match_any_domain_or_subdomain_name(
struct sss_domain_info *dom,
const char *dmatch)
diff --git a/src/util/util.h b/src/util/util.h
index 38d9fca4c..af2a57818 100644
--- a/src/util/util.h
+++ b/src/util/util.h
@@ -280,6 +280,10 @@ int sss_parse_name(TALLOC_CTX *memctx,
struct sss_names_ctx *snctx,
const char *orig, char **_domain, char **_name);
+int sss_parse_name_const(TALLOC_CTX *memctx,
+ struct sss_names_ctx *snctx, const char *orig,
+ const char **_domain, const char **_name);
+
int sss_parse_name_for_domains(TALLOC_CTX *memctx,
struct sss_domain_info *domains,
const char *default_domain,