Refactored code.

This commit is contained in:
Antoine POPINEAU
2015-10-01 21:16:39 +02:00
parent f639ad10ab
commit 2a08cbaeb2

View File

@@ -154,22 +154,24 @@ func (f *NetworkFingerprint) nativeIpAddress(device string) (string, error) {
// TODO: should we handle IPv6 here? How do we determine precedence?
for _, i := range ifaces {
if i.Name == device {
addrs, err := i.Addrs()
if err != nil {
return "", errors.New("could not retrieve interface IP addresses")
}
if i.Name != device {
continue
}
for _, a := range addrs {
switch v := a.(type) {
case *net.IPNet:
if v.IP.To4() != nil {
ip = v.IP.String()
}
case *net.IPAddr:
if v.IP.To4() != nil {
ip = v.IP.String()
}
addrs, err := i.Addrs()
if err != nil {
return "", errors.New("could not retrieve interface IP addresses")
}
for _, a := range addrs {
switch v := a.(type) {
case *net.IPNet:
if v.IP.To4() != nil {
ip = v.IP.String()
}
case *net.IPAddr:
if v.IP.To4() != nil {
ip = v.IP.String()
}
}
}