|
@@ -9,9 +9,6 @@ import (
|
|
|
"os/user"
|
|
|
"runtime"
|
|
|
"strings"
|
|
|
- "syscall"
|
|
|
-
|
|
|
- "golang.org/x/sys/windows"
|
|
|
)
|
|
|
|
|
|
func TryLoadorAskUserForAuthkey() string {
|
|
@@ -95,36 +92,3 @@ func isRoot() bool {
|
|
|
}
|
|
|
return currentUser.Username == "root"
|
|
|
}
|
|
|
-
|
|
|
-//Use admin permission to read auth token on Windows
|
|
|
-func readAuthTokenAsAdmin() (string, error) {
|
|
|
- verb := "runas"
|
|
|
- exe, _ := os.Executable()
|
|
|
- cwd, _ := os.Getwd()
|
|
|
-
|
|
|
- authTokenPath := "C:\\ProgramData\\ZeroTier\\One\\authtoken.secret"
|
|
|
- args := fmt.Sprintf("cmd /C type %s", authTokenPath)
|
|
|
-
|
|
|
- verbPtr, _ := syscall.UTF16PtrFromString(verb)
|
|
|
- exePtr, _ := syscall.UTF16PtrFromString(exe)
|
|
|
- cwdPtr, _ := syscall.UTF16PtrFromString(cwd)
|
|
|
- argPtr, _ := syscall.UTF16PtrFromString(args)
|
|
|
-
|
|
|
- var showCmd int32 = 1 //SW_NORMAL
|
|
|
-
|
|
|
- err := windows.ShellExecute(0, verbPtr, exePtr, argPtr, cwdPtr, showCmd)
|
|
|
- if err != nil {
|
|
|
- return "", err
|
|
|
- }
|
|
|
-
|
|
|
- return "", nil
|
|
|
-}
|
|
|
-
|
|
|
-//Check if admin on Windows
|
|
|
-func isAdmin() bool {
|
|
|
- _, err := os.Open("\\\\.\\PHYSICALDRIVE0")
|
|
|
- if err != nil {
|
|
|
- return false
|
|
|
- }
|
|
|
- return true
|
|
|
-}
|