aboutsummaryrefslogtreecommitdiffstats
path: root/mobile
Commit message (Collapse)AuthorAgeFilesLines
* mobile: don't retain transient []byte in CallMsg.SetData (#14804)Elias Naur2017-07-177-17/+21
| | | | | | | | | | | | | | | | | | | | | * mobile: don't retain transient []byte in CallMsg.SetData Go mobile doesn't copy []byte parameters, for performance and to allow writes to the byte array be reflected in the native byte array. Unfortunately, that means []byte arguments are only valid during the call it is being passed into. CallMsg.SetData retains such a byte array. Copy it instead Fixes #14675 * mobile: copy all []byte arguments from gomobile To avoid subtle errors when accidentially retaining an otherwise transient byte slice coming from gomobile, copy all byte slices before use. * mobile: replace copySlice with common.CopyBytes
* mobile: use EIP155 signer (#14817)ligi2017-07-171-5/+10
| | | | | | * mobile: Use EIP155Signer - closes #14762 * mobile: Correctly fall back on HomesteadSigner when no chainID is passed in
* Merge pull request #14540 from bas-vk/whisper-apiPéter Szilágyi2017-06-261-1/+3
|\ | | | | whisperv5: integrate whisper and implement API
| * whisperv5: integrate whisper and add whisper RPC simulatorBas van Kervel2017-06-151-1/+3
| |
* | mobile: add a regression test for signer recoveryPéter Szilágyi2017-06-131-0/+29
| |
* | mobile: use EIP155 signer for determining senderBas van Kervel2017-06-131-2/+5
|/
* mobile: support importing flat ecdsa keyst tooPéter Szilágyi2017-05-231-3/+17
|
* mobile: Add management methods to {Addresses,Topics,Hashes} structuresNicolas Guillaume2017-05-232-0/+60
|
* mobile: Allows mobile clients to create custom FilterQueriesNicolas Guillaume2017-05-221-0/+5
|
* mobile: accept nil for chainid as homestead signing (#14463)Péter Szilágyi2017-05-131-0/+6
|
* mobile: add toString & rlp/json encoding for protocol typesPéter Szilágyi2017-05-111-3/+159
|
* whisper: switching to v5 + minor refactoring (#14387)gluk2562017-04-281-1/+1
|
* cmd, eth, les, mobile: make networkid uint64 everywherePéter Szilágyi2017-04-251-2/+2
|
* all: update license informationFelix Lange2017-04-142-2/+2
|
* cmd/geth: add --config file flag (#13875)Felix Lange2017-04-121-25/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * p2p/discover, p2p/discv5: add marshaling methods to Node * p2p/netutil: make Netlist decodable from TOML * common/math: encode nil HexOrDecimal256 as 0x0 * cmd/geth: add --config file flag * cmd/geth: add missing license header * eth: prettify Config again, fix tests * eth: use gasprice.Config instead of duplicating its fields * eth/gasprice: hide nil default from dumpconfig output * cmd/geth: hide genesis block in dumpconfig output * node: make tests compile * console: fix tests * cmd/geth: make TOML keys look exactly like Go struct fields * p2p: use discovery by default This makes the zero Config slightly more useful. It also fixes package node tests because Node detects reuse of the datadir through the NodeDatabase. * cmd/geth: make ethstats URL settable through config file * cmd/faucet: fix configuration * cmd/geth: dedup attach tests * eth: add comment for DefaultConfig * eth: pass downloader.SyncMode in Config This removes the FastSync, LightSync flags in favour of a more general SyncMode flag. * cmd/utils: remove jitvm flags * cmd/utils: make mutually exclusive flag error prettier It now reads: Fatal: flags --dev, --testnet can't be used at the same time * p2p: fix typo * node: add DefaultConfig, use it for geth * mobile: add missing NoDiscovery option * cmd/utils: drop MakeNode This exposed a couple of places that needed to be updated to use node.DefaultConfig. * node: fix typo * eth: make fast sync the default mode * cmd/utils: remove IPCApiFlag (unused) * node: remove default IPC path Set it in the frontends instead. * cmd/geth: add --syncmode * cmd/utils: make --ipcdisable and --ipcpath mutually exclusive * cmd/utils: don't enable WS, HTTP when setting addr * cmd/utils: fix --identity
* consensus/clique: Proof of Authority (#3753)Péter Szilágyi2017-04-102-80/+9
| | | | This PR is a prototype implementation of plugable consensus engines and the Clique PoA protocol ethereum/EIPs#225
* cmd, les, eth, eth/gasprice: using new gas price oracle (#13853)Felföldi Zsolt2017-04-061-14/+10
| | | | | | | | | | | | * cmd, les, eth, eth/gasprice: using new gas price oracle * eth/gasprice: renamed source file * eth/gasprice: added security checks for gpo params * eth/gasprice: fixed naming issues * eth/gasprice: max limit, maxEmpty
* core: refactor genesis handlingFelix Lange2017-03-232-12/+46
| | | | | | | | | | | | | | | | | | | | | | | | This commit solves several issues concerning the genesis block: * Genesis/ChainConfig loading was handled by cmd/geth code. This left library users in the cold. They could specify a JSON-encoded string and overwrite the config, but didn't get any of the additional checks performed by geth. * Decoding and writing of genesis JSON was conflated in WriteGenesisBlock. This made it a lot harder to embed the genesis block into the forthcoming config file loader. This commit changes things so there is a single Genesis type that represents genesis blocks. All uses of Write*Genesis* are changed to use the new type instead. * If the chain config supplied by the user was incompatible with the current chain (i.e. the chain had already advanced beyond a scheduled fork), it got overwritten. This is not an issue in practice because previous forks have always had the highest total difficulty. It might matter in the future though. The new code reverts the local chain to the point of the fork when upgrading configuration. The change to genesis block data removes compression library dependencies from package core.
* mobile: remove support for Go < 1.7Felix Lange2017-03-232-26/+5
|
* all: import "context" instead of "golang.org/x/net/context"Felix Lange2017-03-231-2/+1
| | | | | | | | | | There is no need to depend on the old context package now that the minimum Go version is 1.7. The move to "context" eliminates our weird vendoring setup. Some vendored code still uses golang.org/x/net/context and it is now vendored in the normal way. This change triggered new vet checks around context.WithTimeout which didn't fire with golang.org/x/net/context.
* all: finish integrating Go ethash, delete C++ vendorPéter Szilágyi2017-03-091-0/+3
|
* mobile: Fix typo ( Ethereun -> Ethereum )ligi2017-03-071-1/+1
|
* all: disable log message colors outside of gethFelix Lange2017-02-272-2/+2
| | | | Also tweak behaviour so colors are only enabled when stderr is a terminal.
* common: move big integer math to common/math (#3699)Felix Lange2017-02-271-4/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * common: remove CurrencyToString Move denomination values to params instead. * common: delete dead code * common: move big integer operations to common/math This commit consolidates all big integer operations into common/math and adds tests and documentation. There should be no change in semantics for BigPow, BigMin, BigMax, S256, U256, Exp and their behaviour is now locked in by tests. The BigD, BytesToBig and Bytes2Big functions don't provide additional value, all uses are replaced by new(big.Int).SetBytes(). BigToBytes is now called PaddedBigBytes, its minimum output size parameter is now specified as the number of bytes instead of bits. The single use of this function is in the EVM's MSTORE instruction. Big and String2Big are replaced by ParseBig, which is slightly stricter. It previously accepted leading zeros for hexadecimal inputs but treated decimal inputs as octal if a leading zero digit was present. ParseUint64 is used in places where String2Big was used to decode a uint64. The new functions MustParseBig and MustParseUint64 are now used in many places where parsing errors were previously ignored. * common: delete unused big integer variables * accounts/abi: replace uses of BytesToBig with use of encoding/binary * common: remove BytesToBig * common: remove Bytes2Big * common: remove BigTrue * cmd/utils: add BigFlag and use it for error-checked integer flags While here, remove environment variable processing for DirectoryFlag because we don't use it. * core: add missing error checks in genesis block parser * common: remove String2Big * cmd/evm: use utils.BigFlag * common/math: check for 256 bit overflow in ParseBig This is supposed to prevent silent overflow/truncation of values in the genesis block JSON. Without this check, a genesis block that set a balance larger than 256 bits would lead to weird behaviour in the VM. * cmd/utils: fixup import
* all: blidly swap out glog to our log15, logs need reworkPéter Szilágyi2017-02-232-6/+7
|
* whisper: interface changed to simplify the transition to v5gluk2562017-02-141-2/+2
| | | | | | | | | | | | | | | | * whisper: mailserver test introduced, refactoring * whisper: validation test updated * whisper: max number of peers fixed * whisper: verification bug fixed * whisper: esthetic fix * whisper: interface changed to simplify the transition to v5 * whisper: preparation for version switch
* accounts, cmd, internal, mobile, node: canonical account URLsPéter Szilágyi2017-02-131-3/+3
|
* accounts, cmd, eth, internal, mobile, node: split account backendsPéter Szilágyi2017-02-133-56/+82
|
* accounts, mobile: make account manager API a bit more uniformPéter Szilágyi2017-01-171-1/+1
|
* Merge pull request #3525 from fjl/all-gosimple-cleanupPéter Szilágyi2017-01-072-25/+6
|\ | | | | all: clean up lint issues, remove more dead code
| * all: fix issues reported by honnef.co/go/simple/cmd/gosimpleFelix Lange2017-01-071-24/+5
| |
| * all: gofmt -w -sFelix Lange2017-01-061-1/+1
| |
* | mobile: rename passphrase signing method to avoid Swift rewritePéter Szilágyi2017-01-062-4/+4
|/
* Merge pull request #3518 from fjl/ethclient-dependency-cleanupPéter Szilágyi2017-01-063-8/+7
|\ | | | | core/types: dependency cleanup
| * core/vm: move Log to core/typesFelix Lange2017-01-062-6/+5
| | | | | | | | | | | | | | | | This significantly reduces the dependency closure of ethclient, which no longer depends on core/vm as of this change. All uses of vm.Logs are replaced by []*types.Log. NewLog is gone too, the constructor simply returned a literal.
| * params: avoid importing p2p/discover for bootnodesFelix Lange2017-01-061-2/+2
| | | | | | | | | | params is imported by leaf-ish library packages and should not pull in the p2p stack.
* | accounts, internal, mobile: polish accounts API, extend Android testsPéter Szilágyi2017-01-052-18/+45
|/
* mobile: add SetVerbosity (#3492)Guillaume NICOLAS2017-01-031-0/+26
|
* mobile: fix ropsten chain configsPéter Szilágyi2016-12-211-1/+1
|
* mobile: iOS naming and API fixes for generators and Swift (#3408)Péter Szilágyi2016-12-0814-146/+150
| | | | | * build: modify the iOS namespace to iGeth (gomobile limitation) * mobile: assign names to return types for ObjC wrapper * mobile: use more expanded names for iOS/Swift API
* ethclient, ethereum: add NotFound, split transactions out of ChainReaderFelix Lange2016-12-051-1/+2
| | | | | | | | | ethclient now returns ethereum.NotFound if the server returns null and no error while accessing blockchain data. The light client cannot provide arbitrary transactions. The change to split transaction access into its own interface emphasizes that transactions should not be relied on and recommends use of logs.
* cmd, ethstats, les, mobile, params: native netstats (#3336)Péter Szilágyi2016-11-251-0/+19
|
* core: implemented new ropsten testnetJeffrey Wilcke2016-11-231-1/+1
|
* cmd/geth, core, light, mobile: removed state account StartingNonceJeffrey Wilcke2016-11-231-10/+0
| | | | All account's nonce start at 0.
* cmd/utils, mobile, params: set the correct field on testnet EIP 155 (#3272)Péter Szilágyi2016-11-162-1/+5
|
* cmd/utils, mobile: place bootnodes in LGPL packagesPéter Szilágyi2016-11-152-11/+11
|
* mobile: port wrappers to EIP155 and EIP158 forkPéter Szilágyi2016-11-154-28/+36
|
* travis, build: cocoapods build fixes and travis cachesPéter Szilágyi2016-11-151-1/+7
|
* accounts/abi/bind, mobile: review fixes and android testsPéter Szilágyi2016-11-151-0/+203
|
* cmd, mobile, node, p2p: surface the discovery V5 bootnodesPéter Szilágyi2016-11-152-35/+25
|
* cmd/utils, mobile: update to reprice HF and light clientPéter Szilágyi2016-11-142-25/+45
|
* .travis, build: Build step to push .aar to Maven CentralPéter Szilágyi2016-11-141-2/+2
|
* mobile: initial wrappers for mobile supportPéter Szilágyi2016-11-1421-0/+2250