mbox series

[0/2] Remove libcrypt support

Message ID 20230921130617.468601-1-adhemerval.zanella@linaro.org
Headers show
Series Remove libcrypt support | expand

Message

Adhemerval Zanella Netto Sept. 21, 2023, 1:06 p.m. UTC
The libcrypt is no longer built by default since 2.38, it lacks
support for newer password hashing schmes, and the code has some
code issues (like extensive use of alloca, where not all
architectures have stack haderning support).

libxcrypt [1] provides full support along with ABI compatbility,
meaning it is a drop-in replacement without the need to either
code changes or rebuilding.  It is also provided with a similar
licensing (LGPL 2.1).

[1] https://github.com/besser82/libxcrypt

Adhemerval Zanella (2):
  sparc: Remove optimize md5, sha256, and sha512
  crypt: Remove libcrypt support

 INSTALL                                       |  13 -
 Makeconfig                                    |   5 -
 NEWS                                          |   5 +-
 SHARED-FILES                                  |   2 -
 config.make.in                                |   4 -
 configure                                     | 126 ---
 configure.ac                                  |  65 --
 conform/Makefile                              |   5 -
 crypt/Makefile                                |  69 --
 crypt/README.ufc-crypt                        | 135 ---
 crypt/Versions                                |   5 -
 crypt/badsalttest.c                           |  54 -
 crypt/cert.c                                  | 135 ---
 crypt/cert.input                              | 171 ----
 crypt/crypt-entry.c                           | 183 ----
 crypt/crypt-private.h                         |  76 --
 crypt/crypt.c                                 | 115 ---
 crypt/crypt.h                                 |  70 --
 crypt/crypt_util.c                            | 946 ------------------
 crypt/md5-crypt.c                             | 331 ------
 crypt/md5c-test.c                             |  18 -
 crypt/md5test-giant.c                         | 137 ---
 crypt/md5test.c                               |  53 -
 crypt/sha256-block.c                          |  98 --
 crypt/sha256-crypt.c                          | 423 --------
 crypt/sha256.c                                | 193 ----
 crypt/sha256.h                                |  69 --
 crypt/sha256c-test.c                          |  61 --
 crypt/sha256test.c                            | 102 --
 crypt/sha512-block.c                          | 105 --
 crypt/sha512-crypt.c                          | 445 --------
 crypt/sha512.c                                | 221 ----
 crypt/sha512.h                                |  72 --
 crypt/sha512c-test.c                          |  63 --
 crypt/sha512test.c                            | 113 ---
 crypt/speeds.c                                | 153 ---
 crypt/ufc-crypt.h                             |  28 -
 crypt/ufc.c                                   |  54 -
 elf/Makefile                                  |  38 -
 elf/tst-linkall-static.c                      |   6 -
 include/crypt.h                               |   3 -
 locale/Makefile                               |   4 +-
 locale/programs/locarchive.c                  |   2 +-
 locale/programs/locfile.c                     |   2 +-
 {crypt => locale/programs}/md5-block.c        |   0
 {crypt => locale/programs}/md5.c              | 104 +-
 {crypt => locale/programs}/md5.h              |  46 +-
 manual/crypt.texi                             | 196 +---
 manual/examples/genpass.c                     |  59 --
 manual/examples/testpass.c                    |  67 --
 manual/install.texi                           |  13 -
 manual/users.texi                             |  15 +-
 posix/unistd.h                                |  10 -
 scripts/build-many-glibcs.py                  |   9 +-
 scripts/documented.sh                         |   2 +-
 sysdeps/generic/fips-private.h                |  36 -
 sysdeps/generic/libcrypt.abilist              |   0
 sysdeps/mach/Makefile                         |   4 +-
 sysdeps/mach/hurd/i386/libcrypt.abilist       |   7 -
 sysdeps/mach/hurd/x86_64/libcrypt.abilist     |   2 -
 .../sparc/sparc32/sparcv9/multiarch/Makefile  |   8 -
 .../sparc32/sparcv9/multiarch/md5-block.c     |   1 -
 .../sparc32/sparcv9/multiarch/md5-crop.S      |   1 -
 .../sparc32/sparcv9/multiarch/sha256-block.c  |   1 -
 .../sparc32/sparcv9/multiarch/sha256-crop.S   |   1 -
 .../sparc32/sparcv9/multiarch/sha512-block.c  |   1 -
 .../sparc32/sparcv9/multiarch/sha512-crop.S   |   1 -
 sysdeps/sparc/sparc64/multiarch/Makefile      |   8 -
 sysdeps/sparc/sparc64/multiarch/md5-block.c   |  29 -
 sysdeps/sparc/sparc64/multiarch/md5-crop.S    | 109 --
 .../sparc/sparc64/multiarch/sha256-block.c    |  32 -
 sysdeps/sparc/sparc64/multiarch/sha256-crop.S | 100 --
 .../sparc/sparc64/multiarch/sha512-block.c    |  32 -
 sysdeps/sparc/sparc64/multiarch/sha512-crop.S | 130 ---
 .../unix/sysv/linux/aarch64/libcrypt.abilist  |   7 -
 .../unix/sysv/linux/alpha/libcrypt.abilist    |   7 -
 sysdeps/unix/sysv/linux/arc/libcrypt.abilist  |   2 -
 sysdeps/unix/sysv/linux/arm/Makefile          |   4 -
 .../unix/sysv/linux/arm/be/libcrypt.abilist   |   7 -
 .../unix/sysv/linux/arm/le/libcrypt.abilist   |   7 -
 sysdeps/unix/sysv/linux/csky/libcrypt.abilist |   2 -
 sysdeps/unix/sysv/linux/fips-private.h        |  74 --
 sysdeps/unix/sysv/linux/hppa/libcrypt.abilist |   7 -
 sysdeps/unix/sysv/linux/i386/libcrypt.abilist |   7 -
 sysdeps/unix/sysv/linux/ia64/libcrypt.abilist |   7 -
 .../linux/loongarch/lp64/libcrypt.abilist     |   2 -
 .../sysv/linux/m68k/coldfire/libcrypt.abilist |   7 -
 .../sysv/linux/m68k/m680x0/libcrypt.abilist   |   7 -
 .../sysv/linux/microblaze/be/libcrypt.abilist |   7 -
 .../sysv/linux/microblaze/le/libcrypt.abilist |   7 -
 .../sysv/linux/mips/mips32/libcrypt.abilist   |   7 -
 .../sysv/linux/mips/mips64/libcrypt.abilist   |   7 -
 .../unix/sysv/linux/nios2/libcrypt.abilist    |   7 -
 sysdeps/unix/sysv/linux/or1k/libcrypt.abilist |   2 -
 .../linux/powerpc/powerpc32/libcrypt.abilist  |   7 -
 .../powerpc/powerpc64/be/libcrypt.abilist     |   7 -
 .../powerpc/powerpc64/le/libcrypt.abilist     |   7 -
 .../sysv/linux/riscv/rv32/libcrypt.abilist    |   2 -
 .../sysv/linux/riscv/rv64/libcrypt.abilist    |   7 -
 .../sysv/linux/s390/s390-32/libcrypt.abilist  |   7 -
 .../sysv/linux/s390/s390-64/libcrypt.abilist  |   7 -
 .../unix/sysv/linux/sh/be/libcrypt.abilist    |   7 -
 .../unix/sysv/linux/sh/le/libcrypt.abilist    |   7 -
 .../sysv/linux/sparc/sparc32/libcrypt.abilist |   7 -
 .../sysv/linux/sparc/sparc64/libcrypt.abilist |   7 -
 .../sysv/linux/x86_64/64/libcrypt.abilist     |   7 -
 .../sysv/linux/x86_64/x32/libcrypt.abilist    |   7 -
 107 files changed, 39 insertions(+), 6233 deletions(-)
 delete mode 100644 crypt/Makefile
 delete mode 100644 crypt/README.ufc-crypt
 delete mode 100644 crypt/Versions
 delete mode 100644 crypt/badsalttest.c
 delete mode 100644 crypt/cert.c
 delete mode 100644 crypt/cert.input
 delete mode 100644 crypt/crypt-entry.c
 delete mode 100644 crypt/crypt-private.h
 delete mode 100644 crypt/crypt.c
 delete mode 100644 crypt/crypt.h
 delete mode 100644 crypt/crypt_util.c
 delete mode 100644 crypt/md5-crypt.c
 delete mode 100644 crypt/md5c-test.c
 delete mode 100644 crypt/md5test-giant.c
 delete mode 100644 crypt/md5test.c
 delete mode 100644 crypt/sha256-block.c
 delete mode 100644 crypt/sha256-crypt.c
 delete mode 100644 crypt/sha256.c
 delete mode 100644 crypt/sha256.h
 delete mode 100644 crypt/sha256c-test.c
 delete mode 100644 crypt/sha256test.c
 delete mode 100644 crypt/sha512-block.c
 delete mode 100644 crypt/sha512-crypt.c
 delete mode 100644 crypt/sha512.c
 delete mode 100644 crypt/sha512.h
 delete mode 100644 crypt/sha512c-test.c
 delete mode 100644 crypt/sha512test.c
 delete mode 100644 crypt/speeds.c
 delete mode 100644 crypt/ufc-crypt.h
 delete mode 100644 crypt/ufc.c
 delete mode 100644 include/crypt.h
 rename {crypt => locale/programs}/md5-block.c (100%)
 rename {crypt => locale/programs}/md5.c (65%)
 rename {crypt => locale/programs}/md5.h (74%)
 delete mode 100644 manual/examples/genpass.c
 delete mode 100644 manual/examples/testpass.c
 delete mode 100644 sysdeps/generic/fips-private.h
 delete mode 100644 sysdeps/generic/libcrypt.abilist
 delete mode 100644 sysdeps/mach/hurd/i386/libcrypt.abilist
 delete mode 100644 sysdeps/mach/hurd/x86_64/libcrypt.abilist
 delete mode 100644 sysdeps/sparc/sparc32/sparcv9/multiarch/md5-block.c
 delete mode 100644 sysdeps/sparc/sparc32/sparcv9/multiarch/md5-crop.S
 delete mode 100644 sysdeps/sparc/sparc32/sparcv9/multiarch/sha256-block.c
 delete mode 100644 sysdeps/sparc/sparc32/sparcv9/multiarch/sha256-crop.S
 delete mode 100644 sysdeps/sparc/sparc32/sparcv9/multiarch/sha512-block.c
 delete mode 100644 sysdeps/sparc/sparc32/sparcv9/multiarch/sha512-crop.S
 delete mode 100644 sysdeps/sparc/sparc64/multiarch/md5-block.c
 delete mode 100644 sysdeps/sparc/sparc64/multiarch/md5-crop.S
 delete mode 100644 sysdeps/sparc/sparc64/multiarch/sha256-block.c
 delete mode 100644 sysdeps/sparc/sparc64/multiarch/sha256-crop.S
 delete mode 100644 sysdeps/sparc/sparc64/multiarch/sha512-block.c
 delete mode 100644 sysdeps/sparc/sparc64/multiarch/sha512-crop.S
 delete mode 100644 sysdeps/unix/sysv/linux/aarch64/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/alpha/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/arc/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/arm/be/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/arm/le/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/csky/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/fips-private.h
 delete mode 100644 sysdeps/unix/sysv/linux/hppa/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/i386/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/ia64/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/loongarch/lp64/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/m68k/coldfire/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/m68k/m680x0/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/microblaze/be/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/microblaze/le/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips32/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/mips/mips64/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/nios2/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/or1k/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/powerpc/powerpc32/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/powerpc/powerpc64/be/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/powerpc/powerpc64/le/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/riscv/rv32/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/riscv/rv64/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/s390/s390-32/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/s390/s390-64/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/sh/be/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/sh/le/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/sparc/sparc32/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/sparc/sparc64/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/x86_64/64/libcrypt.abilist
 delete mode 100644 sysdeps/unix/sysv/linux/x86_64/x32/libcrypt.abilist