On 2021-11-28 05:13 UTC, Klemens Nanni <k...@openbsd.org> wrote:
> On Thu, Nov 18, 2021 at 09:02:00AM +0100, Florian Obser wrote:
>>     This might be the crash kn@ was seeing once in a blue moon.
>
> I somewhat doubt it, since slaacd crashed on my notebook using trunk(4)
> over em(4) and athn(4), none of these interface get destroyed.
>
> I toggle the autoconf, set IPs, etc. but once trunk0 has its interface
> index, it'll stay the same until reboot.

Oh, but this is not just about autoconf interfaces, it's about *all*
interfaces. Look at the RTM_NEWADDR case in handle_route_message().

If it gets a NULL if_name for *any* interface it happily passes this to
update_iface() -> get_flags() -> strlcpy -> boom. It doesn't yet know if
it's an autoconf interface, it currently tries to figure that out.

You can probably crash slaacd like this:

while :; do ifconfig vether0 inet 2001:db8::23/64; ifconfig vether0 destroy; 
done

The route socket is restricted to AF_INET6, so you need to fiddle around
with IPv6 addresses...

-- 
I'm not entirely sure you are real.

Reply via email to