Lines Matching refs:hint
632 rtm_scrub_ifscope(int type, int idx, struct sockaddr *hint, struct sockaddr *sa,
661 * of the hint sockaddr (RTAX_{DST,IFA}) as indicator as to
668 if (hint == NULL ||
669 ((af = hint->sa_family) != AF_INET && af != AF_INET6))
682 * the corresponding expected values of the hint.
684 if (hint->sa_family == AF_INET)
695 if (hint->sa_family == AF_INET6 &&
3334 struct rtentry *rt = hint0, *hint = hint0;
3363 hint = rt = rtalloc1_scoped((struct sockaddr *)
3365 if (hint != NULL) {
3383 VERIFY(rt == hint);
3384 RT_ADDREF_LOCKED(hint);
3425 VERIFY(rt == hint);
3426 RT_REMREF_LOCKED(hint);
3427 hint = NULL;
3441 VERIFY(rt == hint);
3442 RT_REMREF_LOCKED(rt); /* hint still holds a refcnt */
3449 VERIFY(rt == hint);
3450 RT_REMREF_LOCKED(rt); /* hint still holds a refcnt */
3454 VERIFY(rt == gwrt && rt != hint);
3459 * Parent route won't go away since the clone (hint) holds
3462 RT_LOCK_SPIN(hint);
3463 if ((hint->rt_flags & (RTF_WASCLONED | RTF_UP)) ==
3465 struct rtentry *prt = hint->rt_parent;
3468 RT_CONVERT_LOCK(hint);
3470 RT_UNLOCK(hint);
3474 RT_UNLOCK(hint);
3477 /* Clean up "hint" now; see notes above regarding hint0 */
3478 if (hint == hint0)
3479 RT_REMREF(hint);
3481 rtfree(hint);
3482 hint = NULL;