diff options
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.patch | 72 |
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 |