From 789d7e2c51bd7d4da91d8afca675fd7516d770f7 Mon Sep 17 00:00:00 2001 From: evilsocket Date: Wed, 7 Feb 2018 20:13:53 +0100 Subject: [PATCH] balls --- net/net.go | 27 +++++++++++++++++---------- 1 file changed, 17 insertions(+), 10 deletions(-) diff --git a/net/net.go b/net/net.go index 4ec4baae..0052fc39 100644 --- a/net/net.go +++ b/net/net.go @@ -15,27 +15,34 @@ import ( const MonitorModeAddress = "0.0.0.0" +func areTheSame(iface net.Interface, piface pcap.Interface) bool { + if addrs, err := iface.Addrs(); err == nil { + for _, ia := range addrs { + for _, ib := range piface.Addresses { + if ia.String() == ib.IP.String() { + return true + } + } + } + } + return false +} + func getInterfaceName(iface net.Interface) string { - // all normal OS + // all normal operating systems if runtime.GOOS != "windows" { return iface.Name } + // Microsoft Windows devs, err := pcap.FindAllDevs() if err != nil { return iface.Name } for _, dev := range devs { - fmt.Printf("%v\n", dev) - if dev.Name == iface.Name { - fmt.Printf("%+v\n", dev) - desc := dev.Description - name := dev.Name - if desc != "" { - name = fmt.Sprintf("%s (%s)", name, desc) - } - return name + if areTheSame(iface, dev) { + return dev.Name } }