[SSSD] [PATCH] Check return values of setenv and unsetenv

Lukas Slebodnik lslebodn at redhat.com
Sat Sep 21 20:41:48 UTC 2013


On (21/09/13 19:40), Jakub Hrozek wrote:
>We didn't run a patch through Coverity because it looked straighforward
>enough..well..
>
>Attached is a patch that checks the retval of two calls to silence
>Coverity warning.

>From 8e37495b44bf7c971944a5629fb36d5d9e4cadba Mon Sep 17 00:00:00 2001
>From: Jakub Hrozek <jhrozek at redhat.com>
>Date: Sat, 21 Sep 2013 05:57:12 +0200
>Subject: [PATCH] Check return values of setenv and unsetenv
>
>---
> src/providers/data_provider_be.c | 6 +++++-
> src/util/server.c                | 6 +++++-
> 2 files changed, 10 insertions(+), 2 deletions(-)
>
>diff --git a/src/providers/data_provider_be.c b/src/providers/data_provider_be.c
>index ccd51b45fd9aee25b052f6b7bf7f869dc234c138..6b58d88ab4e0dd93960e6cb37e361adc7cfa52b9 100644
>--- a/src/providers/data_provider_be.c
>+++ b/src/providers/data_provider_be.c
>@@ -2891,7 +2891,11 @@ int main(int argc, const char *argv[])
>         return 2;
>     }
> 
>-    setenv(SSS_DOM_ENV, be_domain, 1);
>+    ret = setenv(SSS_DOM_ENV, be_domain, 1);
>+    if (ret != 0) {
>+        DEBUG(SSSDBG_MINOR_FAILURE, ("Setting "SSS_DOM_ENV" failed, journald "
>+              "logging mightnot work as expected\n"));
>+    }
> 
>     ret = die_if_parent_died();
>     if (ret != EOK) {
>diff --git a/src/util/server.c b/src/util/server.c
>index 3dcfccaf6868da9a823621eb8e2b1dfaccb9a4f1..b1c59e1d7dfcf911539e50b6783561e7284538b5 100644
>--- a/src/util/server.c
>+++ b/src/util/server.c
>@@ -426,7 +426,11 @@ int server_setup(const char *name, int flags,
>     /* To make sure the domain cannot be set from the environment, unset the
>      * variable explicitly when setting up any server. Backends later set the
>      * value after reading domain from the configuration */
>-    unsetenv(SSS_DOM_ENV);
>+    ret = unsetenv(SSS_DOM_ENV);
>+    if (ret != 0) {
>+        DEBUG(SSSDBG_MINOR_FAILURE, ("Unsetting "SSS_DOM_ENV" failed, journald "
>+              "logging mightnot work as expected\n"));
>+    }
> 
>     setup_signals();
> 
>-- 

I checked patch with coverity and warnings are fixed.

ACK

LS



More information about the sssd-devel mailing list