Refactor SignerSource to expose DerivationPath to other kinds of signers (#16933)

* One use statement

* Add stdin uri scheme

* Convert parse_signer_source to return Result

* A-Z deps

* Convert Usb data to Locator

* Pull DerivationPath out of Locator

* Wrap SignerSource to share derivation_path

* Review comments

* Check Filepath existence, readability in parse_signer_source
This commit is contained in:
Tyera Eulberg
2021-04-29 01:42:21 -06:00
committed by GitHub
parent d640ac143b
commit d6f30b7537
15 changed files with 509 additions and 447 deletions

View File

@@ -44,36 +44,38 @@ byteorder = { version = "1.3.4", optional = true }
chrono = { version = "0.4", optional = true }
curve25519-dalek = { version = "2.1.0", optional = true }
derivation-path = { version = "0.1.3", default-features = false }
digest = { version = "0.9.0", optional = true }
ed25519-dalek = { version = "=1.0.1", optional = true }
generic-array = { version = "0.14.3", default-features = false, features = ["serde", "more_lengths"], optional = true }
hex = "0.4.2"
hmac = "0.10.1"
itertools = "0.9.0"
lazy_static = "1.4.0"
libsecp256k1 = { version = "0.3.5", optional = true }
log = "0.4.11"
memmap2 = { version = "0.1.0", optional = true }
num-derive = "0.3"
num-traits = "0.2"
pbkdf2 = { version = "0.6.0", default-features = false }
qstring = "0.7.2"
rand = { version = "0.7.0", optional = true }
rand_chacha = { version = "0.2.2", optional = true }
rand_core = "0.6.2"
rustversion = "1.0.4"
serde = "1.0.122"
serde_bytes = "0.11"
serde_derive = "1.0.103"
serde_json = { version = "1.0.56", optional = true }
sha2 = "0.9.2"
thiserror = "1.0"
ed25519-dalek = { version = "=1.0.1", optional = true }
sha3 = { version = "0.9.1", optional = true }
solana-crate-features = { path = "../crate-features", version = "=1.7.0", optional = true }
solana-logger = { path = "../logger", version = "=1.7.0", optional = true }
solana-frozen-abi = { path = "../frozen-abi", version = "=1.7.0" }
solana-frozen-abi-macro = { path = "../frozen-abi/macro", version = "=1.7.0" }
solana-program = { path = "program", version = "=1.7.0" }
solana-sdk-macro = { path = "macro", version = "=1.7.0" }
rustversion = "1.0.4"
libsecp256k1 = { version = "0.3.5", optional = true }
sha3 = { version = "0.9.1", optional = true }
digest = { version = "0.9.0", optional = true }
thiserror = "1.0"
uriparse = "0.6.3"
[dev-dependencies]
curve25519-dalek = "2.1.0"