From Fedora Project Wiki

Revision as of 17:53, 9 January 2018 by Hhorak (talk | contribs) (add rcm ticket)

NIS switching to new libnsl to support IPv6

Summary

This system-wide change covers the switch of NIS components to the new client side implementation in order to support IPv6, while detaching libnsl and nss_nis packages, previously bundled together with glibc.

Owner

Current status

  • Targeted release: Fedora 28
  • Last updated: 2018-01-09
  • Tracker bug: <will be assigned by the Wrangler>

Detailed Description

glibc bundles the client part of NIS, while this implementation is not compatible with IPv6, due to the way addresses are represented. NIS upstream added NIS support for the server and client tools, but for being able to use this feature, the libnsl and nss_nis needs to be rebased to the new version. Since NIS has been part of glibc for long time and it doesn't seem to be necessary (especially given the NIS is an obsoleted technology for years), it is better to detach those two packages and deliver them as a separate library.

This change is also related to Sun RPC Removal Change.

Benefit to Fedora

After switching to libnsl2, applications using the NIS will support IPv6.

NIS support in glibc have been deprecated for a long time and is explicitly enabled in the Fedora build. This change aligns Fedora glibc with current upstream owners.

Scope

  • Proposal owners: Provide the NIS client implementation as separate packages, and adjust the glibc packaging to remove the nss_nis subpackage, the NIS header files, and move libnsl to a new subpackage.
  • Other developers:
    • Packages which used to depend on the libnsl library from glibc will need to add BuildRequires: libnsl2-devel.
  • Release engineering: #7256 (a check of an impact with Release Engineering is needed)
  • Policies and guidelines: N/A (not needed for this Change; covered by the existing Packaging Guidelines)
  • Trademark approval: N/A (not needed for this Change)

Upgrade/compatibility impact

Support for existing binaries is preserved.

How To Test

Regular system testing on IPv4 and IPv6 networks will cover this change.

User Experience

Users will enjoy IPv6 support.

Dependencies

This change is also related to Sun RPC Removal Change.

Contingency Plan

  • Contingency mechanism: Revert the glibc changes and reintroduce the deprecated interfaces.
  • Contingency deadline: alpha
  • Blocks release? no
  • Blocks product? N/A

Documentation

Release Notes

Fedora 28 uses new libnsl to support IPv6 for NIS functionality.