@@ -125,7 +125,7 @@ var (
125125 }
126126 NetworkIdFlag = cli.Uint64Flag {
127127 Name : "networkid" ,
128- Usage : "Network identifier (integer, 1=Frontier, 2=Morden (disused), 3=Ropsten, 4=Rinkeby)" ,
128+ Usage : "Network identifier (integer, 1=Frontier, 2=Morden (disused), 3=Ropsten, 4=Rinkeby, 5=Ottoman )" ,
129129 Value : eth .DefaultConfig .NetworkId ,
130130 }
131131 TestnetFlag = cli.BoolFlag {
@@ -136,6 +136,10 @@ var (
136136 Name : "rinkeby" ,
137137 Usage : "Rinkeby network: pre-configured proof-of-authority test network" ,
138138 }
139+ OttomanFlag = cli.BoolFlag {
140+ Name : "ottoman" ,
141+ Usage : "Ottoman network: pre-configured istanbul bft test network" ,
142+ }
139143 DevModeFlag = cli.BoolFlag {
140144 Name : "dev" ,
141145 Usage : "Developer mode: pre-configured private network with several debugging flags" ,
@@ -516,6 +520,9 @@ func MakeDataDir(ctx *cli.Context) string {
516520 if ctx .GlobalBool (RinkebyFlag .Name ) {
517521 return filepath .Join (path , "rinkeby" )
518522 }
523+ if ctx .GlobalBool (OttomanFlag .Name ) {
524+ return filepath .Join (path , "ottoman" )
525+ }
519526 return path
520527 }
521528 Fatalf ("Cannot determine default data directory, please set manually (--datadir)" )
@@ -570,6 +577,8 @@ func setBootstrapNodes(ctx *cli.Context, cfg *p2p.Config) {
570577 urls = params .TestnetBootnodes
571578 case ctx .GlobalBool (RinkebyFlag .Name ):
572579 urls = params .RinkebyBootnodes
580+ case ctx .GlobalBool (OttomanFlag .Name ):
581+ urls = params .OttomanBootnodes
573582 }
574583
575584 cfg .BootstrapNodes = make ([]* discover.Node , 0 , len (urls ))
@@ -839,6 +848,8 @@ func SetNodeConfig(ctx *cli.Context, cfg *node.Config) {
839848 cfg .DataDir = filepath .Join (node .DefaultDataDir (), "testnet" )
840849 case ctx .GlobalBool (RinkebyFlag .Name ):
841850 cfg .DataDir = filepath .Join (node .DefaultDataDir (), "rinkeby" )
851+ case ctx .GlobalBool (OttomanFlag .Name ):
852+ cfg .DataDir = filepath .Join (node .DefaultDataDir (), "ottoman" )
842853 }
843854
844855 if ctx .GlobalIsSet (KeyStoreDirFlag .Name ) {
@@ -952,7 +963,7 @@ func SetShhConfig(ctx *cli.Context, stack *node.Node, cfg *whisper.Config) {
952963// SetEthConfig applies eth-related command line flags to the config.
953964func SetEthConfig (ctx * cli.Context , stack * node.Node , cfg * eth.Config ) {
954965 // Avoid conflicting network flags
955- checkExclusive (ctx , DevModeFlag , TestnetFlag , RinkebyFlag )
966+ checkExclusive (ctx , DevModeFlag , TestnetFlag , RinkebyFlag , OttomanFlag )
956967 checkExclusive (ctx , FastSyncFlag , LightModeFlag , SyncModeFlag )
957968
958969 ks := stack .AccountManager ().Backends (keystore .KeyStoreType )[0 ].(* keystore.KeyStore )
@@ -1018,6 +1029,11 @@ func SetEthConfig(ctx *cli.Context, stack *node.Node, cfg *eth.Config) {
10181029 cfg .NetworkId = 4
10191030 }
10201031 cfg .Genesis = core .DefaultRinkebyGenesisBlock ()
1032+ case ctx .GlobalBool (OttomanFlag .Name ):
1033+ if ! ctx .GlobalIsSet (NetworkIdFlag .Name ) {
1034+ cfg .NetworkId = 5
1035+ }
1036+ cfg .Genesis = core .DefaultOttomanGenesisBlock ()
10211037 case ctx .GlobalBool (DevModeFlag .Name ):
10221038 cfg .Genesis = core .DevGenesisBlock ()
10231039 if ! ctx .GlobalIsSet (GasPriceFlag .Name ) {
@@ -1110,6 +1126,8 @@ func MakeGenesis(ctx *cli.Context) *core.Genesis {
11101126 genesis = core .DefaultTestnetGenesisBlock ()
11111127 case ctx .GlobalBool (RinkebyFlag .Name ):
11121128 genesis = core .DefaultRinkebyGenesisBlock ()
1129+ case ctx .GlobalBool (OttomanFlag .Name ):
1130+ genesis = core .DefaultOttomanGenesisBlock ()
11131131 case ctx .GlobalBool (DevModeFlag .Name ):
11141132 genesis = core .DevGenesisBlock ()
11151133 }
0 commit comments