akme/get-closer

View on GitHub
protocols/icmp.go

Summary

Maintainability
A
0 mins
Test Coverage
package protocols

import (
    "github.com/sparrc/go-ping"
    "time"
)

// ICMPPing implements basic ping
func ICMPPing(host string) time.Duration {
    pinger, err := ping.NewPinger(host)
    if err != nil {
        panic(err)
    }
    pinger.Count = 1
    //startTime := time.Now()

    pinger.Run() // blocks until finished
    //    endTime := time.Now()

    stats := pinger.Statistics()
    return stats.AvgRtt
}