NET_GETLIFADDR(9F) Kernel Functions for Drivers NET_GETLIFADDR(9F)

NAME


net_getlifaddr - determine a network address for a given interface

SYNOPSIS


#include <sys/neti.h>

int net_getlifaddr(const net_data_t net, const phy_if_t ifp,
const net_if_t lif, int const type,
struct sockaddr* storage);


INTERFACE LEVEL


illumos DDI specific (illumos DDI).

PARAMETERS


net
value returned from a successful call to
net_protocol_lookup(9F).


ifp
value returned from a successful call to net_phylookup(9F) or
net_phygetnext(9F), indicating which network interface the
information should be returned from.


lif
indicates the logical interface from which to fetch the
address.


type
indicates what type of address should be returned. See below
for more details on this field.


storage
pointer to an area of memory to store the address data.


DESCRIPTION


The net_getlifaddr() function retrieves the address information for each
logical interface. Each call to net_getlifaddr() requires that the caller
pass a pointer to an array of address information types to retrieve, and
an accompanying pointer to an array of pointers to struct sockaddr
structures to which to copy the address information. See
net_lifgetnext(9F) for an example on how to use this function.


Each member of the address type array should be one of the values listed
here.

NA_ADDRESS
Return the network address associated with the logical
interface (lif) that belongs to the network interface
(ifp).


NA_PEER
Return the address assigned to the remote host for point
to point network interfaces for the given network/logical
interface.


NA_BROADCAST
Return the broadcast address assigned to the given
network/logical interface for network interfaces that
support broadcast packets.


NA_NETMASK
Return the netmask associated with the given
network/logical interface for network interfaces that
support broadcast packets.


RETURN VALUES


The net_getlifaddr() function returns:

-1
The network protocol does not support this function.


0
Successful completion.


1
Unsuccessful.


CONTEXT


The net_getifaddr() function may be called from user, kernel, or
interrupt context.

ATTRIBUTES


See attributes(7) for descriptions of the following attributes:


+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Committed |
+--------------------+-----------------+

SEE ALSO


net_lifgetnext(9F), net_phygetnext(9F), net_phylookup(9F),
net_protocol_lookup(9F)

October 13, 2008 NET_GETLIFADDR(9F)