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

net_phygetnext - search through the current list of network interfaces

#include <sys/neti.h>
phy_if_t net_phygetnext(const net_data_t net, const phy_if_t ifp);

illumos DDI specific (illumos DDI).

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

ifp

value returned from a successful call to this function or net_phylookup(9F).

The net_phygetnext() function searches through all of the network interfaces that a network protocol "owns". To start searching through all of the interfaces owned by a protocol, a value of 0 should be passed through as the value of ifp. 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 network interface that exists, at the time of the call, within the scope of the network interface. This value is only guaranteed to be unique for a name within the scope of the network protocol.


   net_data_t net;
    phy_if_t ifp;
    char buffer[32];
    net = net_protocol_lookup("inet");
    if (net != NULL) {
         for (ifp = net_phygetnext(net, 0); ifp != 0;
              ifp = net_phygetnext(net, ifp)) {
              /* Do something with ifp */
              if (net_getifname(net, ifp, buffer,
                   sizeof(buffer) >= 0)
                    printf("Interface %s0, buffer);
          }
      }

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

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

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

ATTRIBUTE TYPE ATTRIBUTE VALUE
Interface Stability Committed

net_phylookup(9F), net_protocol_lookup(9F), attributes(5)
May 1, 2008 OmniOS