| 2449 | } |
| 2450 | |
| 2451 | int |
| 2452 | nd6_flush_holdchain(struct ifnet *ifp, struct mbuf *chain, |
| 2453 | struct sockaddr_in6 *dst) |
| 2454 | { |
| 2455 | struct mbuf *m, *m_head; |
| 2456 | int error = 0; |
| 2457 | |
| 2458 | m_head = chain; |
| 2459 | |
| 2460 | while (m_head) { |
| 2461 | m = m_head; |
| 2462 | m_head = m_head->m_nextpkt; |
| 2463 | m->m_nextpkt = NULL; |
| 2464 | error = nd6_output_ifp(ifp, ifp, m, dst, NULL); |
| 2465 | } |
| 2466 | |
| 2467 | /* |
| 2468 | * XXX |
| 2469 | * note that intermediate errors are blindly ignored |
| 2470 | */ |
| 2471 | return (error); |
| 2472 | } |
| 2473 | |
| 2474 | static int |
| 2475 | nd6_need_cache(struct ifnet *ifp) |
no test coverage detected