From 8a8436f73d4c4edd10b43313b724f32ccb7b957e Mon Sep 17 00:00:00 2001 From: Abhishek Koneru Date: Wed, 20 Jun 2012 13:56:57 -0400 Subject: Fixes for Coverity issues of type Resource Leaks - Remaining --- .../security/extensions/GenericASN1Extension.java | 52 ++++++++------ .../extensions/PresenceServerExtension.java | 84 +++++++++++++--------- .../security/x509/CRLDistributionPoint.java | 11 ++- .../x509/CRLDistributionPointsExtension.java | 14 ++-- .../security/x509/FreshestCRLExtension.java | 14 ++-- .../security/x509/IssuingDistributionPoint.java | 12 +++- .../x509/IssuingDistributionPointExtension.java | 13 +++- base/util/src/netscape/security/x509/OIDMap.java | 23 +++++- 8 files changed, 152 insertions(+), 71 deletions(-) (limited to 'base/util/src/netscape') diff --git a/base/util/src/netscape/security/extensions/GenericASN1Extension.java b/base/util/src/netscape/security/extensions/GenericASN1Extension.java index 78d294573..b51846498 100644 --- a/base/util/src/netscape/security/extensions/GenericASN1Extension.java +++ b/base/util/src/netscape/security/extensions/GenericASN1Extension.java @@ -419,31 +419,37 @@ public class GenericASN1Extension extends Extension } FileInputStream fis = new FileInputStream(fname); - int n = 0; - while ((n = fis.available()) > 0) { - buff = new byte[n]; - int result = fis.read(buff); - if (result == -1) - break; - s = new String(buff); - } + try { + int n = 0; + while ((n = fis.available()) > 0) { + buff = new byte[n]; + int result = fis.read(buff); + if (result == -1) + break; + s = new String(buff); + } - for (i = 0, j = 0; j < s.length(); j++) { - int ch = s.charAt(j); - if (ch == 10 || ch == 13 || ch == 9) - continue; - i++; - } - buff = new byte[i]; - for (i = 0, j = 0; j < s.length(); j++) { - int ch = s.charAt(j); - if (ch == 10 || ch == 13 || ch == 9) - continue; - buff[i++] = (byte) ch; - } + for (i = 0, j = 0; j < s.length(); j++) { + int ch = s.charAt(j); + if (ch == 10 || ch == 13 || ch == 9) + continue; + i++; + } + buff = new byte[i]; + for (i = 0, j = 0; j < s.length(); j++) { + int ch = s.charAt(j); + if (ch == 10 || ch == 13 || ch == 9) + continue; + buff[i++] = (byte) ch; + } - s = new String(buff); + s = new String(buff); - return s; + return s; + } finally { + if (fis != null) { + fis.close(); + } + } } } diff --git a/base/util/src/netscape/security/extensions/PresenceServerExtension.java b/base/util/src/netscape/security/extensions/PresenceServerExtension.java index 276c91547..5ee802468 100644 --- a/base/util/src/netscape/security/extensions/PresenceServerExtension.java +++ b/base/util/src/netscape/security/extensions/PresenceServerExtension.java @@ -259,7 +259,7 @@ public class PresenceServerExtension extends Extension implements CertAttrSet { public void setOID(String oid) { } - public static void main(String args[]) throws Exception { + public static void main(String args[]) { /* 0 30 115: SEQUENCE { 2 06 9: OBJECT IDENTIFIER '2 16 840 1 113730 1 100' @@ -285,36 +285,56 @@ public class PresenceServerExtension extends Extension implements CertAttrSet { : } : } */ - boolean critical = false; - int version = 1; - String streetAddress = "401E Middlefield Rd.,MV,CA94041"; - String telephoneNumber = "650-111-1111"; - String rfc822Name = "admin@netscape.com"; - String ID = "ps-capitol"; - String hostName = "capitol"; - int portNumber = 80; - int maxUsers = 10; - int serviceLevel = 1; - - PresenceServerExtension ext = new PresenceServerExtension( - critical, - version, streetAddress, telephoneNumber, - rfc822Name, ID, hostName, portNumber, - maxUsers, serviceLevel); - - // encode - - ByteArrayOutputStream dos = new ByteArrayOutputStream(); - ext.encode(dos); - FileOutputStream fos = new FileOutputStream("pse.der"); - fos.write(dos.toByteArray()); - fos.close(); - - Extension ext1 = new Extension(new DerValue(dos.toByteArray())); - - @SuppressWarnings("unused") - PresenceServerExtension ext2 = new PresenceServerExtension( - Boolean.valueOf(false), ext1.getExtensionValue()); - + ByteArrayOutputStream dos = null; + FileOutputStream fos = null; + try { + boolean critical = false; + int version = 1; + String streetAddress = "401E Middlefield Rd.,MV,CA94041"; + String telephoneNumber = "650-111-1111"; + String rfc822Name = "admin@netscape.com"; + String ID = "ps-capitol"; + String hostName = "capitol"; + int portNumber = 80; + int maxUsers = 10; + int serviceLevel = 1; + + PresenceServerExtension ext = new PresenceServerExtension( + critical, + version, streetAddress, telephoneNumber, + rfc822Name, ID, hostName, portNumber, + maxUsers, serviceLevel); + + // encode + + dos = new ByteArrayOutputStream(); + ext.encode(dos); + fos = new FileOutputStream("pse.der"); + fos.write(dos.toByteArray()); + Extension ext1 = new Extension(new DerValue(dos.toByteArray())); + + @SuppressWarnings("unused") + PresenceServerExtension ext2 = new PresenceServerExtension( + Boolean.valueOf(false), ext1.getExtensionValue()); + } catch (IOException e) { + e.printStackTrace(); + } catch (CertificateException e) { + e.printStackTrace(); + } finally { + if (dos != null) { + try { + dos.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + if (fos != null) { + try { + fos.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } } } diff --git a/base/util/src/netscape/security/x509/CRLDistributionPoint.java b/base/util/src/netscape/security/x509/CRLDistributionPoint.java index 442957449..2c70bf3e6 100644 --- a/base/util/src/netscape/security/x509/CRLDistributionPoint.java +++ b/base/util/src/netscape/security/x509/CRLDistributionPoint.java @@ -252,13 +252,14 @@ public class CRLDistributionPoint implements ASN1Value { } public static void main(String args[]) { + ByteArrayOutputStream bos = null; try { if (args.length != 1) { System.out.println("Usage: CRLDistributionPoint "); System.exit(-1); } - ByteArrayOutputStream bos = new ByteArrayOutputStream(); + bos = new ByteArrayOutputStream(); SEQUENCE cdps = new SEQUENCE(); @@ -336,6 +337,14 @@ public class CRLDistributionPoint implements ASN1Value { } catch (Exception e) { e.printStackTrace(); + } finally { + if (bos != null) { + try { + bos.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } } } diff --git a/base/util/src/netscape/security/x509/CRLDistributionPointsExtension.java b/base/util/src/netscape/security/x509/CRLDistributionPointsExtension.java index 4180473d4..d8dee03a7 100644 --- a/base/util/src/netscape/security/x509/CRLDistributionPointsExtension.java +++ b/base/util/src/netscape/security/x509/CRLDistributionPointsExtension.java @@ -243,7 +243,7 @@ public class CRLDistributionPointsExtension extends Extension * Test driver. */ public static void main(String args[]) { - + BufferedOutputStream bos = null; try { if (args.length != 1) { @@ -252,7 +252,7 @@ public class CRLDistributionPointsExtension extends Extension System.exit(-1); } - BufferedOutputStream bos = new BufferedOutputStream( + bos = new BufferedOutputStream( new FileOutputStream(args[0])); // URI only @@ -291,10 +291,16 @@ public class CRLDistributionPointsExtension extends Extension crldpExt.setCritical(true); crldpExt.encode(bos); - bos.close(); - } catch (Exception e) { e.printStackTrace(); + } finally { + if (bos != null) { + try { + bos.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } } } diff --git a/base/util/src/netscape/security/x509/FreshestCRLExtension.java b/base/util/src/netscape/security/x509/FreshestCRLExtension.java index f108b4599..222a5e959 100644 --- a/base/util/src/netscape/security/x509/FreshestCRLExtension.java +++ b/base/util/src/netscape/security/x509/FreshestCRLExtension.java @@ -248,7 +248,7 @@ public class FreshestCRLExtension extends Extension * Test driver. */ public static void main(String args[]) { - + BufferedOutputStream bos = null; try { if (args.length != 1) { @@ -257,7 +257,7 @@ public class FreshestCRLExtension extends Extension System.exit(-1); } - BufferedOutputStream bos = new BufferedOutputStream( + bos = new BufferedOutputStream( new FileOutputStream(args[0])); // URI only @@ -296,10 +296,16 @@ public class FreshestCRLExtension extends Extension crldpExt.setCritical(true); crldpExt.encode(bos); - bos.close(); - } catch (Exception e) { e.printStackTrace(); + } finally { + if (bos != null) { + try { + bos.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } } } diff --git a/base/util/src/netscape/security/x509/IssuingDistributionPoint.java b/base/util/src/netscape/security/x509/IssuingDistributionPoint.java index 504587bf4..06638f2dd 100644 --- a/base/util/src/netscape/security/x509/IssuingDistributionPoint.java +++ b/base/util/src/netscape/security/x509/IssuingDistributionPoint.java @@ -272,6 +272,7 @@ public class IssuingDistributionPoint implements ASN1Value { } public static void main(String args[]) { + BufferedOutputStream bos = null; try { if (args.length != 1) { @@ -279,7 +280,7 @@ public class IssuingDistributionPoint implements ASN1Value { System.exit(-1); } - BufferedOutputStream bos = new BufferedOutputStream( + bos = new BufferedOutputStream( new FileOutputStream(args[0])); SEQUENCE idps = new SEQUENCE(); @@ -306,9 +307,16 @@ public class IssuingDistributionPoint implements ASN1Value { idps.addElement(idp); idps.encode(bos); - bos.close(); } catch (Exception e) { e.printStackTrace(); + } finally { + if (bos != null) { + try { + bos.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } } } diff --git a/base/util/src/netscape/security/x509/IssuingDistributionPointExtension.java b/base/util/src/netscape/security/x509/IssuingDistributionPointExtension.java index 0f8c8835c..b78a891c2 100644 --- a/base/util/src/netscape/security/x509/IssuingDistributionPointExtension.java +++ b/base/util/src/netscape/security/x509/IssuingDistributionPointExtension.java @@ -361,6 +361,7 @@ public class IssuingDistributionPointExtension extends Extension */ public static void main(String args[]) { + BufferedOutputStream bos = null; try { if (args.length != 1) { @@ -369,7 +370,7 @@ public class IssuingDistributionPointExtension extends Extension System.exit(-1); } - BufferedOutputStream bos = new BufferedOutputStream( + bos = new BufferedOutputStream( new FileOutputStream(args[0])); // URI only @@ -410,10 +411,18 @@ public class IssuingDistributionPointExtension extends Extension idpExt.setCritical(false); idpExt.encode(bos); - bos.close(); + } catch (Exception e) { e.printStackTrace(); + } finally { + if (bos != null) { + try { + bos.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } } } } diff --git a/base/util/src/netscape/security/x509/OIDMap.java b/base/util/src/netscape/security/x509/OIDMap.java index 17573a019..4cebcf2c8 100644 --- a/base/util/src/netscape/security/x509/OIDMap.java +++ b/base/util/src/netscape/security/x509/OIDMap.java @@ -165,12 +165,20 @@ public class OIDMap { if (!namesMap.exists()) { loadNamesDefault(props); } else { + FileInputStream fis = null; try { - FileInputStream fis = new FileInputStream(namesMap); + fis = new FileInputStream(namesMap); props.load(fis); - fis.close(); } catch (IOException e) { loadNamesDefault(props); + } finally { + if (fis != null) { + try { + fis.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } } } @@ -193,11 +201,20 @@ public class OIDMap { if (!classMap.exists()) { loadClassDefault(props); } else { + FileInputStream fis = null; try { - FileInputStream fis = new FileInputStream(classMap); + fis = new FileInputStream(classMap); props.load(fis); } catch (IOException e) { loadClassDefault(props); + } finally { + if (fis != null) { + try { + fis.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } } } -- cgit