]> granicus.if.org Git - sudo/commitdiff
Remove asprintf() return value warnings.
authorTodd C. Miller <Todd.Miller@courtesan.com>
Wed, 17 Jun 2015 23:00:25 +0000 (17:00 -0600)
committerTodd C. Miller <Todd.Miller@courtesan.com>
Wed, 17 Jun 2015 23:00:25 +0000 (17:00 -0600)
plugins/sudoers/ldap.c
plugins/sudoers/logging.c

index 6e25201bb4ab6942bd35ba27757a6372cfe06c05..ff84c6d7cc0c9f7b43edf9558946f6fd9d333685 100644 (file)
@@ -1161,13 +1161,15 @@ done:
 static char *
 sudo_ldap_build_default_filter(void)
 {
-    char *filt = NULL;
+    char *filt;
     debug_decl(sudo_ldap_build_default_filter, SUDOERS_DEBUG_LDAP)
 
-    if (ldap_conf.search_filter)
-       (void)asprintf(&filt, "(&%s(cn=defaults))", ldap_conf.search_filter);
-    else
-       filt = strdup("cn=defaults");
+    if (!ldap_conf.search_filter)
+       debug_return_str(strdup("cn=defaults"));
+
+    if (asprintf(&filt, "(&%s(cn=defaults))", ldap_conf.search_filter) == -1)
+       debug_return_str(NULL);
+
     debug_return_str(filt);
 }
 
@@ -1686,8 +1688,9 @@ overflow:
 static char *
 sudo_ldap_build_pass2(void)
 {
-    char *filt = NULL, timebuffer[TIMEFILTER_LENGTH + 1];
+    char *filt, timebuffer[TIMEFILTER_LENGTH + 1];
     bool query_netgroups = def_use_netgroups;
+    int len;
     debug_decl(sudo_ldap_build_pass2, SUDOERS_DEBUG_LDAP)
 
     /* No need to query netgroups if using netgroup_base. */
@@ -1711,20 +1714,20 @@ sudo_ldap_build_pass2(void)
      * those get ANDed in to the expression.
      */
     if (query_netgroups && def_group_plugin) {
-       (void)asprintf(&filt, "%s%s(|(sudoUser=+*)(sudoUser=%%:*))%s%s",
+       len = asprintf(&filt, "%s%s(|(sudoUser=+*)(sudoUser=%%:*))%s%s",
            (ldap_conf.timed || ldap_conf.search_filter) ? "(&" : "",
            ldap_conf.search_filter ? ldap_conf.search_filter : "",
            ldap_conf.timed ? timebuffer : "",
            (ldap_conf.timed || ldap_conf.search_filter) ? ")" : "");
     } else {
-       (void)asprintf(&filt, "%s%s(sudoUser=*)(sudoUser=%s*)%s%s",
+       len = asprintf(&filt, "%s%s(sudoUser=*)(sudoUser=%s*)%s%s",
            (ldap_conf.timed || ldap_conf.search_filter) ? "(&" : "",
            ldap_conf.search_filter ? ldap_conf.search_filter : "",
            query_netgroups ? "+" : "%:",
            ldap_conf.timed ? timebuffer : "",
            (ldap_conf.timed || ldap_conf.search_filter) ? ")" : "");
     }
-    if (filt == NULL)
+    if (len == -1)
        sudo_warnx(U_("unable to allocate memory"));
 
     debug_return_str(filt);
index 5e4cf6847a5e69417d387a24671ac8376ac862fc..25632dcad4dd8e24d4ce38d84a1dca3d3e02ff07 100644 (file)
@@ -428,9 +428,10 @@ static bool
 vlog_warning(int flags, const char *fmt, va_list ap)
 {
     int oldlocale, serrno = errno;
-    char *logline, *message = NULL;
+    char *logline, *message;
     bool uid_changed, rval = true;
     va_list ap2;
+    int len;
     debug_decl(vlog_error, SUDOERS_DEBUG_LOGGING)
 
     /* Need extra copy of ap for sudo_vwarn()/sudo_vwarnx() below. */
@@ -442,12 +443,12 @@ vlog_warning(int flags, const char *fmt, va_list ap)
     /* Expand printf-style format + args (with a special case). */
     if (fmt == INCORRECT_PASSWORD_ATTEMPT) {
        unsigned int tries = va_arg(ap, unsigned int);
-       (void)asprintf(&message, ngettext("%u incorrect password attempt",
+       len = asprintf(&message, ngettext("%u incorrect password attempt",
            "%u incorrect password attempts", tries), tries);
     } else {
-       (void)vasprintf(&message, _(fmt), ap);
+       len = vasprintf(&message, _(fmt), ap);
     }
-    if (message == NULL) {
+    if (len == -1) {
        rval = false;
        goto done;
     }