krb5 commit: Remove strerror() calls from k5_get_error()

Greg Hudson <[email protected]>
Newsgroups gmane.comp.encryption.kerberos.cvs
Message-ID <[email protected]>
https://github.com/krb5/krb5/commit/2d400bea7a81a5a834a1be6ded439f18e0afa5ba
commit 2d400bea7a81a5a834a1be6ded439f18e0afa5ba
Author: Greg Hudson <[email protected]>
Date:   Thu Jun 6 11:46:58 2019 -0400

    Remove strerror() calls from k5_get_error()
    
    Coverity models strerror() as a function which cannot accept negative
    values, even though it has defined behavior on all integers.
    k5_get_error() contains code to call strerror_r() and strerror() if
    its fptr global is unset, which isn't an expected case in practice.
    To silence a large number of Coverity false positives, just return a
    fixed string if fptr is null.

 src/util/support/errors.c |    5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/src/util/support/errors.c b/src/util/support/errors.c
index 70e1d59..f8bea07 100644
--- a/src/util/support/errors.c
+++ b/src/util/support/errors.c
@@ -78,10 +78,9 @@ k5_get_error(struct errinfo *ep, long code)
 
     lock();
     if (fptr == NULL) {
+        /* Should be rare; fptr should be set whenever libkrb5 is loaded. */
         unlock();
-        if (strerror_r(code, buf, sizeof(buf)) == 0)
-            return oom_check(strdup(buf));
-        return oom_check(strdup(strerror(code)));
+        return oom_check(strdup(_("Error code translation unavailable")));
     }
     r = fptr(code);
 #ifndef HAVE_COM_ERR_INTL
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.