---
title: ifnet_demux_desc
framework: kernel
role: symbol
path: kernel/ifnet_demux_desc
---

# ifnet_demux_desc

## Declaration

```occ
struct ifnet_demux_desc {
    ...
};
```

## Discussion

Discussion This structure is to identify packets that belong to a specific protocol. The types supported are interface specific. Ethernet supports ETHER_DESC_ETYPE2, ETHER_DESC_SAP, and ETHER_DESC_SNAP. The type defines the offset in the packet where the data will be matched as well as context. For example, if ETHER_DESC_SNAP is specified, the only valid datalen is 5 and only in the 5 bytes will only be matched when the packet header indicates that the packet is a SNAP packet.

## Topics

### Fields

- [type](kernel/ifnet_demux_desc/1524955-type.md)
- [data](kernel/ifnet_demux_desc/1524905-data.md)
- [datalen](kernel/ifnet_demux_desc/1524926-datalen.md)

## See Also

### ifnet

- [ifnet_add_proto_func](kernel/ifnet_add_proto_func.md)
- [ifnet_attach_proto_param](kernel/ifnet_attach_proto_param.md)
- [ifnet_attach_proto_param_v2](kernel/ifnet_attach_proto_param_v2.md)
- [ifnet_check_multi](kernel/ifnet_check_multi.md)
- [ifnet_del_proto_func](kernel/ifnet_del_proto_func.md)
- [ifnet_demux_func](kernel/ifnet_demux_func.md)
- [ifnet_detached_func](kernel/ifnet_detached_func.md)
- [ifnet_event_func](kernel/ifnet_event_func.md)
- [ifnet_family_t](kernel/ifnet_family_t.md)
- [ifnet_framer_func](kernel/ifnet_framer_func.md)
- [ifnet_init_params](kernel/ifnet_init_params.md)
- [ifnet_ioctl_func](kernel/ifnet_ioctl_func.md)
- [ifnet_offload_t](kernel/ifnet_offload_t.md)
- [ifnet_output_func](kernel/ifnet_output_func.md)
- [ifnet_set_bpf_tap](kernel/ifnet_set_bpf_tap.md)
- [ifnet_stat_increment_param](kernel/ifnet_stat_increment_param.md)
- [ifnet_stats_param](kernel/ifnet_stats_param.md)
- [ifnet_t](kernel/ifnet_t.md)
