X-Git-Url: http://www.git.cypherpunks.ru/?a=blobdiff_plain;f=src%2Fcmd%2Fnncp-cfgenc%2Fmain.go;h=cce42dac950e890b7789c4521840422cd397fdfe;hb=0367cce2741e1ce6a89a49fd5c4e9df6005c9744;hp=810da3470588570a58a53956ea89c5f8f15ccc8a;hpb=9f87b8eeb6f058f391b6b54e199fc28ffc6335c3;p=nncp.git diff --git a/src/cmd/nncp-cfgenc/main.go b/src/cmd/nncp-cfgenc/main.go index 810da34..cce42da 100644 --- a/src/cmd/nncp-cfgenc/main.go +++ b/src/cmd/nncp-cfgenc/main.go @@ -1,6 +1,6 @@ /* NNCP -- Node to Node copy, utilities for store-and-forward data exchange -Copyright (C) 2016-2021 Sergey Matveev +Copyright (C) 2016-2022 Sergey Matveev This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -28,7 +28,7 @@ import ( "os" xdr "github.com/davecgh/go-xdr/xdr2" - "go.cypherpunks.ru/nncp/v7" + "go.cypherpunks.ru/nncp/v8" "golang.org/x/crypto/blake2b" "golang.org/x/term" ) @@ -79,7 +79,13 @@ func main() { if _, err := xdr.Unmarshal(bytes.NewReader(data), &eblob); err != nil { log.Fatalln(err) } - if eblob.Magic != nncp.MagicNNCPBv3 { + switch eblob.Magic { + case nncp.MagicNNCPBv1.B: + log.Fatalln(nncp.MagicNNCPBv1.TooOld()) + case nncp.MagicNNCPBv2.B: + log.Fatalln(nncp.MagicNNCPBv2.TooOld()) + case nncp.MagicNNCPBv3.B: + default: log.Fatalln(errors.New("Unknown eblob type")) } fmt.Println("Strengthening function: Balloon with BLAKE2b-256") @@ -90,7 +96,7 @@ func main() { return } - os.Stderr.WriteString("Passphrase:") // #nosec G104 + os.Stderr.WriteString("Passphrase:") password1, err := term.ReadPassword(0) if err != nil { log.Fatalln(err) @@ -100,15 +106,15 @@ func main() { if err != nil { log.Fatalln(err) } - os.Stdout.Write(cfgRaw) // #nosec G104 + os.Stdout.Write(cfgRaw) return } - os.Stderr.WriteString("\nRepeat passphrase:") // #nosec G104 + os.Stderr.WriteString("\nRepeat passphrase:") password2, err := term.ReadPassword(0) if err != nil { log.Fatalln(err) } - os.Stderr.WriteString("\n") // #nosec G104 + os.Stderr.WriteString("\n") if bytes.Compare(password1, password2) != 0 { log.Fatalln(errors.New("Passphrases do not match")) } @@ -116,5 +122,5 @@ func main() { if err != nil { log.Fatalln(err) } - os.Stdout.Write(eblob) // #nosec G104 + os.Stdout.Write(eblob) }