aboutsummaryrefslogtreecommitdiffstats
path: root/signer/core/cliui.go
diff options
context:
space:
mode:
authorPaul Berg <hello@paulrberg.com>2019-02-06 15:30:49 +0800
committerMartin Holst Swende <martin@swende.se>2019-02-06 15:30:49 +0800
commit572baae10a28da2d02085df7e2f3a282883f5d6e (patch)
tree3e5424ac64dbeae440604d32aed4293199179c99 /signer/core/cliui.go
parent7c60d0a6a2d3925c2862cbbb188988475619fd0d (diff)
downloadgo-tangerine-572baae10a28da2d02085df7e2f3a282883f5d6e.tar
go-tangerine-572baae10a28da2d02085df7e2f3a282883f5d6e.tar.gz
go-tangerine-572baae10a28da2d02085df7e2f3a282883f5d6e.tar.bz2
go-tangerine-572baae10a28da2d02085df7e2f3a282883f5d6e.tar.lz
go-tangerine-572baae10a28da2d02085df7e2f3a282883f5d6e.tar.xz
go-tangerine-572baae10a28da2d02085df7e2f3a282883f5d6e.tar.zst
go-tangerine-572baae10a28da2d02085df7e2f3a282883f5d6e.zip
signer, clef: implement EIP191/712 (#17789)
* Named functions and defined a basic EIP191 content type list * Written basic content type functions * Added ecRecover method in the clef api * Updated the extapi changelog and addded indications in the README * Changed the version of the external API * Added tests for 0x45 * Implementing UnmarshalJSON() for TypedData * Working on TypedData * Solved the auditlog issue * Changed method to signTypedData * Changed mimes and implemented the 'encodeType' function for EIP-712 * Polished docstrings, ran goimports and swapped fmt.Errorf with errors.New where possible * Drafted recursive encodeData * Ran goimports and gofmt * Drafted first version of EIP-712, including tests * Temporarily switched to using common.Address in tests * Drafted text/validator and and rewritten []byte as hexutil.Bytes * Solved stringified address encoding issue * Changed the property type required by signData from bytes to interface{} * Fixed bugs in 'data/typed' signs * Brought legal warning back after temporarily disabling it for development * Added example RPC calls for account_signData and account_signTypedData * Named functions and defined a basic EIP191 content type list * Written basic content type functions * Added ecRecover method in the clef api * Updated the extapi changelog and addded indications in the README * Added tests for 0x45 * Implementing UnmarshalJSON() for TypedData * Working on TypedData * Solved the auditlog issue * Changed method to signTypedData * Changed mimes and implemented the 'encodeType' function for EIP-712 * Polished docstrings, ran goimports and swapped fmt.Errorf with errors.New where possible * Drafted recursive encodeData * Ran goimports and gofmt * Drafted first version of EIP-712, including tests * Temporarily switched to using common.Address in tests * Drafted text/validator and and rewritten []byte as hexutil.Bytes * Solved stringified address encoding issue * Changed the property type required by signData from bytes to interface{} * Fixed bugs in 'data/typed' signs * Brought legal warning back after temporarily disabling it for development * Added example RPC calls for account_signData and account_signTypedData * Polished and fixed PR * Polished and fixed PR * Solved malformed data panics and also wrote tests * Solved malformed data panics and also wrote tests * Added alphabetical sorting to type dependencies * Added alphabetical sorting to type dependencies * Added pretty print to data/typed UI * Added pretty print to data/typed UI * signer: more tests for typed data * signer: more tests for typed data * Fixed TestMalformedData4 errors and renamed IsValid to Validate * Fixed TestMalformedData4 errors and renamed IsValid to Validate * Fixed more new failing tests and deanonymised some functions * Fixed more new failing tests and deanonymised some functions * Added types to EIP712 output in cliui * Added types to EIP712 output in cliui * Fixed regexp issues * Fixed regexp issues * Added pseudo-failing test * Added pseudo-failing test * Fixed false positive test * Fixed false positive test * Added PrettyPrint method * Added PrettyPrint method * signer: refactor formatting and UI * signer: make ui use new message format for signing * Fixed breaking changes * Fixed rules_test failing test * Added extra regexp for reference types * signer: more hard types * Fixed failing test, formatted files * signer: use golang/x keccak * Fixed goimports error * clef, signer: address some review concerns * Implemented latest recommendations * Fixed comments and uintint256 issue * accounts, signer: fix mimetypes, add interface to sign data with passphrase * signer, accounts: remove duplicated code, pass hash preimages to signing * signer: prevent panic in type assertions, make cliui print rawdata as quotable-safe * signer: linter fixes, remove deprecated crypto dependency * accounts: fix goimport
Diffstat (limited to 'signer/core/cliui.go')
-rw-r--r--signer/core/cliui.go9
1 files changed, 6 insertions, 3 deletions
diff --git a/signer/core/cliui.go b/signer/core/cliui.go
index 940f1f43a..71d489d45 100644
--- a/signer/core/cliui.go
+++ b/signer/core/cliui.go
@@ -21,7 +21,6 @@ import (
"fmt"
"os"
"strings"
-
"sync"
"github.com/davecgh/go-spew/spew"
@@ -165,8 +164,12 @@ func (ui *CommandlineUI) ApproveSignData(request *SignDataRequest) (SignDataResp
fmt.Printf("-------- Sign data request--------------\n")
fmt.Printf("Account: %s\n", request.Address.String())
- fmt.Printf("message: \n%q\n", request.Message)
- fmt.Printf("raw data: \n%v\n", request.Rawdata)
+ fmt.Printf("message:\n")
+ for _, nvt := range request.Message {
+ fmt.Printf("%v\n", nvt.Pprint(1))
+ }
+ //fmt.Printf("message: \n%v\n", request.Message)
+ fmt.Printf("raw data: \n%q\n", request.Rawdata)
fmt.Printf("message hash: %v\n", request.Hash)
fmt.Printf("-------------------------------------------\n")
showMetadata(request.Meta)