common : return wlan ip only 74/204074/1
authordamon92 <damon92.lee@samsung.com>
Fri, 19 Apr 2019 04:58:09 +0000 (13:58 +0900)
committerdamon92 <damon92.lee@samsung.com>
Fri, 19 Apr 2019 04:58:09 +0000 (13:58 +0900)
Change-Id: Ib99304aaea728054ba5bbd327fbd8f25294f10e5

src/common/common.go
src/discoverymgr/discovery_init.go

index 1e48ccb..00c6d34 100755 (executable)
 package common
 
 import (
+       "errors"
        "log"
        "net"
-       "os"
 )
 
 //GetOutboundIP get ip of device itself
-//priority: 10.xxx.xxx.xx / 192.xxx.xxx.xxx / e.t.c.
+//Only return wifi ip
 func GetOutboundIP() (addr string, err error) {
-       addrs, err := net.InterfaceAddrs()
+       ifaces, err := net.Interfaces()
        if err != nil {
                return
        }
-       var addrElse string
-       for _, a := range addrs {
-               if ipnet, ok := a.(*net.IPNet); ok && !ipnet.IP.IsLoopback() {
-                       if ipnet.IP.To4() != nil {
-                               if ipnet.IP.String()[:2] == "10" {
-                                       os.Stdout.WriteString(ipnet.IP.String() + "\n")
-                                       addr = ipnet.IP.String()
-                                       return
-                               }
-                               if ipnet.IP.String()[:3] == "192" {
-                                       os.Stdout.WriteString(ipnet.IP.String() + "\n")
-                                       addr = ipnet.IP.String()
-                               } else {
-                                       if addrElse == "" || addr == "" {
-                                               addrElse = ipnet.IP.String()
+       for _, iface := range ifaces {
+               if iface.Name[0:2] == "wl" {
+                       addrs, _ := iface.Addrs()
+                       for _, address := range addrs {
+                               if ipnet, ok := address.(*net.IPNet); ok && !ipnet.IP.IsLoopback() {
+                                       if ipnet.IP.To4() != nil {
+                                               addr = ipnet.IP.String()
+                                               return
                                        }
                                }
                        }
                }
        }
-       if addr == "" {
-               addr = addrElse
-       }
-       return
+       return "", errors.New("No interface named wl")
 }
 
 func CheckError(err error) bool {
index 11efcf9..461886f 100755 (executable)
@@ -59,7 +59,6 @@ func registerDevice(AppNames []string, ret chan error) {
        var hostIPAddr []string
 
        var netIface []net.Interface
-       var v4 []net.IP
        ifaces, err := net.Interfaces()
        for _, iface := range ifaces {
                if iface.Name[0:2] == "wl" {
@@ -69,7 +68,6 @@ func registerDevice(AppNames []string, ret chan error) {
                        for _, address := range addrs {
                                if ipnet, ok := address.(*net.IPNet); ok && !ipnet.IP.IsLoopback() {
                                        if ipnet.IP.To4() != nil {
-                                               v4 = append(v4, ipnet.IP)
                                                hostIPAddr = append(hostIPAddr, ipnet.IP.String())
                                        }
                                }