diff --git a/wifipw_darwin.go b/wifipw_darwin.go index c43baa9..0991ac8 100644 --- a/wifipw_darwin.go +++ b/wifipw_darwin.go @@ -2,8 +2,10 @@ package wifipw import ( "bytes" - "fmt" + "errors" "os/exec" + "regexp" + "strings" ) func WIFIPassword(ssid string) (string, error) { @@ -21,10 +23,10 @@ func WIFISSID() (name string, err error) { cmd := exec.Command("sh", "-c", cmdStr) cmd.Stdout = &stdout if err := cmd.Run(); err != nil { - return "", errors.New(stderr.String()) + return "", err } stdoutStr := stdout.String() - if strings.Contains(stdout, "AirPort: Off") { + if strings.Contains(stdoutStr, "AirPort: Off") { return "", errors.New("Wi-Fi is turned off") } ret := regexp.MustCompile(`^\s*SSID: (.+)\s*$`).FindStringSubmatch(stdout.String()) diff --git a/wifipw_windows.go b/wifipw_windows.go index 53d15be..9754911 100644 --- a/wifipw_windows.go +++ b/wifipw_windows.go @@ -1,16 +1,16 @@ package wifipw import ( - "bytes" - "fmt" + "errors" "os/exec" + "regexp" ) -func WIFIPassword(ssid string) (string,error) { - output, err := exec.Command("cmd", "/C", "netsh","wlan", - "show","profile","name="+ssid,"key=clear").CombinedOutput() - if err != nil{ - return "",err +func WIFIPassword(ssid string) (string, error) { + output, err := exec.Command("cmd", "/C", "netsh", "wlan", + "show", "profile", "name="+ssid, "key=clear").CombinedOutput() + if err != nil { + return "", err } ret := regexp.MustCompile(`^\s*Key Content\s*: (.+)\s*$`).FindStringSubmatch(string(output)) if len(ret) < 1 { @@ -20,9 +20,7 @@ func WIFIPassword(ssid string) (string,error) { } func WIFISSID() (string, error) { - var stdout bytes.Buffer - cmdStr := "netsh wlan show interface" - cmd,err := exec.Command("cmd", "/C", "netsh","wlan","show","interface")..CombinedOutput() + cmd, err := exec.Command("cmd", "/C", "netsh", "wlan", "show", "interface").CombinedOutput() if err != nil { return "", err }