The socks package

[Tags:bsd3, library]

Socks proxy (version 5) implementation.

[Skip to Readme]


Versions 0.1.0, 0.2.0, 0.3.0, 0.4.0, 0.4.1, 0.4.2, 0.5.0, 0.5.1, 0.5.2, 0.5.3, 0.5.4, 0.5.5
Dependencies base (>=3 && <5), bytestring, cereal (>=0.3.1 && <0.4), network (==2.3.*) [details]
License BSD3
Copyright Vincent Hanquez <>
Author Vincent Hanquez <>
Maintainer Vincent Hanquez <>
Category Network
Home page
Source repository head: git clone git://
Uploaded Tue Feb 19 06:49:37 UTC 2013 by VincentHanquez
Updated Sun Jun 14 21:13:08 UTC 2015 by AdamBergmark to revision 1
Distributions Arch:0.5.5, Debian:0.5.4, FreeBSD:0.5.4, LTSHaskell:0.5.5, NixOS:0.5.5, Stackage:0.5.5, Tumbleweed:0.5.5
Downloads 91733 total (4653 in the last 30 days)
0 []
Status Docs uploaded by user
Build status unknown [no reports yet]




Maintainer's Corner

For package maintainers and hackage trustees

Readme for socks

Readme for socks-0.5.0


Haskell library implementation of the SOCKS 5 protocol.


  • more socks authentification methods: only no authentification is supported for now.
  • support of socks' bind for server to client connection (like FTP).
  • add socks4a and socks4 support.


See Example.hs for really simple and straighforward example. The main api is only 2 calls:

  • socksConnectAddr which connect to a SockAddr (SockAddrInet or SockAddrInet6). The name resolution is left on client side.
  • socksConnectName which connect to a fully qualified domain name "". The proxy server will do the name resolution.