From 021d6fbbbbdfe295dbb3619f8ec3fc8662c1e26a Mon Sep 17 00:00:00 2001
From: a e r t h <aerth@users.noreply.github.com>
Date: Thu, 26 Jul 2018 03:57:20 -0700
Subject: [PATCH] cmd: prevent accidental invalid commands (#17248)

* cmd: stop parsing bootnodes if one is invalid

* cmd/geth: require valid command as argument (or no arg)
---
 cmd/geth/main.go   | 3 +++
 cmd/utils/flags.go | 3 +--
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/cmd/geth/main.go b/cmd/geth/main.go
index 1c618de35..77ef6afe2 100644
--- a/cmd/geth/main.go
+++ b/cmd/geth/main.go
@@ -251,6 +251,9 @@ func main() {
 // It creates a default node based on the command line arguments and runs it in
 // blocking mode, waiting for it to be shut down.
 func geth(ctx *cli.Context) error {
+	if args := ctx.Args(); len(args) > 0 {
+		return fmt.Errorf("invalid command: %q", args[0])
+	}
 	node := makeFullNode(ctx)
 	startNode(ctx, node)
 	node.Wait()
diff --git a/cmd/utils/flags.go b/cmd/utils/flags.go
index 29a79b4a2..27e56f109 100644
--- a/cmd/utils/flags.go
+++ b/cmd/utils/flags.go
@@ -644,8 +644,7 @@ func setBootstrapNodes(ctx *cli.Context, cfg *p2p.Config) {
 	for _, url := range urls {
 		node, err := discover.ParseNode(url)
 		if err != nil {
-			log.Error("Bootstrap URL invalid", "enode", url, "err", err)
-			continue
+			log.Crit("Bootstrap URL invalid", "enode", url, "err", err)
 		}
 		cfg.BootstrapNodes = append(cfg.BootstrapNodes, node)
 	}
-- 
GitLab