NET_PROTOCOL_LOOKUP(9F) Kernel Functions for Drivers
net_protocol_lookup - locate an implementation of a network layer
protocol
#include <sys/neti.h>
net_handle_t net_protocol_lookup(netid_t id, const char *protocol);
illumos DDI specific (illumos DDI).
id
network instance identifier.
family
name of the network protocol to find.
The net_protocol_lookup() function attempts to locate a data
structure that defines what capabilities it is exporting through this
interface. The value returned by this call is guaranteed to be valid
until it is passed into a call to net_protocol_release(9F), after
which it should no longer be treated as valid.
The protocol must be a registered name of a network protocol that has
been registered. The symbols NHF_INET and NHF_INET6 should be passed
to net_protocol_lookup() as the protocol name to gain access to
either IPv4 or IPv6 respectively.
The net_protocol_lookup() function returns NULL if it does not find
any knowledge about the network protocol referenced. Otherwise, it
returns a value that can be used with other calls in this framework.
The net_protocol_lookup() function may be called from user, kernel,
or interrupt context.
See attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Committed |
+--------------------+-----------------+
attributes(7), net_protocol_release(9F)
March 5, 2012 NET_PROTOCOL_LOOKUP(9F)
NAME
net_protocol_lookup - locate an implementation of a network layer
protocol
SYNOPSIS
#include <sys/neti.h>
net_handle_t net_protocol_lookup(netid_t id, const char *protocol);
INTERFACE LEVEL
illumos DDI specific (illumos DDI).
PARAMETERS
id
network instance identifier.
family
name of the network protocol to find.
DESCRIPTION
The net_protocol_lookup() function attempts to locate a data
structure that defines what capabilities it is exporting through this
interface. The value returned by this call is guaranteed to be valid
until it is passed into a call to net_protocol_release(9F), after
which it should no longer be treated as valid.
The protocol must be a registered name of a network protocol that has
been registered. The symbols NHF_INET and NHF_INET6 should be passed
to net_protocol_lookup() as the protocol name to gain access to
either IPv4 or IPv6 respectively.
RETURN VALUES
The net_protocol_lookup() function returns NULL if it does not find
any knowledge about the network protocol referenced. Otherwise, it
returns a value that can be used with other calls in this framework.
CONTEXT
The net_protocol_lookup() 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
attributes(7), net_protocol_release(9F)
March 5, 2012 NET_PROTOCOL_LOOKUP(9F)