Cleanup temp SLAAC address jobs on DAD conflicts

Previously, when DAD would detect a conflict for a temporary address,
the address would be removed but its timers would not be stopped,
resulting in a panic when the removed address's invalidation timer
fired.

While I'm here, remove the check for unicast-ness on removed address
endpoints since multicast addresses are no longer stored in the same
structure as unicast addresses as of ab40e616341aa46d12ca1264b4036fc75b3.

Test: stack_test.TestMixedSLAACAddrConflictRegen
PiperOrigin-RevId: 359344849

This is a cherry pick of af8abf1.

This cherry pick needed to exclude `dadFailure`
from ipv6.endpoint.removePermanentEndpointInnerLocked as the parent
commits do not include 47454095c0da5bf2534391f21f3e034b8f534c72.

Test: fx test //src/connectivity/network/tests/integration
Bug: 70723
Change-Id: I9d0a2cb6f22265caa40db67e53e7f26e512f4ea1
2 files changed
tree: 982f2eeb41700eab4f4b39aff9149b5c2667960a
  1. pkg/
  2. AUTHORS
  3. go.mod
  4. go.sum
  5. LICENSE