packages feed

ping-0.1.0.4: ping.cabal

cabal-version: 2.2
name: ping
version: 0.1.0.4
synopsis: icmp echo requests
description:
  This library provides functions that have similar behavior as the
  unix command-line utility ping. In particular, both emit ICMP echo requests
  and wait for responses. This library uses a haskell implementation of ICMP
  rather than invoking `/bin/ping`. This avoids the costly process of starting
  a child process. Additionally, there are greater opportunities for reusing
  sockets. The cost of this is that the user must ensure that one of these
  is true:
  .
  * The kernel parameter `net.ipv4.ping_group_range` has been configured
    to allow pings to all IP addresses. (preferred solution)
  .
  * The process is running with the the `CAP_NET_RAW` capability.
  .
  * The process is running as root. (worst solution)
  .
homepage: https://github.com/andrewthad/ping
license: BSD-3-Clause
license-file: LICENSE
author: Andrew Martin
maintainer: andrew.thaddeus@gmail.com
copyright: 2019 Andrew Martin
category: Network
build-type: Simple
extra-source-files:
  CHANGELOG.md
  README.md
  include/custom.h

flag debug
  manual: True
  description: Print debug output
  default: False

flag application
  manual: True
  description: Build CLI application that exposes ping-like functions as subcommands
  default: False

library
  hs-source-dirs: src
  if flag(debug)
    hs-source-dirs: src-debug
  else
    hs-source-dirs: src-production
  build-depends:
    , base >= 4.11.1 && <5
    , ip >= 1.4
    , cpu >= 0.1.2
    , posix-api >= 0.4 && < 0.5
    , primitive >= 0.7 && < 0.8
    , primitive-addr >= 0.1 && < 0.2
    , primitive-containers >= 0.3.1
    , stm >= 2.5
    , transformers >= 0.5.5
  exposed-modules: Network.Icmp.Ping
  other-modules:
    Network.Icmp.Marshal
    Network.Icmp.Ping.Single
    Network.Icmp.Ping.Hosts
    Network.Icmp.Ping.Multihosts
    Network.Icmp.Common
    Network.Icmp.Ping.Debug
  default-language: Haskell2010
  build-tool-depends: hsc2hs:hsc2hs>=0.68.4
  ghc-options: -O2 -Wall
  include-dirs: include
  includes: custom.h

executable multiping
  if flag(application)
    buildable: True
  else
    buildable: False
  main-is: Multiping.hs
  default-language: Haskell2010
  hs-source-dirs: app
  ghc-options: -O2 -Wall -threaded
  build-depends:
    , base >= 4.11.1 && <5
    , ip >= 1.5
    , optparse-applicative >= 0.14.3.0 && < 0.15
    , ping
    , primitive-containers >= 0.3.1
    , text >= 1.2.3.1
    , primitive >= 0.6.4