summaryrefslogtreecommitdiffstats
path: root/crypto/src
diff options
context:
space:
mode:
authorKenny Root <kroot@google.com>2013-09-25 16:11:09 -0700
committerKenny Root <kroot@google.com>2013-09-25 16:13:35 -0700
commitaffc5f44e461331f0e768791ee55911912500e0c (patch)
tree0d3e920632f6fce19aad0f33d56f3c7493c40b40 /crypto/src
parent5444a8ef87dc014f79914d78f468cc65fda10c77 (diff)
downloadlibcore-affc5f44e461331f0e768791ee55911912500e0c.zip
libcore-affc5f44e461331f0e768791ee55911912500e0c.tar.gz
libcore-affc5f44e461331f0e768791ee55911912500e0c.tar.bz2
Do not throw exception on Mac#reset
OpenSSLMac was not checking whether it was initialized before dereferencing its macKey field. This caused callers to Mac#reset() before Mac#init() to get a NullPointerException. Bug: https://code.google.com/p/android/issues/detail?id=58179 Change-Id: I8523983fec578079a66a04d585c1ddbe7732575e
Diffstat (limited to 'crypto/src')
-rw-r--r--crypto/src/main/java/org/conscrypt/OpenSSLMac.java4
1 files changed, 4 insertions, 0 deletions
diff --git a/crypto/src/main/java/org/conscrypt/OpenSSLMac.java b/crypto/src/main/java/org/conscrypt/OpenSSLMac.java
index 824e6b9..ed9ea52 100644
--- a/crypto/src/main/java/org/conscrypt/OpenSSLMac.java
+++ b/crypto/src/main/java/org/conscrypt/OpenSSLMac.java
@@ -94,6 +94,10 @@ public abstract class OpenSSLMac extends MacSpi {
}
private void reset() {
+ final OpenSSLKey macKey = this.macKey;
+ if (macKey == null) {
+ return;
+ }
NativeCrypto.EVP_DigestSignInit(ctx.getContext(), evp_md, macKey.getPkeyContext());
}