package/pam: fix uclibc compile error

Following build failure occurs:
opasswd.c: In function 'compare_password':
opasswd.c:142:3: error: 'retval' undeclared (first use in this function); did you mean 'outval'?
  142 |   retval = outval != NULL && strcmp(outval, oldpass) == 0;
      |   ^~~~~~
      |   outval

Add a patch from upstream to fix it.
Happens since the update to 1.5.3 in Buildroot commit:
f8147e27cd

Fixes:
 - http://autobuild.buildroot.net/results/576/576fc4b9ccbc6cff82569692bdec82192e89f036

Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Waldemar Brodkorb 2023-08-27 13:18:39 +02:00 committed by Thomas Petazzoni
parent 99674f64ba
commit 855f78edd4

View File

@ -0,0 +1,37 @@
From b82acc21f1e2f76d4cb0c75bb4958751562039ab Mon Sep 17 00:00:00 2001
From: Bernhard Rosenkränzer <bero@lindev.ch>
Date: Wed, 7 Jun 2023 19:49:01 +0200
Subject: [PATCH] Fix build if crypt_r isn't available
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
retval was being defined only in #ifdef HAVE_CRYPT_R, but used
unconditionally.
Signed-off-by: Bernhard Rosenkränzer <bero@lindev.ch>
Fixes: bcba17939e1b ("modules: make use of secure memory erasure")
Signed-off-by: Waldemar Brodkorb <wbx@openadk.org>
Upstream: https://github.com/linux-pam/linux-pam/commit/b82acc21f1e2f76d4cb0c75bb4958751562039ab
---
modules/pam_pwhistory/opasswd.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/modules/pam_pwhistory/opasswd.c b/modules/pam_pwhistory/opasswd.c
index 479e3fc4..fc610e2f 100644
--- a/modules/pam_pwhistory/opasswd.c
+++ b/modules/pam_pwhistory/opasswd.c
@@ -128,9 +128,9 @@ static int
compare_password(const char *newpass, const char *oldpass)
{
char *outval;
+ int retval;
#ifdef HAVE_CRYPT_R
struct crypt_data output;
- int retval;
output.initialized = 0;
--
2.39.2