aboutsummaryrefslogtreecommitdiffstats
path: root/mobile
diff options
context:
space:
mode:
Diffstat (limited to 'mobile')
-rw-r--r--mobile/accounts.go6
-rw-r--r--mobile/android_test.go2
-rw-r--r--mobile/bind.go29
-rw-r--r--mobile/ethclient.go5
-rw-r--r--mobile/p2p.go2
-rw-r--r--mobile/params.go4
-rw-r--r--mobile/vm.go6
7 files changed, 17 insertions, 37 deletions
diff --git a/mobile/accounts.go b/mobile/accounts.go
index 90f664d29..47c3a5c21 100644
--- a/mobile/accounts.go
+++ b/mobile/accounts.go
@@ -115,10 +115,10 @@ func (am *AccountManager) Sign(address *Address, hash []byte) (signature []byte,
return am.manager.Sign(address.address, hash)
}
-// SignWithPassphrase signs hash if the private key matching the given address
-// can be decrypted with the given passphrase. The produced signature is in the
+// SignPassphrase signs hash if the private key matching the given address can
+// be decrypted with the given passphrase. The produced signature is in the
// [R || S || V] format where V is 0 or 1.
-func (am *AccountManager) SignWithPassphrase(account *Account, passphrase string, hash []byte) (signature []byte, _ error) {
+func (am *AccountManager) SignPassphrase(account *Account, passphrase string, hash []byte) (signature []byte, _ error) {
return am.manager.SignWithPassphrase(account.account, passphrase, hash)
}
diff --git a/mobile/android_test.go b/mobile/android_test.go
index 9e38c1986..3776f8291 100644
--- a/mobile/android_test.go
+++ b/mobile/android_test.go
@@ -69,7 +69,7 @@ public class AndroidTest extends InstrumentationTestCase {
Hash txHash = new Hash("0x0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef");
// Sign a transaction with a single authorization
- byte[] signature = am.signWithPassphrase(signer, "Signer password", txHash.getBytes());
+ byte[] signature = am.signPassphrase(signer, "Signer password", txHash.getBytes());
// Sign a transaction with multiple manually cancelled authorizations
am.unlock(signer, "Signer password");
diff --git a/mobile/bind.go b/mobile/bind.go
index a25c37aca..bc4eb25ba 100644
--- a/mobile/bind.go
+++ b/mobile/bind.go
@@ -114,17 +114,12 @@ type BoundContract struct {
// DeployContract deploys a contract onto the Ethereum blockchain and binds the
// deployment address with a wrapper.
func DeployContract(opts *TransactOpts, abiJSON string, bytecode []byte, client *EthereumClient, args *Interfaces) (contract *BoundContract, _ error) {
- // Convert all the deployment parameters to Go types
- params := make([]interface{}, len(args.objects))
- for i, obj := range args.objects {
- params[i] = obj
- }
// Deploy the contract to the network
parsed, err := abi.JSON(strings.NewReader(abiJSON))
if err != nil {
return nil, err
}
- addr, tx, bound, err := bind.DeployContract(&opts.opts, parsed, bytecode, client.client, params...)
+ addr, tx, bound, err := bind.DeployContract(&opts.opts, parsed, bytecode, client.client, args.objects...)
if err != nil {
return nil, err
}
@@ -159,32 +154,18 @@ func (c *BoundContract) GetDeployer() *Transaction {
// Call invokes the (constant) contract method with params as input values and
// sets the output to result.
func (c *BoundContract) Call(opts *CallOpts, out *Interfaces, method string, args *Interfaces) error {
- // Convert all the input and output parameters to Go types
- params := make([]interface{}, len(args.objects))
- for i, obj := range args.objects {
- params[i] = obj
- }
results := make([]interface{}, len(out.objects))
- for i, obj := range out.objects {
- results[i] = obj
- }
- // Execute the call to the contract and wrap any results
- if err := c.contract.Call(&opts.opts, &results, method, params...); err != nil {
+ copy(results, out.objects)
+ if err := c.contract.Call(&opts.opts, &results, method, args.objects...); err != nil {
return err
}
- for i, res := range results {
- out.objects[i] = res
- }
+ copy(out.objects, results)
return nil
}
// Transact invokes the (paid) contract method with params as input values.
func (c *BoundContract) Transact(opts *TransactOpts, method string, args *Interfaces) (tx *Transaction, _ error) {
- params := make([]interface{}, len(args.objects))
- for i, obj := range args.objects {
- params[i] = obj
- }
- rawTx, err := c.contract.Transact(&opts.opts, method, params)
+ rawTx, err := c.contract.Transact(&opts.opts, method, args.objects)
if err != nil {
return nil, err
}
diff --git a/mobile/ethclient.go b/mobile/ethclient.go
index 36a15aa47..4e8328501 100644
--- a/mobile/ethclient.go
+++ b/mobile/ethclient.go
@@ -22,7 +22,6 @@ import (
"math/big"
"github.com/ethereum/go-ethereum/core/types"
- "github.com/ethereum/go-ethereum/core/vm"
"github.com/ethereum/go-ethereum/ethclient"
)
@@ -191,7 +190,7 @@ func (ec *EthereumClient) FilterLogs(ctx *Context, query *FilterQuery) (logs *Lo
return nil, err
}
// Temp hack due to vm.Logs being []*vm.Log
- res := make(vm.Logs, len(rawLogs))
+ res := make([]*types.Log, len(rawLogs))
for i, log := range rawLogs {
res[i] = &log
}
@@ -208,7 +207,7 @@ type FilterLogsHandler interface {
// SubscribeFilterLogs subscribes to the results of a streaming filter query.
func (ec *EthereumClient) SubscribeFilterLogs(ctx *Context, query *FilterQuery, handler FilterLogsHandler, buffer int) (sub *Subscription, _ error) {
// Subscribe to the event internally
- ch := make(chan vm.Log, buffer)
+ ch := make(chan types.Log, buffer)
rawSub, err := ec.client.SubscribeFilterLogs(ctx.context, query.query, ch)
if err != nil {
return nil, err
diff --git a/mobile/p2p.go b/mobile/p2p.go
index e717d4004..8d21639e5 100644
--- a/mobile/p2p.go
+++ b/mobile/p2p.go
@@ -38,7 +38,7 @@ func (ni *NodeInfo) GetListenerPort() int { return ni.info.Ports.Listener
func (ni *NodeInfo) GetListenerAddress() string { return ni.info.ListenAddr }
func (ni *NodeInfo) GetProtocols() *Strings {
protos := []string{}
- for proto, _ := range ni.info.Protocols {
+ for proto := range ni.info.Protocols {
protos = append(protos, proto)
}
return &Strings{protos}
diff --git a/mobile/params.go b/mobile/params.go
index 8d5d3edbe..87747c7b0 100644
--- a/mobile/params.go
+++ b/mobile/params.go
@@ -85,8 +85,8 @@ func NewChainConfig() *ChainConfig {
// by the foundation running the V5 discovery protocol.
func FoundationBootnodes() *Enodes {
nodes := &Enodes{nodes: make([]*discv5.Node, len(params.DiscoveryV5Bootnodes))}
- for i, node := range params.DiscoveryV5Bootnodes {
- nodes.nodes[i] = node
+ for i, url := range params.DiscoveryV5Bootnodes {
+ nodes.nodes[i] = discv5.MustParseNode(url)
}
return nodes
}
diff --git a/mobile/vm.go b/mobile/vm.go
index cb098d390..72093e3d5 100644
--- a/mobile/vm.go
+++ b/mobile/vm.go
@@ -21,13 +21,13 @@ package geth
import (
"errors"
- "github.com/ethereum/go-ethereum/core/vm"
+ "github.com/ethereum/go-ethereum/core/types"
)
// Log represents a contract log event. These events are generated by the LOG
// opcode and stored/indexed by the node.
type Log struct {
- log *vm.Log
+ log *types.Log
}
func (l *Log) GetAddress() *Address { return &Address{l.log.Address} }
@@ -40,7 +40,7 @@ func (l *Log) GetBlockHash() *Hash { return &Hash{l.log.BlockHash} }
func (l *Log) GetIndex() int { return int(l.log.Index) }
// Logs represents a slice of VM logs.
-type Logs struct{ logs vm.Logs }
+type Logs struct{ logs []*types.Log }
// Size returns the number of logs in the slice.
func (l *Logs) Size() int {