C
Sun RPC Interfaces Moved From glibc To libtirpc
Fedora 28 now uses libtirpc to implement the Sun RPC protocol.
The glibc imlementation of Sun RPC was not compatible with IPv6 and adding IPv6 support would have required a change to the glibc ABI. As a result, the Sun RPC implementation was moved to a separate library, libtirpc, which has been packaged in Fedora since Fedora 7. Sun RPC support in glibc has been deprecated for a long time and this change aligns Fedora with the upstream projects.
Libcrypt replaced by libxcrypt in glibc
In reaction to plans to remove the libcrypt library from glibc, this
update replaces libcrypt in Fedora’s version of glibc with the
libxcrypt library. The use of the libxcrypt library allows easier
integration of new hashing algorithms, promises the benefits of a faster
development cycle than libcrypt, and provides support for all hashing
algorithms ever introduced to the crypt()
function.
Compatibility
The libxcrypt library is backwards binary compatible with libcrypt.so.1
shipped as a part of the GNU C Library. Therefore, all binaries built
against libcrypt should work without modifications with libcrypt.so.1
provided by libxcrypt. It is, however, not possible to recompile programs
that use the following legacy APIs supplied by libcrypt against
libxcrypt: encrypt
, encrypt_r
, setkey
, setkey_r
, and fcrypt
.
There is, also, no reverse compatibility. Therefore, binaries linked against
libcrypt.so.1
provided by libxcrypt will not work with glibc's default
libcrypt.
To list all packages built against libcrypt, run the following command:
sudo dnf repoquery --whatrequires 'libcrypt.so*' | sed -e 's!-[0-9]\+.*$!!g' | sort -u
The GNU C Library version 2.27
Fedora 28 provides the GNU C Library (glibc) version 2.27.
See the release announcement for full information about changes brought by this version, and the glibc wiki entry about this release which contains a section on packaging changes. Also note the separate change related to glibc described in Sun RPC Interfaces Moved From glibc To libtirpc.
Want to help? Learn how to contribute to Fedora Docs ›