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

NAME


net_lifgetnext - search through a list of logical network interfaces

SYNOPSIS


#include <sys/neti.h>

net_if_t net_lifgetnext(const net_data_t net, const phy_if_t ifp,
net_if_t lif);


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).


lif
value returned from a successful call to this function.


DESCRIPTION


The net_lifgetnext() function is used to search through all of the
logical interfaces that are associated with a physical network
interface. To start searching through this list, a value of 0 should
be passed through as the value of lif. When 0 is returned by this
function, the last of the interfaces owned by this protocol has been
reached.


When called successfully, the value returned represents a logical
interface that exists, at the time of the call, within the scope of
the network interface and its assigned network protocol. This value
is only guaranteed to be unique for a name within the scope of the
network interface and its assigned protocol.

EXAMPLES


net_data_t net;
phy_if_t ifp;
net_if_t lif;
char buffer[32];
net_ifaddr_t atype[1];
struct sockaddr_in sin[1];

net = net_protocol_lookup("inet");

if (net != NULL) {
atype[0] = NA_ADDRESS;
ifp = net_phylookup(net, "hme0");
for (lif = net_lifgetnext(net, 0); lif != 0;
lif = net_lifgetnext(net, lif)) {
/* Do something with lif */
if (net_getlifaddr(net, ifp, lif, 1, atype, sin) == 0)
printf("hme0:%d %x0, lif,
ntohl(sin[0].sin_addr.s_addr));
}
}


RETURN VALUES


The net_lifgetnext() function returns a value of -1 if it is not
supported by the network protocol and a value of 0 if an attempt to
go beyond the last network interface is made. Otherwise, it returns a
value representing a network interface.

CONTEXT


The net_lifgetnext() 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_phygetnext(9F), net_phylookup(9F)

May 1, 2008 NET_LIFGETNEXT(9F)

tribblix@gmail.com :: GitHub :: Privacy