diff options
| author | Wladimir J. van der Laan <[email protected]> | 2015-10-31 00:39:45 +0100 |
|---|---|---|
| committer | Wladimir J. van der Laan <[email protected]> | 2015-10-31 00:39:50 +0100 |
| commit | 48b5b84ee511d5ccd0d47bb0018c1b3c9ddebeff (patch) | |
| tree | c41db909f64474f51a2210cfec2a67f7f5dde062 /src | |
| parent | Merge pull request #6896 (diff) | |
| parent | Reject invalid pubkeys when reading ckey items from the wallet. (diff) | |
| download | discoin-48b5b84ee511d5ccd0d47bb0018c1b3c9ddebeff.tar.xz discoin-48b5b84ee511d5ccd0d47bb0018c1b3c9ddebeff.zip | |
Merge pull request #6906
30d9662 Reject invalid pubkeys when reading ckey items from the wallet. (Gregory Maxwell)
Diffstat (limited to 'src')
| -rw-r--r-- | src/wallet/walletdb.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/wallet/walletdb.cpp b/src/wallet/walletdb.cpp index 0624e442d..ea8a4eb04 100644 --- a/src/wallet/walletdb.cpp +++ b/src/wallet/walletdb.cpp @@ -512,8 +512,13 @@ ReadKeyValue(CWallet* pwallet, CDataStream& ssKey, CDataStream& ssValue, } else if (strType == "ckey") { - vector<unsigned char> vchPubKey; + CPubKey vchPubKey; ssKey >> vchPubKey; + if (!vchPubKey.IsValid()) + { + strErr = "Error reading wallet database: CPubKey corrupt"; + return false; + } vector<unsigned char> vchPrivKey; ssValue >> vchPrivKey; wss.nCKeys++; |