name: dht-client version: 0.0.0.4 license: BSD3 license-file: LICENSE author: Joe Crayne maintainer: Joe Crayne copyright: (c) 2017 Joe Crayne, (c) 2017 James Crayne, (c) 2013 Sam Truzjan category: Network build-type: Custom cabal-version: >= 1.10 synopsis: BitTorrent and Tox DHT. description: This package provides, in the form of a unix daemon, both the tox and bittorrent Distributed Hash Tables. Both of these DHT's are implementations of the Kademlia algorithm. Although, there is also a library in this package, it is really just a shared interface between the two executables this package provides: dhtd and dht. If you want to make a peer to peer application that uses this code, the proper way to do it is to start the dhtd server, and use the dht program as a means to communicate with it over a unix domain socket. Users who do wish to use the modules exported by the library should be aware that the API of these modules may change without notice and may vary depending on the selection of cabal flags. extra-source-files: ChangeLog cbits/*.h flag avahi description: Advertise Tox node on avahi. Disable to avoid an indirect dependency on lens. default: True flag network-uri description: Use network-uri package. default: True -- supports network-2.7, 2.8, with deprecation warnings flag old-network-bsd description: Use network-bsd package. default: True -- supports network >3.0 flag new-network-bsd description: Use newer network-bsd package. default: False flag builder description: Use older bytestring package and bytestring-builder. default: False -- flag aeson -- description: Use aeson for pretty-printing bencoded data. -- default: True flag thread-debug description: Add instrumentation to threads. default: True flag cryptonite-backport description: Backport curve 25519 to older cryptonite library. default: False flag no-constraint-extras description: Build against older version of dependent-sum. default: False custom-setup setup-depends: base >= 4.5, Cabal >= 1.14, directory >= 1.2.5 library default-language: Haskell2010 default-extensions: PatternGuards , OverloadedStrings , RecordWildCards , NondecreasingIndentation hs-source-dirs: src, ., Presence exposed-modules: Data.Digest.CRC32C Data.Bits.ByteString Network.BitTorrent.DHT.ContactInfo Network.BitTorrent.DHT.Token Data.BEncode.Pretty Network.BitTorrent.MainlineDHT Network.BitTorrent.MainlineDHT.Symbols System.Global6 Data.PacketQueue Data.PacketBuffer Network.Tox.Onion.Routes TCPProber Data.Tox.DHT.Multi Data.Tox.Onion Network.Tox Network.Tox.Transport Network.Tox.Crypto.Transport Network.Tox.Onion.Handlers Network.Tox.Onion.Transport Network.Tox.DHT.Handlers Network.Tox.DHT.Transport Network.Tox.Handshake Network.Tox.NodeId Network.Tox.TCP.NodeId Network.Tox.Avahi Network.Tox.RelayPinger Network.UPNP Network.Tox.Relay Network.Tox.TCP Data.Tox.Msg Data.Tox.Relay Control.TriadCommittee Text.XXD Network.Tox.ContactInfo Announcer Announcer.Tox ByteStringOperators ClientState ConfigFiles ConnectionKey ConsoleWriter Control.Concurrent.STM.StatusCache Control.Concurrent.STM.UpdateStream Control.Concurrent.STM.Util Data.BitSyntax EventUtil FGConsole LocalPeerCred LockedChan Logging Nesting Paths UTmp MUC LocalChat Chat Stanza.Build Stanza.Types Stanza.Parse XMPPServer Util Presence ToxChat ToxToXMPP ToxManager XMPPToTox Data.IntervalSet Data.Tox.Message HandshakeCache Network.Lossless Network.SessionTransports Network.Tox.AggregateSession Network.Tox.Session DebugTag Codec.AsciiKey256 Paths_dht_client build-depends: base , containers , constraints , dependent-map , array , hashable , iproute , semigroups , stm >= 2.4.0 , stm-chans , concurrent-supply , base16-bytestring , base32-bytestring , base64-bytestring , psqueues , reflection , deepseq , text , filepath , directory , bencoding , contravariant , xml-types , rank2classes , memory , time , random , entropy , cpu , cereal , http-types , process , pretty , convertible , data-default , lifted-base , monad-control , transformers-base , mtl , ghc-prim , sensible-directory , temporary , transformers , conduit , conduit-extra , xml-conduit >= 1.5.0 , unix , template-haskell , blaze-builder , exceptions , hinotify , dput-hslogger , word64-map , network-addr , tox-crypto , lifted-concurrent , psq-wrap , minmax-psq , kad , tasks , torrent-types , server if impl(ghc < 8) Build-depends: transformers if flag(avahi) Build-depends: avahi >= 0.2.0 if flag(no-constraint-extras) build-depends: dependent-sum < 0.6 else build-depends: dependent-sum >= 0.6, constraints-extras if flag(old-network-bsd) Build-depends: network < 3.0 , network-uri >= 2.6 , network-bsd < 2.8.1.0 else if flag(new-network-bsd) Build-depends: network >= 3.0 , network-uri >= 2.6 , network-bsd >= 2.8.1.0 else if flag(network-uri) Build-depends: network >= 2.6 && < 3.0 , network-uri >= 2.6 else Build-depends: network >= 2.4 && < 2.6 C-sources: Presence/monitortty.c cbits/crc4_itu.c -- if flag(aeson) build-depends: aeson, aeson-pretty, unordered-containers, vector cpp-options: -DBENCODE_AESON -DRENDERFLUSH if flag(thread-debug) -- exposed-modules: Control.Concurrent.Lifted.Instrument cpp-options: -DTHREAD_DEBUG if flag(builder) build-depends: bytestring >= 0.9, bytestring-builder else build-depends: bytestring >= 0.10 ghc-options: -fwarn-missing-signatures -fdefer-typed-holes ghc-prof-options: if flag(cryptonite-backport) cpp-options: -DCRYPTONITE_BACKPORT hs-source-dirs: cryptonite-backport C-sources: cbits/cryptonite_xsalsa.c, cbits/cryptonite_salsa.c other-modules: Crypto.Cipher.Salsa Crypto.Cipher.XSalsa Crypto.ECC.Class Crypto.ECC.Simple.Prim Crypto.ECC.Simple.Types Crypto.Error.Types Crypto.Internal.ByteArray Crypto.Internal.Compat Crypto.Internal.DeepSeq Crypto.Internal.Imports Crypto.PubKey.Curve25519 build-depends: cryptonite < 0.22 else build-depends: cryptonite >= 0.22 executable avahi hs-source-dirs: examples main-is: avahi.hs if flag(avahi) default-language: Haskell2010 build-depends: base-prelude, dht-client, avahi, network ghc-options: -fobject-code else buildable: False executable dht hs-source-dirs: examples main-is: dht.hs default-language: Haskell2010 build-depends: base, haskeline, network, bytestring, transformers ghc-options: -fobject-code executable dhtd hs-source-dirs: examples main-is: dhtd.hs default-language: Haskell2010 build-depends: base, network, bytestring, hashable, deepseq , aeson , array , pretty , dependent-sum , dht-client , server , dput-hslogger , word64-map , tox-crypto , network-addr , kad , lifted-concurrent , psq-wrap , minmax-psq , tasks , unix , containers , stm , stm-chans , concurrent-supply , cereal , bencoding , unordered-containers , vector , text , monad-control , xml-types , conduit , conduit-extra , transformers , filepath , process , cereal-conduit >= 0.7.3 , cryptonite if flag(thread-debug) build-depends: time cpp-options: -DTHREAD_DEBUG -DRENDERFLUSH ghc-options: -rtsopts -fdefer-typed-holes -threaded ghc-prof-options: -g executable testcookie buildable: False hs-source-dirs: examples main-is: testcookie.hs default-language: Haskell2010 build-depends: base, bytestring, cereal, dht-client, stm executable testTox hs-source-dirs: examples main-is: testTox.hs default-language: Haskell2010 build-depends: base , dht-client , server , dput-hslogger , tox-crypto , lifted-concurrent , stm , stm-chans , time , concurrent-supply , containers , network , unordered-containers , dependent-sum if flag(thread-debug) cpp-options: -DTHREAD_DEBUG