aboutsummaryrefslogtreecommitdiffstats
path: root/cmd
diff options
context:
space:
mode:
authorTaylor Gerring <taylor.gerring@gmail.com>2015-03-30 03:26:47 +0800
committerTaylor Gerring <taylor.gerring@gmail.com>2015-03-30 03:26:47 +0800
commit04a7c4ae1e7fe9683854fd759cad0e5e04a2f2c0 (patch)
tree8065b02924ccbacb192ce33b74ea45a387819528 /cmd
parent24fc1f073dd5ec0302937fb51729991dd9a40ba3 (diff)
downloadgo-tangerine-04a7c4ae1e7fe9683854fd759cad0e5e04a2f2c0.tar
go-tangerine-04a7c4ae1e7fe9683854fd759cad0e5e04a2f2c0.tar.gz
go-tangerine-04a7c4ae1e7fe9683854fd759cad0e5e04a2f2c0.tar.bz2
go-tangerine-04a7c4ae1e7fe9683854fd759cad0e5e04a2f2c0.tar.lz
go-tangerine-04a7c4ae1e7fe9683854fd759cad0e5e04a2f2c0.tar.xz
go-tangerine-04a7c4ae1e7fe9683854fd759cad0e5e04a2f2c0.tar.zst
go-tangerine-04a7c4ae1e7fe9683854fd759cad0e5e04a2f2c0.zip
Abstract http into rpc package
New RpcConfig object to pass growing config
Diffstat (limited to 'cmd')
-rw-r--r--cmd/geth/admin.go16
-rw-r--r--cmd/utils/flags.go17
2 files changed, 18 insertions, 15 deletions
diff --git a/cmd/geth/admin.go b/cmd/geth/admin.go
index 3a58b8881..b217e88b5 100644
--- a/cmd/geth/admin.go
+++ b/cmd/geth/admin.go
@@ -2,8 +2,6 @@ package main
import (
"fmt"
- "net"
- "net/http"
"os"
"time"
@@ -70,12 +68,20 @@ func (js *jsre) startRPC(call otto.FunctionCall) otto.Value {
return otto.FalseValue()
}
- l, err := net.Listen("tcp", fmt.Sprintf("%s:%d", addr, port))
+ config := rpc.RpcConfig{
+ ListenAddress: addr,
+ ListenPort: uint(port),
+ // CorsDomain: ctx.GlobalString(RPCCORSDomainFlag.Name),
+ }
+
+ xeth := xeth.New(js.ethereum, nil)
+ err = rpc.Start(xeth, config)
+
if err != nil {
- fmt.Printf("Can't listen on %s:%d: %v", addr, port, err)
+ fmt.Printf(err.Error())
return otto.FalseValue()
}
- go http.Serve(l, rpc.JSONRPC(xeth.New(js.ethereum, nil)))
+
return otto.TrueValue()
}
diff --git a/cmd/utils/flags.go b/cmd/utils/flags.go
index 131f8a5c0..e82fd9c28 100644
--- a/cmd/utils/flags.go
+++ b/cmd/utils/flags.go
@@ -2,9 +2,6 @@ package utils
import (
"crypto/ecdsa"
- "fmt"
- "net"
- "net/http"
"os"
"path"
"runtime"
@@ -259,12 +256,12 @@ func GetAccountManager(ctx *cli.Context) *accounts.Manager {
}
func StartRPC(eth *eth.Ethereum, ctx *cli.Context) {
- addr := ctx.GlobalString(RPCListenAddrFlag.Name)
- port := ctx.GlobalInt(RPCPortFlag.Name)
- fmt.Println("Starting RPC on port: ", port)
- l, err := net.Listen("tcp", fmt.Sprintf("%s:%d", addr, port))
- if err != nil {
- Fatalf("Can't listen on %s:%d: %v", addr, port, err)
+ config := rpc.RpcConfig{
+ ListenAddress: ctx.GlobalString(RPCListenAddrFlag.Name),
+ ListenPort: uint(ctx.GlobalInt(RPCPortFlag.Name)),
+ CorsDomain: ctx.GlobalString(RPCCORSDomainFlag.Name),
}
- go http.Serve(l, rpc.JSONRPC(xeth.New(eth, nil)))
+
+ xeth := xeth.New(eth, nil)
+ _ = rpc.Start(xeth, config)
}