Subject: icmp_mtudisc(): refcnt issue?
To: None <tech-net@netbsd.org>
From: None <itojun@iijlab.net>
List: tech-net
Date: 10/07/1999 21:10:03
I have a small question (maybe I'm sutpid) about
sys/netinet6/ip_icmp.c:icmp_mtudisc().
The function makes cloned route for recording PMTU for peer,
and assigns timeout function (icmp_mtudisc_timeout) to the route entry.
The function calls rtfree() at the end, so it sets reference count
on route entry unchanged.
My question is, who makes sure that the entry is still there on
the call to icmp_mtudisc_timeout(), usually happens 10min later?
My imagination was that icmp_mtudisc() would increase reference count
on the route entry for that (by NOT calling rtfree()), but the
implemented behavior does not match my imagination. Could someone
let me know the trick? (or am I lucky?)
itojun