FreeBSD/sys/netinet6/in6_mcast.c
/*
 * Clear recorded source entries for a group.
 * Used by the MLD code. Caller must hold the IN6_MULTI lock.
 * FIXME: Should reap.
 */
Clear recorded source entries for a group.
Used by the MLD code. Caller must hold the IN6_MULTI lock.
FIXME: Should reap.
Clear recorded source entries for a group . Used by the MLD code . Caller must hold the IN6_MULTI lock . FIXME : Should reap .
void
in6m_clear_recorded(struct in6_multi *inm)
{
	struct ip6_msource	*ims;
	IN6_MULTI_LOCK_ASSERT();
	RB_FOREACH(ims, ip6_msource_tree, &inm->in6m_srcs) {
		if (ims->im6s_stp) {
			ims->im6s_stp = 0;
			--inm->in6m_st[1].iss_rec;
		}
	}
	KASSERT(inm->in6m_st[1].iss_rec == 0,
	    ("%s: iss_rec %d not 0", __func__, inm->in6m_st[1].iss_rec));
}
void in6m_clear_recorded ( struct in6_multi * inm ) { struct ip6_msource * ims ; IN6_MULTI_LOCK_ASSERT ( ) ; RB_FOREACH ( ims , ip6_msource_tree , & inm -> in6m_srcs ) { if ( ims -> im6s_stp ) { ims -> im6s_stp = 0 ; -- inm -> in6m_st [ 1 ] . iss_rec ; } } KASSERT ( inm -> in6m_st [ 1 ] . iss_rec == 0 , ( " " , __func__ , inm -> in6m_st [ 1 ] . iss_rec ) ) ; }
Clear recorded source entries for a group.
Clear recorded source entries for a group .