[SSSD] [PATCH] IFP: cached objects

Pavel Březina pbrezina at redhat.com
Tue Jun 2 13:49:17 UTC 2015


On 06/02/2015 02:17 PM, Lukas Slebodnik wrote:
> On (02/06/15 11:18), Pavel Březina wrote:
>> On 05/26/2015 05:22 PM, Jakub Hrozek wrote:
>>> There is a compilation warning discovered by Coverity:
> It is gcc-5.1 warning and not coverity
> I can see them as well.
>
>>> Error: COMPILER_WARNING:
>>> sssd-1.12.90/src/responder/ifp/ifp_cache.c:118:13: warning: 'base_dn' may be used uninitialized in this function [-Wmaybe-uninitialized]
>>> #  116|       }
>>> #  117|
>>> #  118|->     ldb_ret = ldb_search(sysdb_ctx_get_ldb(domain->sysdb), tmp_ctx, &result,
>>> #  119|                            base_dn, LDB_SCOPE_SUBTREE, attrs,
>>> #  120|                            "(&(objectClass=%s)(%s=TRUE))", class, SYSDB_CACHED);
>>>
>>> Error: COMPILER_WARNING:
>>> sssd-1.12.90/src/responder/ifp/ifp_cache.c:118:13: warning: 'class' may be used uninitialized in this function [-Wmaybe-uninitialized]
>>> #     ldb_ret = ldb_search(sysdb_ctx_get_ldb(domain->sysdb), tmp_ctx, &result,
>>> #             ^
>>> #  116|       }
>>> #  117|
>>> #  118|->     ldb_ret = ldb_search(sysdb_ctx_get_ldb(domain->sysdb), tmp_ctx, &result,
>>> #  119|                            base_dn, LDB_SCOPE_SUBTREE, attrs,
>>> #  120|                            "(&(objectClass=%s)(%s=TRUE))", class, SYSDB_CACHED);
>>>
>>> Error: COMPILER_WARNING:
>>> sssd-1.12.90/src/responder/ifp/ifp_cache.c: scope_hint: In function 'ifp_cache_get_cached_objects'
>>> sssd-1.12.90/src/responder/ifp/ifp_cache.c:134:18: warning: 'path' may be used uninitialized in this function [-Wmaybe-uninitialized]
>>> #         paths[i] = ifp_cache_build_path(paths, type, domain, result->msgs[i]);
>>> #                  ^
>>> #  132|
>>> #  133|       for (i = 0; i < result->count; i++) {
>>> #  134|->         paths[i] = ifp_cache_build_path(paths, type, domain, result->msgs[i]);
>>> #  135|           if (paths[i] == NULL) {
>>> #  136|               ret = ENOMEM;
>>
>> I don't see how those warning happends... base_dn, class and paths is
>> initialized.
> It seems that gcc 5.1 optimize enum in some ways
> and expects that functions ifp_cache_build_path and ifp_cache_build_base_dn
> can return unitialized value.
> If you do not wan to add Defualt to switch then you can initialize
> local variabels in these functions.
>
> diff --git a/src/responder/ifp/ifp_cache.c b/src/responder/ifp/ifp_cache.c
> index 4e5f59c..949c3f9 100644
> --- a/src/responder/ifp/ifp_cache.c
> +++ b/src/responder/ifp/ifp_cache.c
> @@ -34,7 +34,7 @@ ifp_cache_build_base_dn(TALLOC_CTX *mem_ctx,
>                           enum ifp_cache_type type,
>                           struct sss_domain_info *domain)
>   {
> -    struct ldb_dn *base_dn;
> +    struct ldb_dn *base_dn = NULL;
>
>       switch (type) {
>       case IFP_CACHE_USER:
> @@ -54,7 +54,7 @@ ifp_cache_build_path(TALLOC_CTX *mem_ctx,
>                        struct sss_domain_info *domain,
>                        struct ldb_message *msg)
>   {
> -    char *path;
> +    char *path = NULL;
>
>       switch (type) {
>       case IFP_CACHE_USER:
>
> LS
Thanks, new patch is attached.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-IFP-Implement-org.freedesktop.sssd.infopipe.Cache-.O.patch
Type: text/x-patch
Size: 32418 bytes
Desc: not available
URL: <https://lists.fedorahosted.org/pipermail/sssd-devel/attachments/20150602/9000310c/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0002-SBUS-Use-default-GetAll-invoker-if-none-is-set.patch
Type: text/x-patch
Size: 1237 bytes
Desc: not available
URL: <https://lists.fedorahosted.org/pipermail/sssd-devel/attachments/20150602/9000310c/attachment-0001.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0003-SBUS-Add-support-for-node-in-introspection.patch
Type: text/x-patch
Size: 10839 bytes
Desc: not available
URL: <https://lists.fedorahosted.org/pipermail/sssd-devel/attachments/20150602/9000310c/attachment-0002.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0004-IFP-Export-nodes.patch
Type: text/x-patch
Size: 11184 bytes
Desc: not available
URL: <https://lists.fedorahosted.org/pipermail/sssd-devel/attachments/20150602/9000310c/attachment-0003.bin>


More information about the sssd-devel mailing list