network-packet-linux: Types for working with Linux packet sockets

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]

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>).

Hackage note: The false dependency on `vendored-network` is an annoying side effect of the way we pull in network files. Ideally the dependency on network files should be an internal cabal library, but internal libraries aren't supported for the build style we need.

Properties

Versions 0.1.0.0, 0.1.0.0, 0.1.1.0
Change log CHANGELOG.md
Dependencies base (>=4.12 && <5), network (>=3.1.0 && <3.2), vendored-network [details]
License BSD-3-Clause
Author
Maintainer Mads Rolsdorph
Category Network
Home page https://github.com/rolsdorph/network-packet-linux
Bug tracker https://github.com/rolsdorph/network-packet-linux/issues
Source repo head: git clone git@github.com:rolsdorph/network-packet-linux.git
Uploaded by rolsdorph at 2021-03-13T17:06:27Z

Modules

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees