aboutsummaryrefslogtreecommitdiffstats
path: root/cmd/geth/main.go
diff options
context:
space:
mode:
authorTaylor Gerring <taylor.gerring@gmail.com>2015-05-19 01:24:30 +0800
committerTaylor Gerring <taylor.gerring@gmail.com>2015-05-19 01:24:30 +0800
commitf14feea43683fee58e26a48a51145e72d3ae7ad8 (patch)
tree6f02793925e5917780a63024490dbc6f5a641f72 /cmd/geth/main.go
parent36a4ba32485fb6605ea23f03896ae8d7c4cc44ae (diff)
downloaddexon-f14feea43683fee58e26a48a51145e72d3ae7ad8.tar.gz
dexon-f14feea43683fee58e26a48a51145e72d3ae7ad8.tar.zst
dexon-f14feea43683fee58e26a48a51145e72d3ae7ad8.zip
Refactor user prompts into utils
Diffstat (limited to 'cmd/geth/main.go')
-rw-r--r--cmd/geth/main.go49
1 files changed, 3 insertions, 46 deletions
diff --git a/cmd/geth/main.go b/cmd/geth/main.go
index 7db175eb9..df0af3e79 100644
--- a/cmd/geth/main.go
+++ b/cmd/geth/main.go
@@ -21,7 +21,6 @@
package main
import (
- "bufio"
"fmt"
"io"
"io/ioutil"
@@ -44,7 +43,6 @@ import (
"github.com/ethereum/go-ethereum/logger"
"github.com/mattn/go-colorable"
"github.com/mattn/go-isatty"
- "github.com/peterh/liner"
)
import _ "net/http/pprof"
@@ -426,12 +424,12 @@ func getPassPhrase(ctx *cli.Context, desc string, confirmation bool) (passphrase
passfile := ctx.GlobalString(utils.PasswordFileFlag.Name)
if len(passfile) == 0 {
fmt.Println(desc)
- auth, err := readPassword("Passphrase: ", true)
+ auth, err := utils.PromptPassword("Passphrase: ", true)
if err != nil {
utils.Fatalf("%v", err)
}
if confirmation {
- confirm, err := readPassword("Repeat Passphrase: ", false)
+ confirm, err := utils.PromptPassword("Repeat Passphrase: ", false)
if err != nil {
utils.Fatalf("%v", err)
}
@@ -549,7 +547,7 @@ func exportchain(ctx *cli.Context) {
}
func removeDb(ctx *cli.Context) {
- confirm, err := readConfirm("Remove local databases?")
+ confirm, err := utils.PromptConfirm("Remove local databases?")
if err != nil {
utils.Fatalf("%v", err)
}
@@ -690,44 +688,3 @@ func hashish(x string) bool {
_, err := strconv.Atoi(x)
return err != nil
}
-
-func readConfirm(prompt string) (bool, error) {
- var (
- input string
- err error
- )
- prompt = prompt + " [y/N] "
-
- if liner.TerminalSupported() {
- lr := liner.NewLiner()
- defer lr.Close()
- input, err = lr.Prompt(prompt)
- } else {
- fmt.Print(prompt)
- input, err = bufio.NewReader(os.Stdin).ReadString('\n')
- fmt.Println()
- }
-
- if len(input) > 0 && strings.ToUpper(input[:1]) == "Y" {
- return true, nil
- } else {
- return false, nil
- }
-
- return false, err
-}
-
-func readPassword(prompt string, warnTerm bool) (string, error) {
- if liner.TerminalSupported() {
- lr := liner.NewLiner()
- defer lr.Close()
- return lr.PasswordPrompt(prompt)
- }
- if warnTerm {
- fmt.Println("!! Unsupported terminal, password will be echoed.")
- }
- fmt.Print(prompt)
- input, err := bufio.NewReader(os.Stdin).ReadString('\n')
- fmt.Println()
- return input, err
-}