Data Structures for Drivers hook_pkt_event(9S)
NAME
hook_pkt_event - packet event structure passed through to
hooksSYNOPSIS
#include
#include
#include
INTERFACE LEVEL
Solaris DDI specific (Solaris DDI).DESCRIPTION
The hook_pkt_event structure contains fields that relate to
a packet in a network protocol handler. This structure ispassed through to a callback for NH_PRE_ROUTING,
NH_POST_ROUTING, NH_FORWARDING, NH_LOOPBACK_IN and
NH_LOOPBACK_OUT events.
A callback may only modify the hpe_hdr, hpe_mp and hpe_mb
fields. The following table documents which fields can be safely used as a result of each event.Event hpe_ifp hpe_ofp hpe_hdr hpe_mp hpe_mb
----- ------- ------- ------- ------ ------
NH_PRE_ROUTING yes yes yes yes
NH_POST_ROUTING yes yes yes yes
NH_FORWARDING yes yes yes yes yes
NH_LOOPBACK_IN yes yes yes yes
NH_LOOPBACK_OUT yes yes yes yes
STRUCTURE MEMBERSnet_data_t hne_family;
phy_if_t hpe_ifp;
phy_if_t hpe_ofp;
void *hpe_hdr;
mblk_t *hpe_mp;
mblk_t *hpe_mb;
uint32_t hpe_flags;
SunOS 5.11 Last change: 1 May 2008 1
Data Structures for Drivers hook_pkt_event(9S)
The following fields are set for each event:hne_family The protocol family for this packet. This
value matches the corresponding value returnedfrom a call to net_protocol_lookup(9F).
hpe_ifp The inbound interface for a packet.
hpe_ofp The outbound interface for a packet.
hpe_hdr Pointer to the start of the network protocol
header within an mblk_t structure.
hpe_mp Pointer to the mblk_t pointer that points to
the first mblk_t structure in this packet.
hpe_mb Pointer to the mblk_t structure that contains
hpe_hdr.
hpe_flags This field is used to carry additional proper-
ties of packets. The current collection of defined bits available is:HPE_BROADCAST This bit is set if the packet
was recognized as a broadcast packet from the link layer. The bit cannot be set ifHPE_MULTICAST is set,
currently only possible with physical in packet events.HPE_MULTICAST This set if the packet was
recognized as a multicast packet from the link layer. This bit cannot be set ifHPE_BROADCAST is set,
currently only possible with physical in packet events.ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:SunOS 5.11 Last change: 1 May 2008 2
Data Structures for Drivers hook_pkt_event(9S)
____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Interface Stability | Committed ||_____________________________|_____________________________|
SEE ALSO
net_protocol_lookup(9F), netinfo(9F)
SunOS 5.11 Last change: 1 May 2008 3