Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

accounts: cache key addresses #2284

Merged
merged 17 commits into from
Apr 12, 2016
Merged

Commits on Apr 12, 2016

  1. tests: remove eth, node, accounts dependencies

    Unlocking the accounts in the test doesn't help with anything.
    fjl committed Apr 12, 2016
    Configuration menu
    Copy the full SHA
    83877a0 View commit details
    Browse the repository at this point in the history
  2. cmd/geth, cmd/utils: improve input handling

    These changes make prompting behave consistently on all platforms:
    
    * The input buffer is now global.
      Buffering was previously set up for each prompt, which can cause weird
      behaviour, e.g. when running "geth account update <input.txt" where
      input.txt contains three lines. In this case, the first password
      prompt would fill up the buffer with all lines and then use only the
      first one.
    
    * Print the "unsupported terminal" warning only once.
      Now that stdin prompting has global state, we can use it to track
      the warning there.
    
    * Work around small liner issues, particularly on Windows.
      Prompting didn't work under most of the third-party terminal emulators
      on Windows because liner assumes line editing is always available.
    fjl committed Apr 12, 2016
    Configuration menu
    Copy the full SHA
    dff9b42 View commit details
    Browse the repository at this point in the history
  3. accounts, crypto: move keystore to package accounts

    The account management API was originally implemented as a thin layer
    around crypto.KeyStore, on the grounds that several kinds of key stores
    would be implemented later on. It turns out that this won't happen so
    KeyStore is a superflous abstraction.
    
    In this commit crypto.KeyStore and everything related to it moves to
    package accounts and is unexported.
    fjl committed Apr 12, 2016
    Configuration menu
    Copy the full SHA
    85e6c40 View commit details
    Browse the repository at this point in the history
  4. accounts: fix go vet warnings

    fjl committed Apr 12, 2016
    Configuration menu
    Copy the full SHA
    4e6d8b3 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    2dc2096 View commit details
    Browse the repository at this point in the history
  6. accounts: streamline API

    - Manager.Accounts no longer returns an error.
    - Manager methods take Account instead of common.Address.
    - All uses of Account with unkeyed fields are converted.
    fjl committed Apr 12, 2016
    Configuration menu
    Copy the full SHA
    46e8940 View commit details
    Browse the repository at this point in the history
  7. Godeps: add github.com/cspeare/cp

    fjl committed Apr 12, 2016
    Configuration menu
    Copy the full SHA
    6cb08d8 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    ee1682f View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    ef63e9a View commit details
    Browse the repository at this point in the history
  10. accounts: cache key addresses

    In order to avoid disk thrashing for Accounts and HasAccount,
    address->key file mappings are now cached in memory. This makes it no
    longer necessary to keep the key address in the file name. The address
    of each key is derived from file content instead.
    
    There are minor user-visible changes:
    
    - "geth account list" now reports key file paths alongside the address.
    - If multiple keys are present for an address, unlocking by address is
      not possible. Users are directed to remove the duplicate files
      instead. Unlocking by index is still possible.
    - Key files are overwritten written in place when updating the password.
    fjl committed Apr 12, 2016
    Configuration menu
    Copy the full SHA
    a9f26dc View commit details
    Browse the repository at this point in the history
  11. accounts: add ErrDecrypt

    fjl committed Apr 12, 2016
    Configuration menu
    Copy the full SHA
    6f1ca0b View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    549f1ad View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    aca9d6a View commit details
    Browse the repository at this point in the history
  14. cmd/utils: fix --password on Windows

    Text files created on Windows typically have \r\n line endings.
    Trim them when reading password files.
    fjl committed Apr 12, 2016
    Configuration menu
    Copy the full SHA
    ea005a0 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    91aadda View commit details
    Browse the repository at this point in the history
  16. accounts: improve API and add documentation

    - Sign takes common.Address, not Account
    - Import/Export methods work with encrypted JSON keys
    fjl committed Apr 12, 2016
    Configuration menu
    Copy the full SHA
    46df50b View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    6498df7 View commit details
    Browse the repository at this point in the history