Bug#1142354: Acknowledgement (sshd-session built without crypt(), breaking UsePAM=no password auth)
Colin Watson <[email protected]> Sat, 18 Jul 2026 23:30:33 +0100
| Newsgroups | gmane.linux.debian.devel.ssh |
|---|---|
| Message-ID | <alv-idGfXqXWN75N__40220.7399065205$1784414022$gmane$org@riva.ucam.org> |
On Sat, Jul 18, 2026 at 04:38:50PM +0100, Alexander Fisher wrote:
>libc6-dev no longer depends on libcrypt-dev (glibc 2.42-7), so crypt()
>was no longer detected at configure time and sshd-session was built
>without password-crypt support, breaking UsePAM=no logins.
Thanks for the patch.
>diff -Nru openssh-10.4p1/debian/rules openssh-10.4p1/debian/rules
>--- openssh-10.4p1/debian/rules 2026-07-06 18:11:28.000000000 +0000
>+++ openssh-10.4p1/debian/rules 2026-07-18 13:52:55.000000000 +0000
>@@ -122,6 +122,10 @@
>
> override_dh_auto_configure-arch:
> dh_auto_configure -Bdebian/build-deb -- $(confflags)
>+ # configure treats a missing crypt() as non-fatal, so check explicitly;
>+ # without it sshd-session loses password authentication.
>+ grep -q '^#define HAVE_CRYPT 1' debian/build-deb/config.h || \
>+ { echo >&2 "crypt() not detected; is libcrypt-dev installed?"; exit 1; }
> ifeq ($(filter noudeb,$(DEB_BUILD_PROFILES)),)
> dh_auto_configure -Bdebian/build-udeb -- $(confflags_udeb)
> # Avoid libnsl linkage. Ugh.
I think this part of your patch is a bit overkill, to be honest, and am
inclined to leave it out. We don't normally do this kind of
double-checking of configure results at build time. The autopkgtest
makes sense though, and seems to be good enough to catch regressions in
this kind of thing in future.
Would you mind if I revised your patch to omit this part? (No need to
resend; I can make the adjustments myself.)