summaryrefslogtreecommitdiffstats
path: root/base/util/src/netscape
diff options
context:
space:
mode:
authorAbhishek Koneru <akoneru@redhat.com>2012-06-06 16:55:54 -0400
committerEndi Sukma Dewata <edewata@redhat.com>2012-06-14 17:14:19 -0500
commitc53ca291e21761f1de5417ef596afba395a7f5d1 (patch)
tree47a0cd8ecd9d36d414d9230282704e9f784d0a71 /base/util/src/netscape
parent084a8cd360c7508febde06415d727d7d247b16ad (diff)
downloadpki-c53ca291e21761f1de5417ef596afba395a7f5d1.tar.gz
pki-c53ca291e21761f1de5417ef596afba395a7f5d1.tar.xz
pki-c53ca291e21761f1de5417ef596afba395a7f5d1.zip
Fixes for NULL_RETURNS Coverity Issues - Part 2
Diffstat (limited to 'base/util/src/netscape')
-rw-r--r--base/util/src/netscape/security/extensions/NSCertTypeExtension.java8
-rw-r--r--base/util/src/netscape/security/util/DerInputBuffer.java4
-rw-r--r--base/util/src/netscape/security/util/DerInputStream.java3
-rw-r--r--base/util/src/netscape/security/x509/IssuingDistributionPointExtension.java3
4 files changed, 13 insertions, 5 deletions
diff --git a/base/util/src/netscape/security/extensions/NSCertTypeExtension.java b/base/util/src/netscape/security/extensions/NSCertTypeExtension.java
index 22197be9b..1a240f1ce 100644
--- a/base/util/src/netscape/security/extensions/NSCertTypeExtension.java
+++ b/base/util/src/netscape/security/extensions/NSCertTypeExtension.java
@@ -24,6 +24,7 @@ import java.security.cert.CertificateException;
import java.util.Enumeration;
import java.util.Vector;
+import netscape.security.util.BitArray;
import netscape.security.util.DerOutputStream;
import netscape.security.util.DerValue;
import netscape.security.util.ObjectIdentifier;
@@ -241,8 +242,11 @@ public class NSCertTypeExtension extends Extension implements CertAttrSet {
this.extensionValue = extValue;
DerValue val = new DerValue(extValue);
-
- this.mBitString = val.getUnalignedBitString().toByteArray();
+ BitArray bitArray = val.getUnalignedBitString();
+ if (bitArray == null) {
+ throw new IOException("Invalid Encoded DER Value");
+ }
+ this.mBitString = bitArray.toByteArray();
}
/**
diff --git a/base/util/src/netscape/security/util/DerInputBuffer.java b/base/util/src/netscape/security/util/DerInputBuffer.java
index 429bf4d6a..e1cdcf6fb 100644
--- a/base/util/src/netscape/security/util/DerInputBuffer.java
+++ b/base/util/src/netscape/security/util/DerInputBuffer.java
@@ -52,10 +52,10 @@ class DerInputBuffer extends ByteArrayInputStream implements Cloneable {
}
}
- byte[] toByteArray() {
+ byte[] toByteArray() throws IOException {
int len = available();
if (len <= 0)
- return null;
+ throw new IOException("No Buffer Space Available.");
byte[] retval = new byte[len];
System.arraycopy(buf, pos, retval, 0, len);
diff --git a/base/util/src/netscape/security/util/DerInputStream.java b/base/util/src/netscape/security/util/DerInputStream.java
index b8c1c8c93..ff1c54ba2 100644
--- a/base/util/src/netscape/security/util/DerInputStream.java
+++ b/base/util/src/netscape/security/util/DerInputStream.java
@@ -112,8 +112,9 @@ public class DerInputStream {
/**
* Return what has been written to this DerInputStream
* as a byte array. Useful for debugging.
+ * @throws IOException
*/
- public byte[] toByteArray() {
+ public byte[] toByteArray() throws IOException {
return buffer.toByteArray();
}
diff --git a/base/util/src/netscape/security/x509/IssuingDistributionPointExtension.java b/base/util/src/netscape/security/x509/IssuingDistributionPointExtension.java
index 67ace692e..0f8c8835c 100644
--- a/base/util/src/netscape/security/x509/IssuingDistributionPointExtension.java
+++ b/base/util/src/netscape/security/x509/IssuingDistributionPointExtension.java
@@ -195,6 +195,9 @@ public class IssuingDistributionPointExtension extends Extension
opt.resetTag(DerValue.tag_BitString);
try {
BitArray reasons = opt.getUnalignedBitString();
+ if (reasons == null) {
+ throw new IOException("Unable to get the unaligned bit string.");
+ }
issuingDistributionPoint.setOnlySomeReasons(reasons);
@SuppressWarnings("unused")