Copyright (c) 2008 Sun Microsystems, Inc. All Rights Reserved
The contents of this file are subject to the terms of the Common Development and Distribution License (the "License"). You may not use this file except in compliance with the License.
You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing. See the License for the specific language governing permissions and limitations under the License.
When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE. If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
#include <sys/neti.h> #include <sys/hook.h> #include <sys/hook_event.h>
Solaris DDI specific (Solaris DDI).
The hook_nic_event structure contains fields that relate to an event that has occurred and belongs to a network interface. This structure is passed through to callbacks for NE_PLUMB, NE_UNPLUMB, NE_UP, NE_DOWN and NE_ADDRESS_CHANGE events.
A callback may not alter any of the fields in this structure.
net_data_t hne_family; phy_if_t pkt_private; lif_if_t hne_lif; nic_event_t hne_event; nic_event_data_t hne_data; size_t hne_datalen;
The following fields are set for each event:
hne_family
A valid reference for the network protocol that owns this network interface and can be in calls to other netinfo(9F) functions.
hne_nic
The physical interface to which an event belongs.
hne_event
A value that indicates the respective event. The current list of available events is:
NE_PLUMB
an interface has just been created.
NE_UNPLUMB
an interface has just been destroyed and no more events should be received for it.
NE_UP
an interface has changed the state to "up" and may now generate packet events.
NE_DOWN
an interface has changed the state to "down" and will no longer generate packet events.
NE_ADDRESS_CHANGE
an address on an interface has changed. hne_lif refers to the logical interface for which the change is occurring, hne_data is a pointer to a sockaddr structure that is hne_datalen bytes long and contains the new network address.
See attributes(5) for descriptions of the following attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
Interface Stability | Committed |
netinfo(9F)