cmd/peerserver: add some command line switches

This commit is contained in:
Felix Lange 2015-01-06 11:15:37 +01:00
parent 4c8c115a76
commit 36e1e5f151
1 changed files with 15 additions and 2 deletions

View File

@ -18,6 +18,7 @@ package main
import (
"crypto/elliptic"
"flag"
"log"
"os"
@ -26,7 +27,19 @@ import (
"github.com/ethereum/go-ethereum/p2p"
)
var (
natType = flag.String("nat", "", "NAT traversal implementation")
pmpGateway = flag.String("gateway", "", "gateway address for NAT-PMP")
listenAddr = flag.String("addr", ":30301", "listen address")
)
func main() {
flag.Parse()
nat, err := p2p.ParseNAT(*natType, *pmpGateway)
if err != nil {
log.Fatal("invalid nat:", err)
}
logger.AddLogSystem(logger.NewStdLogSystem(os.Stdout, log.LstdFlags, logger.InfoLevel))
key, _ := crypto.GenerateKey()
marshaled := elliptic.Marshal(crypto.S256(), key.PublicKey.X, key.PublicKey.Y)
@ -34,8 +47,8 @@ func main() {
srv := p2p.Server{
MaxPeers: 100,
Identity: p2p.NewSimpleClientIdentity("Ethereum(G)", "0.1", "Peer Server Two", marshaled),
ListenAddr: ":30301",
NAT: p2p.UPNP(),
ListenAddr: *listenAddr,
NAT: nat,
NoDial: true,
}
if err := srv.Start(); err != nil {