nd6.h Reference

Declared in
nd6.h

Overview

Included Headers

  • <sys/appleapiopts.h>

  • <sys/queue.h>

Functions

See the Overview for header-level documentation.

nd6_lookup_ipv6

extern errno_t nd6_lookup_ipv6(
   ifnet_t interface,
   const struct sockaddr_in6 *ip6_dest,
   struct sockaddr_dl *ll_dest,
   size_t ll_dest_len,
   route_t hint,
   mbuf_t packet);
Parameters
interface

The interface the packet is being sent on.

ip6_dest

The IPv6 destination of the packet.

ll_dest

On output, the link-layer destination.

ll_dest_len

The length of the buffer for ll_dest.

hint

Any routing hint passed down from the protocol.

packet

The packet being transmitted.

Return Value

May return an error such as EHOSTDOWN or ENETUNREACH. If this function returns EJUSTRETURN, the packet has been queued and will be sent when the address is resolved. If any other value is returned, the caller is responsible for disposing of the packet.

Discussion

This function will check the routing table for a cached neighbor discovery entry or trigger an neighbor discovery query to resolve the IPv6 address to a link-layer address.

nd entries are stored in the routing table. This function will lookup the IPv6 destination in the routing table. If the destination requires forwarding to a gateway, the route of the gateway will be looked up. The route entry is inspected to determine if the link layer destination address is known. If unknown, neighbor discovery will be used to resolve the entry.

Availability
  • Available in OS X v10.4 through OS X v10.5.
Declared In
nd6.h