if (!dst_check(dst->path, 0) || 
if (!dst_check(dst->path, ((struct xfrm_dst *)dst)->path_cookie) || 
int xfrm_bundle_ok(struct xfrm_dst *first, struct flowi *fl, int family){	struct dst_entry *dst = &first->u.dst;	struct xfrm_dst *last;	u32 mtu;	if (!dst_check(dst->path, 0) ||	    (dst->dev && !netif_running(dst->dev)))		return 0;	last = NULL;	do {		struct xfrm_dst *xdst = (struct xfrm_dst *)dst;		if (fl && !xfrm_selector_match(&dst->xfrm->sel, fl, family))			return 0;		if (dst->xfrm->km.state != XFRM_STATE_VALID)			return 0;		mtu = dst_mtu(dst->child);		if (xdst->child_mtu_cached != mtu) {			last = xdst;			xdst->child_mtu_cached = mtu;		}		if (!dst_check(xdst->route, 0))			return 0;		mtu = dst_mtu(xdst->route);		if (xdst->route_mtu_cached != mtu) {			last = xdst;			xdst->route_mtu_cached = mtu;		}		dst = dst->child;	} while (dst->xfrm);	if (likely(!last))		return 1;	mtu = last->child_mtu_cached;	for (;;) {		dst = &last->u.dst;		mtu = xfrm_state_mtu(dst->xfrm, mtu);		if (mtu > last->route_mtu_cached)			mtu = last->route_mtu_cached;		dst->metrics[RTAX_MTU-1] = mtu;		if (last == first)			break;		last = last->u.next;		last->child_mtu_cached = mtu;	}	return 1;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/92d63decc0b6a5d600f792fcf5f3ff9718c09a3d/xfrm_policy.c/clean/net/xfrm/xfrm_policy.c