diff options
author | Lukas Slebodnik <lslebodn@redhat.com> | 2016-07-08 15:27:23 +0200 |
---|---|---|
committer | Jakub Hrozek <jhrozek@redhat.com> | 2016-07-12 11:57:57 +0200 |
commit | 64d664c201916d8678b5f4bd7e1559c7ece9217d (patch) | |
tree | 7f9c16ec1bd2ebd8467dfeecb545b5d8e7857cc4 /src | |
parent | f3db22862d22821be2d566435cb0c59387343fc2 (diff) | |
download | sssd-64d664c201916d8678b5f4bd7e1559c7ece9217d.tar.gz sssd-64d664c201916d8678b5f4bd7e1559c7ece9217d.tar.xz sssd-64d664c201916d8678b5f4bd7e1559c7ece9217d.zip |
sssctl: Fix warning maybe-uninitialized
It looks like some special gcc optimalisation and special case
may cause to have unitialized output argument _dom when return
code is EOK
src/tools/sssctl/sssctl_cache.c: In function ‘sssctl_print_object’:
src/tools/sssctl/sssctl_cache.c:491:8: error: ‘dom’ may be used
uninitialized in this function [-Werror=maybe-uninitialized]
if (dom == NULL) {
^
src/tools/sssctl/sssctl_cache.c:447:15: error: ‘entry’ may be used
uninitialized in this function [-Werror=maybe-uninitialized]
*_entry = talloc_steal(mem_ctx, entry);
^~~~~~~~~~~~
src/tools/sssctl/sssctl_cache.c:412:25: note: ‘entry’ was declared here
struct sysdb_attrs *entry;
^~~~~
Reviewed-by: Jakub Hrozek <jhrozek@redhat.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/tools/sssctl/sssctl_cache.c | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/src/tools/sssctl/sssctl_cache.c b/src/tools/sssctl/sssctl_cache.c index 28de6c139..e23bb89db 100644 --- a/src/tools/sssctl/sssctl_cache.c +++ b/src/tools/sssctl/sssctl_cache.c @@ -372,15 +372,19 @@ static errno_t sssctl_find_object(TALLOC_CTX *mem_ctx, ret = sssctl_query_cache(tmp_ctx, dom->sysdb, base_dn, filter, attrs, &entry); - if (ret == EOK) { + switch(ret) { + case EOK: /* Entry was found. */ *_entry = talloc_steal(mem_ctx, entry); *_dom = dom; goto done; - } else if (ret == ENOENT && fqn_provided) { - /* Not found but a domain was provided in input. We're done. */ - goto done; - } else if (ret != ENOENT) { + case ENOENT: + if (fqn_provided) { + /* Not found but a domain was provided in input. We're done. */ + goto done; + } + break; + default: DEBUG(SSSDBG_CRIT_FAILURE, "Unable to query cache [%d]: %s\n", ret, sss_strerror(ret)); goto done; |