@hackage / network-packet-linux

Types for working with Linux packet sockets

Latest0.1.1.0

About

Metadata

  • Last updated , by rolsdorph
  • License BSD-3-Clause
  • Categories Network Development
  • Maintained by: Mads Rolsdorph

  • Lottery factor: 0

Links

Installation

Readme

network-packet-linux makes it possible to use the network package with Linux packet sockets. Packet sockets are described in packet (7).

Usage

Combine functions from Network.Socket.Address with types from Network.Socket.Linux in order to work with packet sockets.

See the Network.Socket.Linux module documentation or examples/ListenToInterface.hs for an example.

About the package

As of version 3.0.0, the network package provides a socket API that is implemented in terms of the SocketAddress typeclass. network-packet-linux provides SockAddrLl, a SocketAddress instance that corresponds to the sockaddr_ll struct from <linux/if_packet.h>.

Additionally, network-packet-linux provides some convenience types: ProtocolId (an enumeration of the Ethernet protocol IDs defined in <linux/if_ether.h>) and PacketType (enumerating the packet types defined in <linux/if_packet.h>).