Opened 10 months ago

Closed 10 months ago

Last modified 9 months ago

#5280 closed enhancement (fixed)

Add libxcrypt and use it instead of Glibc libcrypt

Reported by: Xi Ruoyao Owned by: Xi Ruoyao
Priority: normal Milestone: 12.0
Component: Book Version: git
Severity: normal Keywords:
Cc:

Description

Glibc developers consider Glibc libcrypt implementation deprecated, and libcrypt may be disabled by default in Glibc-2.38 (a patch is under review now).

As libcrypt is security-related, it seems a bad idea to override the upstream decision and stick with the deprecated implementation. Many distros has already switched to libxcrypt for providing libcrypt.so.

We can add libxcrypt immediately before shadow, which is the first package in LFS using libcrypt.

Change History (7)

comment:1 by Xi Ruoyao, 10 months ago

Oh-oh, Perl links to libcrypt.so as well so maybe we need to build libxcrypt in Chapter 7 before Perl. Or maybe we can find a way to disable it for Chapter 7 Perl.

Last edited 10 months ago by Xi Ruoyao (previous) (diff)

in reply to:  1 comment:2 by Xi Ruoyao, 10 months ago

Replying to Xi Ruoyao:

Oh-oh, Perl links to libcrypt.so as well so maybe we need to build libxcrypt in Chapter 7 before Perl. Or maybe we can find a way to disable it for Chapter 7 Perl.

The dependency for Perl is optional. In Chapter 6 we need to disable libsanitizer for GCC pass 2 because building libsanitizer needs the header of libcrypt.

The work is done in the xry111/libxcrypt branch.

comment:3 by Xi Ruoyao, 10 months ago

I'd merge the branch into trunk in mid July if no objection, for sorting things out before Glibc-2.38 update.

comment:4 by Bruce Dubbs, 10 months ago

Let's do the merge as soon as the 6.4.1 kernel comes out.

comment:5 by Xi Ruoyao, 10 months ago

Owner: changed from lfs-book to Xi Ruoyao
Status: newassigned

comment:6 by Xi Ruoyao, 10 months ago

Resolution: fixed
Status: assignedclosed

Fixed at r11.3-130-g48834cf19:

  • 48834cf19 (Merge branch 'xry111/libxcrypt' into trunk, 2023-07-03)
  • 9ceb62340 (Package update, 2023-07-03)
  • ac5f78c4b (Merge branch 'trunk' into xry111/libxcrypt, 2023-07-02)
  • 1adc94143 (dependencies: Add Libxcrypt dependency info, 2023-06-30)
  • f652d5bb2 (gcc-pass2: Disable libsanitizer, 2023-06-30)
  • c727d7e7f (Add libxcrypt, 2023-06-30)
  • bbfb090d2 (glibc: Disable obsolete libcrypt implementation, 2023-06-30)

comment:7 by Bruce Dubbs, 9 months ago

Milestone: 11.412.0

Milestone renamed

Note: See TracTickets for help on using tickets.