@@ -124,7 +124,7 @@ var (
124124 }
125125 NetworkIdFlag = cli.Uint64Flag {
126126 Name : "networkid" ,
127- Usage : "Network identifier (integer, 1=Frontier, 2=Morden (disused), 3=Ropsten, 4=Rinkeby)" ,
127+ Usage : "Network identifier (integer, 1=Frontier, 2=Morden (disused), 3=Ropsten, 4=Rinkeby, 5=Ottoman )" ,
128128 Value : eth .DefaultConfig .NetworkId ,
129129 }
130130 TestnetFlag = cli.BoolFlag {
@@ -135,6 +135,10 @@ var (
135135 Name : "rinkeby" ,
136136 Usage : "Rinkeby network: pre-configured proof-of-authority test network" ,
137137 }
138+ OttomanFlag = cli.BoolFlag {
139+ Name : "ottoman" ,
140+ Usage : "Ottoman network: pre-configured istanbul bft test network" ,
141+ }
138142 DevModeFlag = cli.BoolFlag {
139143 Name : "dev" ,
140144 Usage : "Developer mode: pre-configured private network with several debugging flags" ,
@@ -515,6 +519,9 @@ func MakeDataDir(ctx *cli.Context) string {
515519 if ctx .GlobalBool (RinkebyFlag .Name ) {
516520 return filepath .Join (path , "rinkeby" )
517521 }
522+ if ctx .GlobalBool (OttomanFlag .Name ) {
523+ return filepath .Join (path , "ottoman" )
524+ }
518525 return path
519526 }
520527 Fatalf ("Cannot determine default data directory, please set manually (--datadir)" )
@@ -569,6 +576,8 @@ func setBootstrapNodes(ctx *cli.Context, cfg *p2p.Config) {
569576 urls = params .TestnetBootnodes
570577 case ctx .GlobalBool (RinkebyFlag .Name ):
571578 urls = params .RinkebyBootnodes
579+ case ctx .GlobalBool (OttomanFlag .Name ):
580+ urls = params .OttomanBootnodes
572581 }
573582
574583 cfg .BootstrapNodes = make ([]* discover.Node , 0 , len (urls ))
@@ -838,6 +847,8 @@ func SetNodeConfig(ctx *cli.Context, cfg *node.Config) {
838847 cfg .DataDir = filepath .Join (node .DefaultDataDir (), "testnet" )
839848 case ctx .GlobalBool (RinkebyFlag .Name ):
840849 cfg .DataDir = filepath .Join (node .DefaultDataDir (), "rinkeby" )
850+ case ctx .GlobalBool (OttomanFlag .Name ):
851+ cfg .DataDir = filepath .Join (node .DefaultDataDir (), "ottoman" )
841852 }
842853
843854 if ctx .GlobalIsSet (KeyStoreDirFlag .Name ) {
@@ -951,7 +962,7 @@ func SetShhConfig(ctx *cli.Context, stack *node.Node, cfg *whisper.Config) {
951962// SetEthConfig applies eth-related command line flags to the config.
952963func SetEthConfig (ctx * cli.Context , stack * node.Node , cfg * eth.Config ) {
953964 // Avoid conflicting network flags
954- checkExclusive (ctx , DevModeFlag , TestnetFlag , RinkebyFlag )
965+ checkExclusive (ctx , DevModeFlag , TestnetFlag , RinkebyFlag , OttomanFlag )
955966 checkExclusive (ctx , FastSyncFlag , LightModeFlag , SyncModeFlag )
956967
957968 ks := stack .AccountManager ().Backends (keystore .KeyStoreType )[0 ].(* keystore.KeyStore )
@@ -1013,6 +1024,11 @@ func SetEthConfig(ctx *cli.Context, stack *node.Node, cfg *eth.Config) {
10131024 cfg .NetworkId = 4
10141025 }
10151026 cfg .Genesis = core .DefaultRinkebyGenesisBlock ()
1027+ case ctx .GlobalBool (OttomanFlag .Name ):
1028+ if ! ctx .GlobalIsSet (NetworkIdFlag .Name ) {
1029+ cfg .NetworkId = 5
1030+ }
1031+ cfg .Genesis = core .DefaultOttomanGenesisBlock ()
10161032 case ctx .GlobalBool (DevModeFlag .Name ):
10171033 cfg .Genesis = core .DevGenesisBlock ()
10181034 if ! ctx .GlobalIsSet (GasPriceFlag .Name ) {
@@ -1105,6 +1121,8 @@ func MakeGenesis(ctx *cli.Context) *core.Genesis {
11051121 genesis = core .DefaultTestnetGenesisBlock ()
11061122 case ctx .GlobalBool (RinkebyFlag .Name ):
11071123 genesis = core .DefaultRinkebyGenesisBlock ()
1124+ case ctx .GlobalBool (OttomanFlag .Name ):
1125+ genesis = core .DefaultOttomanGenesisBlock ()
11081126 case ctx .GlobalBool (DevModeFlag .Name ):
11091127 genesis = core .DevGenesisBlock ()
11101128 }
0 commit comments