summaryrefslogtreecommitdiff
path: root/meta-openembedded/meta-oe/recipes-extended/libpwquality/files/0001-fix-musl-build.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-openembedded/meta-oe/recipes-extended/libpwquality/files/0001-fix-musl-build.patch')
-rw-r--r--meta-openembedded/meta-oe/recipes-extended/libpwquality/files/0001-fix-musl-build.patch72
1 files changed, 0 insertions, 72 deletions
diff --git a/meta-openembedded/meta-oe/recipes-extended/libpwquality/files/0001-fix-musl-build.patch b/meta-openembedded/meta-oe/recipes-extended/libpwquality/files/0001-fix-musl-build.patch
deleted file mode 100644
index 2cbdd6c74c..0000000000
--- a/meta-openembedded/meta-oe/recipes-extended/libpwquality/files/0001-fix-musl-build.patch
+++ /dev/null
@@ -1,72 +0,0 @@
-Do not use fgetpwent_r
-
-fgetpwent_r does not exist on musl
-
-Source: https://git.alpinelinux.org/aports/tree/community/libpwquality/0001-fix-musl-build.patch
-Upstream-Status: Pending
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
---- a/src/pam_pwquality.c
-+++ b/src/pam_pwquality.c
-@@ -19,6 +19,7 @@
- #include <stdio.h>
- #include <pwd.h>
- #include <errno.h>
-+#include <security/pam_modutil.h>
- #include "pwquality.h"
-
- /*
-@@ -43,8 +44,6 @@ struct module_options {
-
- #define CO_RETRY_TIMES 1
-
--#define PATH_PASSWD "/etc/passwd"
--
- static int
- _pam_parse (pam_handle_t *pamh, struct module_options *opt,
- int argc, const char **argv)
-@@ -98,44 +97,7 @@ static int
- check_local_user (pam_handle_t *pamh,
- const char *user)
- {
-- struct passwd pw, *pwp;
-- char buf[4096];
-- int found = 0;
-- FILE *fp;
-- int errn;
--
-- fp = fopen(PATH_PASSWD, "r");
-- if (fp == NULL) {
-- pam_syslog(pamh, LOG_ERR, "unable to open %s: %s",
-- PATH_PASSWD, pam_strerror(pamh, errno));
-- return -1;
-- }
--
-- for (;;) {
-- errn = fgetpwent_r(fp, &pw, buf, sizeof (buf), &pwp);
-- if (errn == ERANGE) {
-- pam_syslog(pamh, LOG_WARNING, "%s contains very long lines; corrupted?",
-- PATH_PASSWD);
-- /* we can continue here as next call will read further */
-- continue;
-- }
-- if (errn != 0)
-- break;
-- if (strcmp(pwp->pw_name, user) == 0) {
-- found = 1;
-- break;
-- }
-- }
--
-- fclose (fp);
--
-- if (errn != 0 && errn != ENOENT) {
-- pam_syslog(pamh, LOG_ERR, "unable to enumerate local accounts: %s",
-- pam_strerror(pamh, errn));
-- return -1;
-- } else {
-- return found;
-- }
-+ return pam_modutil_check_user_in_passwd(pamh, user, NULL) == PAM_SUCCESS;
- }
-
- PAM_EXTERN int