Starting in `libc6 2.29-5`, the Lintian test
`t/tags/checks/binaries/binaries-obsolete-des` fails in `unstable`:

cc -g -O2 
-fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro
-Wl,-z,now uses-fcrypt.o -o uses-fcrypt -lcrypt
/usr/bin/ld: uses-fcrypt.o: in function `main':
./uses-fcrypt.c:19: undefined reference to `fcrypt'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:34: uses-fcrypt] Error 1

Perhaps is it time to remove the test (and the tag
`obsolete-des-encryption`). Was `fcrypt` dropped entirely, or is it
still provided by `libcrypt`?

I do not understand the impact of this commit:


Here is the code that did not link:

/* This program uses the obsolete function 'fcrypt',
   which is an alias for 'crypt'.  */

#include <crypt.h>
#include <stdio.h>

/* The prototype may already have been removed from crypt.h.  */
extern char *fcrypt(const char *, const char *);

/* It may already not be possible to link new programs that use
   'fcrypt' without special magic.  */
#ifdef SYMVER
__asm__ (".symver fcrypt, fcrypt@" SYMVER);

    puts(fcrypt("password", "Dn"));
    return 0;

Thanks for your guidance!

Kind regards,
Felix Lechner

Reply via email to