diff options
author | Abhishek Koneru <akoneru@redhat.com> | 2012-06-18 14:08:21 -0400 |
---|---|---|
committer | Endi Sukma Dewata <edewata@redhat.com> | 2012-06-21 15:18:59 -0500 |
commit | de3aaef15e9b1f192344019f52d6c80860055b5e (patch) | |
tree | 595eec5aa554091f4a21cf9bc6bf6698e747bf23 /base/silent/src/com/netscape/pkisilent/ConfigureDRM.java | |
parent | 3153fa5ba15d402b4729a649737d02eead5a5064 (diff) | |
download | pki-de3aaef15e9b1f192344019f52d6c80860055b5e.tar.gz pki-de3aaef15e9b1f192344019f52d6c80860055b5e.tar.xz pki-de3aaef15e9b1f192344019f52d6c80860055b5e.zip |
Fixes for Resource Leaks shown in Coverity for DogTag 10
Diffstat (limited to 'base/silent/src/com/netscape/pkisilent/ConfigureDRM.java')
-rw-r--r-- | base/silent/src/com/netscape/pkisilent/ConfigureDRM.java | 54 |
1 files changed, 40 insertions, 14 deletions
diff --git a/base/silent/src/com/netscape/pkisilent/ConfigureDRM.java b/base/silent/src/com/netscape/pkisilent/ConfigureDRM.java index ca3581869..d4bbe599c 100644 --- a/base/silent/src/com/netscape/pkisilent/ConfigureDRM.java +++ b/base/silent/src/com/netscape/pkisilent/ConfigureDRM.java @@ -23,6 +23,7 @@ import java.io.BufferedReader; import java.io.ByteArrayInputStream; import java.io.FileInputStream; import java.io.FileOutputStream; +import java.io.IOException; import java.io.InputStreamReader; import java.net.URLEncoder; import java.util.ArrayList; @@ -661,27 +662,46 @@ public class ConfigureDRM { hr = hc.sslConnect(cs_hostname, cs_port, pkcs12_uri, query_string); // dump hr.getResponseData() to file - try { - FileOutputStream fos = new FileOutputStream(backup_fname); - fos.write(hr.getResponseData()); - fos.close(); + try { + FileOutputStream fos = null; + try { + fos = new FileOutputStream(backup_fname); + fos.write(hr.getResponseData()); + } finally { + if (fos != null) { + fos.close(); + } + } // set file to permissions 600 String rtParams[] = { "chmod", "600", backup_fname }; Process proc = Runtime.getRuntime().exec(rtParams); - - BufferedReader br = new BufferedReader(new InputStreamReader(proc.getErrorStream())); - String line = null; - while ((line = br.readLine()) != null) - System.out.println("Error: " + line); + BufferedReader br = null; + try { + br = new BufferedReader(new InputStreamReader(proc.getErrorStream())); + String line = null; + while ((line = br.readLine()) != null) + System.out.println("Error: " + line); + } finally { + if (br != null) { + br.close(); + } + } proc.waitFor(); // verify p12 file // Decode the P12 file - FileInputStream fis = new FileInputStream(backup_fname); - PFX.Template pfxt = new PFX.Template(); - PFX pfx = (PFX) pfxt.decode(new BufferedInputStream(fis, 2048)); + FileInputStream fis = null; + PFX pfx = null; + try { + fis = new FileInputStream(backup_fname); + PFX.Template pfxt = new PFX.Template(); + pfx = (PFX) pfxt.decode(new BufferedInputStream(fis, 2048)); + } finally { + if (fis != null) + fis.close(); + } System.out.println("Decoded PFX"); // now peruse it for interesting info @@ -691,8 +711,6 @@ public class ConfigureDRM { System.out.println("AuthSafes has " + asSeq.size() + " SafeContents"); - fis.close(); - if (clone) { query_string = "p=12" + "&op=next" + "&xml=true"; hr = hc.sslConnect(cs_hostname, cs_port, wizard_uri, query_string); @@ -705,6 +723,14 @@ public class ConfigureDRM { } catch (Exception e) { System.out.println("ERROR: Exception=" + e.getMessage()); return false; + } finally { + if (bais != null) { + try { + bais.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } } return true; |