ping alternatives and similar packages
Based on the "network" category.
Alternatively, view ping alternatives based on common mentions on social networks and blogs.
-
compendium-client
Mu (μ) is a purely functional framework for building micro services. -
resolv
Domain Name Service (DNS) lookup via the libresolv standard library routines -
network-data
Network data structures in Haskell (IP, UDP, TCP headers, etc) -
windns
Domain Name Service (DNS) lookup via the Windows dnsapi standard library -
hatexmpp3
XMPP client with synthetic filesystem (9P) and (optional) graphical (GTK3) interfaces -
LDAPv3
Lightweight Directory Access Protocol V3 (LDAPv3) RFC4511 implementation -
hsendxmpp
sendxmpp clone and drop-in replacement, sending XMPP messages via CLI -
transient-universe-tls
Secure communications for transient-universe -
iwlib
A binding to the iw library for getting info about the current WiFi connection. -
network-uri-lenses
lenses for http://hackage.haskell.org/package/network-uri -
network-simple-wss
Simple Haskell interface to TLS secured WebSockets
Clean code begins in your IDE with SonarLint
Do you think we are missing an alternative of ping or a related project?
README
ping
Objective
This library provides high-performance functions that issue ICMP echo
requests and wait for responses, measuring the elapsed time. It is intended
to be cross-platform as possible, and it may use any system APIs available.
However, it will not resort to running /bin/ping
as a subprocess. Pull
requests that improve compatibility will accepted so long as they do not
start a subprocess.
Build Instructions
This library relies on posix-api
, which needs a currently-unreleased
version of hsc2hs
in order to build. In order to try out this library, try:
~/dev $ git clone https://github.com/haskell/hsc2hs
~/dev $ cd hsc2hs
~/dev/hsc2hs $ cabal install
~/dev/hsc2hs $ cd ..
~/dev $ git clone https://github.com/andrewthad/ping
~/dev $ cd ping
~/dev/ping $ cabal new-build --with-hsc2hs=~/.cabal/bin/hsc2hs
This will build all dependencies, including posix-api
, with the
upstream hsc2hs
tool.
Infelicities
This project's objective is to be cross-platform. However, it does not accomplish this. The author primarily runs a Debian Linux distribution and consequently lacks the resources and the motivation to make this work on other platforms. Contributions to improve compatibility are welcomed. Current known problems include:
- On Linux, the library should fallback to using raw sockets if
IPPROTO_ICMP
does not work. - Support for Windows is missing.
- Support for BSD is missing. However, adding raw socket support to improve the situation on Linux may fix this as well.
- Support for Darwin is missing. This should not be difficult since
Darwin supports
IPPROTO_ICMP
sockets.