diff options
author | Jason A. Donenfeld <Jason@zx2c4.com> | 2019-03-05 20:33:51 +0100 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2019-03-05 20:33:51 +0100 |
commit | bebe9a8b1194fa73922bdfbadc845623f8f9fb35 (patch) | |
tree | 14faa93d123ab92f2af5c143b1f13fe8176fb487 /ui | |
parent | conf: validate tunnel name (diff) | |
download | wireguard-windows-bebe9a8b1194fa73922bdfbadc845623f8f9fb35.tar.xz wireguard-windows-bebe9a8b1194fa73922bdfbadc845623f8f9fb35.zip |
conf: expose base64 key parsing
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Diffstat (limited to 'ui')
-rw-r--r-- | ui/ui.go | 24 |
1 files changed, 3 insertions, 21 deletions
@@ -6,11 +6,9 @@ package ui import ( - "encoding/base64" "fmt" "github.com/lxn/walk" "github.com/lxn/win" - "golang.org/x/crypto/curve25519" "golang.zx2c4.com/wireguard/windows/conf" "golang.zx2c4.com/wireguard/windows/service" "golang.zx2c4.com/wireguard/windows/ui/syntax" @@ -57,25 +55,9 @@ func RunUI() { return } lastPrivate = privateKey - key := func() string { - if privateKey == "" { - return "" - } - decoded, err := base64.StdEncoding.DecodeString(privateKey) - if err != nil { - return "" - } - if len(decoded) != 32 { - return "" - } - var p [32]byte - var s [32]byte - copy(s[:], decoded[:32]) - curve25519.ScalarBaseMult(&p, &s) - return base64.StdEncoding.EncodeToString(p[:]) - }() - if key != "" { - tl.SetText("Public key: " + key) + key, err := conf.NewPrivateKeyFromString(privateKey) + if err == nil { + tl.SetText("Public key: " + key.Public().String()) } else { tl.SetText("Public key: (unknown)") } |