diff --git a/cmd/neoserver/main.go b/cmd/neoserver/main.go index f06c73c3d..fff926922 100644 --- a/cmd/neoserver/main.go +++ b/cmd/neoserver/main.go @@ -8,25 +8,36 @@ import ( ) var ( - port = flag.String("port", ":3000", "port the TCP listener will listen on.") + tcp = flag.Int("tcp", 3000, "port TCP listener will listen on.") seed = flag.String("seed", "", "initial seed servers.") net = flag.Int("net", 56753, "the mode the server will operate in.") + rpc = flag.Int("rpc", 0, "let this server also respond to rpc calls on this port") ) // Simple dirty and quick bootstrapping for the sake of development. // e.g run 2 nodes: -// neoserver -port :4000 -// neoserver -port :3000 -seed 127.0.0.1:4000 +// neoserver -tcp :4000 +// neoserver -tcp :3000 -seed 127.0.0.1:4000 func main() { flag.Parse() + opts := network.StartOpts{ + Seeds: parseSeeds(*seed), + TCP: *tcp, + RPC: *rpc, + } + s := network.NewServer(network.NetMode(*net)) - seeds := strings.Split(*seed, ",") - if len(seeds) == 0 { - seeds = []string{*seed} - } - if *seed == "" { - seeds = []string{} - } - s.Start(*port, seeds) + s.Start(opts) +} + +func parseSeeds(s string) []string { + if len(s) == 0 { + return nil + } + seeds := strings.Split(s, ",") + if len(seeds) == 0 { + return nil + } + return seeds }