This does *not* appear to resolve a closely related problem where the link-local address has not yet been assigned. See LP: 1718568
In brief, the loop
case " $out " in *\ dadfailed\ *) error "$dev: ipv6 dad failed." return 1;; *\ tentative\ *) :;; *) return 0;; esac
exits with 'return 0' with the lack of a link-local address as " " ($out empty) matches the default pattern as would a valid, link-local address.
One possible solution is to add "the missing case" that matches $out being empty that performs the "wait and try again" action.
This does *not* appear to resolve a closely related problem where the link-local address has not yet been assigned. See LP: 1718568
In brief, the loop
case " $out " in
error "$dev: ipv6 dad failed."
return 1;;
*\ dadfailed\ *)
*\ tentative\ *) :;;
*) return 0;;
esac
exits with 'return 0' with the lack of a link-local address as " " ($out empty) matches the default pattern as would a valid, link-local address.
One possible solution is to add "the missing case" that matches $out being empty that performs the "wait and try again" action.