hsns: a miniature network sniffer

[ bsd3, network, program ] [ Propose Tags ]

a tiny network sniffer, written in haskell

[Skip to Readme]


Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees


  • No Candidates
Versions [RSS] 0.5, 0.5.1, 0.5.2, 0.5.3
Dependencies base, network, pcap (>=0.3.2) [details]
License BSD-3-Clause
Author Austin Seipp
Maintainer austin@youareinferior.net
Category Network
Uploaded by AustinSeipp at 2007-08-29T23:35:25Z
Reverse Dependencies 1 direct, 0 indirect [details]
Executables hsns
Downloads 3018 total (7 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2017-01-04 [all 9 reports]

Readme for hsns-0.5.3

[back to package description]
hsns: the haskell network sniffer.

* What is Hsns?
* Installation
* Packet filters
* Options

What is Hsns?
hsns is a packet sniffer for unicies written totally
in Haskell (http://www.haskell.org) Currently, hsns 
has only been tested to work on Linux. 

To install, you need to have a haskell compiler such as the
Glasgow Haskell Compiler installed, the Pcap library to be
installed, and the Network.Pcap libraries for GHC.
You may obtain Network.Pcap from http://hackage.haskell.org

To install, run the Setup.lhs script like so (you can skip
the chmod part if you have pulled hsns from the darcs
repository with the --set-scripts-executable flag):

[austin@continuum hsns]$ chmod +x ./Setup.lhs
[austin@continuum hsns]$ ./Setup.lhs configure
[austin@continuum hsns]$ ./Setup.lhs build
[austin@continuum hsns]$ su -c './Setup.lhs install'
[austin@continuum hsns]$ 

hsns is now installed.

Packet filters
hsns can receive a berkeley packet filter
in it's command line (anywhere) that can
be used to filter packets in the same style
as Tcpdump. For a reference on bpf's, see the
tcpdump man page.


Currently, hsns accepts the following options:

	-h,-?	  --help		Display help

	-c[COUNT] --count=COUNT    	Exit after receiving COUNT packets.
				   	0 is receive forever, default is 5.

	-D	  --iflist	   	List interfaces that can be captured

	-i INT    --interface=INT    	Listen on interface INT.
	-l        --linebuffered	Make output line buffered.

	-p        --nopromiscuous	Do not go into promiscuous mode
	-s LEN	  --snarf=LEN		change snarf length from 68 (default)
					to LEN.

	-V	  --version		Display version and exit.