Skip to content

ndisc: accept unknown ip6-privacy value

Beniamino Galvani requested to merge bg/ip6-privacy-ndisc into main

Summary

The value can be unknown for different reasons:

  • we don't have a value saved in NMDevice's "ip6_saved_properties" because NM was restarted or because the device didn't have an ifindex when it became managed.

  • the value read from /proc is outside the allowed range (kernel allows "echo 42 > /proc/sys/net/ipv6/conf/enp1s0/use_tempaddr")

Note that the second case was also possible before commit 797f3caf ('device: fall back to saved use_tempaddr value instead of rereading /proc').

If we can't determine the previous value, pass "unknown" to ndisc; it will generate a l3cd with "unknown" ip6-privacy, which means to not set the value when committing the configuration.

Fixes: 797f3caf ('device: fall back to saved use_tempaddr value instead of rereading /proc')

Checklist

Please read https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/blob/main/CONTRIBUTING.md before opening the merge request. In particular, check that:

  • the subject for all commits is concise and explicative
  • the message for all commits explains the reason for the change
  • the source is properly formatted
  • any relevant documentation is up to date
  • you have added unit tests if applicable
  • the NEWS file is updated when the change deserves to be mentioned, for example for new features, behavior changes, API deprecations, etc.

Resolves: https://issues.redhat.com/browse/RHEL-30348

Edited by Beniamino Galvani

Merge request reports