aboutsummaryrefslogtreecommitdiffstats
path: root/cmd/puppeth/wizard.go
diff options
context:
space:
mode:
authorPéter Szilágyi <peterke@gmail.com>2017-10-10 17:35:09 +0800
committerPéter Szilágyi <peterke@gmail.com>2017-10-10 17:35:09 +0800
commitb45cc0c9e8c8724f9db6420a0ea7fbf6d5401fbe (patch)
tree34ccc255b171270755fce8f820893a2dde654098 /cmd/puppeth/wizard.go
parent3680cd5926c1185b2338648bad29fae15e5f34b8 (diff)
downloaddexon-b45cc0c9e8c8724f9db6420a0ea7fbf6d5401fbe.tar.gz
dexon-b45cc0c9e8c8724f9db6420a0ea7fbf6d5401fbe.tar.zst
dexon-b45cc0c9e8c8724f9db6420a0ea7fbf6d5401fbe.zip
cmd/puppeth: use dumb textual IP filtering
Diffstat (limited to 'cmd/puppeth/wizard.go')
-rw-r--r--cmd/puppeth/wizard.go13
1 files changed, 7 insertions, 6 deletions
diff --git a/cmd/puppeth/wizard.go b/cmd/puppeth/wizard.go
index 3fdd639f8..5fbc11cb9 100644
--- a/cmd/puppeth/wizard.go
+++ b/cmd/puppeth/wizard.go
@@ -302,8 +302,10 @@ func (w *wizard) readJSON() string {
}
// readIPAddress reads a single line from stdin, trimming if from spaces and
-// converts it to a network IP address.
-func (w *wizard) readIPAddress() net.IP {
+// returning it if it's convertible to an IP address. The reason for keeping
+// the user input format instead of returning a Go net.IP is to match with
+// weird formats used by ethstats, which compares IPs textually, not by value.
+func (w *wizard) readIPAddress() string {
for {
// Read the IP address from the user
fmt.Printf("> ")
@@ -312,14 +314,13 @@ func (w *wizard) readIPAddress() net.IP {
log.Crit("Failed to read user input", "err", err)
}
if text = strings.TrimSpace(text); text == "" {
- return nil
+ return ""
}
// Make sure it looks ok and return it if so
- ip := net.ParseIP(text)
- if ip == nil {
+ if ip := net.ParseIP(text); ip == nil {
log.Error("Invalid IP address, please retry")
continue
}
- return ip
+ return text
}
}