From a51b7570d46e3c21e2e322cfc1928fd52e4b6c77 Mon Sep 17 00:00:00 2001 From: Peter Woodman Date: Tue, 19 Jan 2021 01:19:51 -0500 Subject: [PATCH] linux-pam: remove broken musl pam_exec patch it looks like this build wasn't tested with musl-libc after upgrading to 1.5.1, and has been broken in this configuration since, as the removed patch does not apply cleanly. the good news is it's been fixed upstream, rendering it unnecessary. --- pkgs/os-specific/linux/pam/default.nix | 3 -- .../linux/pam/musl-fix-pam_exec.patch | 33 ------------------- 2 files changed, 36 deletions(-) delete mode 100644 pkgs/os-specific/linux/pam/musl-fix-pam_exec.patch diff --git a/pkgs/os-specific/linux/pam/default.nix b/pkgs/os-specific/linux/pam/default.nix index 45f901b42f09..42b7ea910923 100644 --- a/pkgs/os-specific/linux/pam/default.nix +++ b/pkgs/os-specific/linux/pam/default.nix @@ -20,9 +20,6 @@ stdenv.mkDerivation rec { url = "https://git.alpinelinux.org/aports/plain/main/linux-pam/libpam-fix-build-with-eglibc-2.16.patch?id=05a62bda8ec255d7049a2bd4cf0fdc4b32bdb2cc"; sha256 = "1ib6shhvgzinjsc603k2x1lxh9dic6qq449fnk110gc359m23j81"; }) - # From adelie's package repo, using local copy since it seems to be currently offline. - # (we previously used similar patch from void, but stopped working with update to 1.3.1) - ./musl-fix-pam_exec.patch ]; outputs = [ "out" "doc" "man" /* "modules" */ ]; diff --git a/pkgs/os-specific/linux/pam/musl-fix-pam_exec.patch b/pkgs/os-specific/linux/pam/musl-fix-pam_exec.patch deleted file mode 100644 index 194e47b9e5b0..000000000000 --- a/pkgs/os-specific/linux/pam/musl-fix-pam_exec.patch +++ /dev/null @@ -1,33 +0,0 @@ ---- ./modules/pam_exec/pam_exec.c.orig -+++ ./modules/pam_exec/pam_exec.c -@@ -103,11 +103,14 @@ - int optargc; - const char *logfile = NULL; - const char *authtok = NULL; -+ char authtok_buf[PAM_MAX_RESP_SIZE+1]; -+ - pid_t pid; - int fds[2]; - int stdout_fds[2]; - FILE *stdout_file = NULL; - -+ memset(authtok_buf, 0, sizeof(authtok_buf)); - if (argc < 1) { - pam_syslog (pamh, LOG_ERR, - "This module needs at least one argument"); -@@ -180,12 +183,12 @@ - if (resp) - { - pam_set_item (pamh, PAM_AUTHTOK, resp); -- authtok = strndupa (resp, PAM_MAX_RESP_SIZE); -+ authtok = strncpy(authtok_buf, resp, sizeof(authtok_buf)); - _pam_drop (resp); - } - } - else -- authtok = strndupa (void_pass, PAM_MAX_RESP_SIZE); -+ authtok = strncpy(authtok_buf, void_pass, sizeof(authtok_buf)); - - if (pipe(fds) != 0) - { -