cloudstack-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From d...@apache.org
Subject [2/2] git commit: updated refs/heads/master to df5f715
Date Tue, 14 Jul 2015 09:53:40 GMT
coverity in upgrade code 1164030: memory upgrade for ssvm 1164031: image store details encryption

Signed-off-by: Daan Hoogland <daan.hoogland@gmail.com>


Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/9681fefa
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/9681fefa
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/9681fefa

Branch: refs/heads/master
Commit: 9681fefaef31efa83d226910731358ebec1932fe
Parents: c539595
Author: Daan Hoogland <daan@onecht.net>
Authored: Fri Jul 10 16:31:22 2015 +0200
Committer: Daan Hoogland <daan.hoogland@gmail.com>
Committed: Tue Jul 14 11:53:22 2015 +0200

----------------------------------------------------------------------
 .../com/cloud/upgrade/dao/Upgrade421to430.java  | 138 +++++++------------
 1 file changed, 51 insertions(+), 87 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cloudstack/blob/9681fefa/engine/schema/src/com/cloud/upgrade/dao/Upgrade421to430.java
----------------------------------------------------------------------
diff --git a/engine/schema/src/com/cloud/upgrade/dao/Upgrade421to430.java b/engine/schema/src/com/cloud/upgrade/dao/Upgrade421to430.java
index eaf33d5..e812364 100644
--- a/engine/schema/src/com/cloud/upgrade/dao/Upgrade421to430.java
+++ b/engine/schema/src/com/cloud/upgrade/dao/Upgrade421to430.java
@@ -68,9 +68,6 @@ public class Upgrade421to430 implements DbUpgrade {
     }
 
     private void upgradeMemoryOfSsvmOffering(Connection conn) {
-        PreparedStatement updatePstmt = null;
-        PreparedStatement selectPstmt = null;
-        ResultSet selectResultSet = null;
         int newRamSize = 512; //512MB
         long serviceOfferingId = 0;
 
@@ -79,10 +76,11 @@ public class Upgrade421to430 implements DbUpgrade {
              * We should not update/modify any user-defined offering.
              */
 
-        try {
-            selectPstmt = conn.prepareStatement("SELECT id FROM `cloud`.`service_offering`
WHERE vm_type='secondarystoragevm'");
-            updatePstmt = conn.prepareStatement("UPDATE `cloud`.`service_offering` SET ram_size=?
WHERE id=?");
-            selectResultSet = selectPstmt.executeQuery();
+        try (
+                PreparedStatement selectPstmt = conn.prepareStatement("SELECT id FROM `cloud`.`service_offering`
WHERE vm_type='secondarystoragevm'");
+                PreparedStatement updatePstmt = conn.prepareStatement("UPDATE `cloud`.`service_offering`
SET ram_size=? WHERE id=?");
+                ResultSet selectResultSet = selectPstmt.executeQuery();
+            ) {
             if(selectResultSet.next()) {
                 serviceOfferingId = selectResultSet.getLong("id");
             }
@@ -92,26 +90,11 @@ public class Upgrade421to430 implements DbUpgrade {
             updatePstmt.executeUpdate();
         } catch (SQLException e) {
             throw new CloudRuntimeException("Unable to upgrade ram_size of service offering
for secondary storage vm. ", e);
-        } finally {
-            try {
-                if (selectPstmt != null) {
-                    selectPstmt.close();
-                }
-                if (selectResultSet != null) {
-                    selectResultSet.close();
-                }
-                if (updatePstmt != null) {
-                    updatePstmt.close();
-                }
-            } catch (SQLException e) {
-            }
         }
         s_logger.debug("Done upgrading RAM for service offering of Secondary Storage VM to
" + newRamSize);
     }
 
     private void encryptLdapConfigParams(Connection conn) {
-        PreparedStatement pstmt = null;
-
         String[][] ldapParams = { {"ldap.user.object", "inetOrgPerson", "Sets the object
type of users within LDAP"},
                 {"ldap.username.attribute", "uid", "Sets the username attribute used within
LDAP"}, {"ldap.email.attribute", "mail", "Sets the email attribute used within LDAP"},
                 {"ldap.firstname.attribute", "givenname", "Sets the firstname attribute used
within LDAP"},
@@ -122,69 +105,61 @@ public class Upgrade421to430 implements DbUpgrade {
         String insertSql = "INSERT INTO `cloud`.`configuration`(category, instance, component,
name, value, description) VALUES ('Secure', 'DEFAULT', 'management-server', ?, ?, "
                 + "?) ON DUPLICATE KEY UPDATE category='Secure';";
 
-        try {
-
-            pstmt = conn.prepareStatement(insertSql);
+        try (PreparedStatement pstmt_insert_ldap_parameters = conn.prepareStatement(insertSql);){
             for (String[] ldapParam : ldapParams) {
                 String name = ldapParam[0];
                 String value = ldapParam[1];
                 String desc = ldapParam[2];
                 String encryptedValue = DBEncryptionUtil.encrypt(value);
-                pstmt.setString(1, name);
-                pstmt.setBytes(2, encryptedValue.getBytes("UTF-8"));
-                pstmt.setString(3, desc);
-                pstmt.executeUpdate();
+                pstmt_insert_ldap_parameters.setString(1, name);
+                pstmt_insert_ldap_parameters.setBytes(2, encryptedValue.getBytes("UTF-8"));
+                pstmt_insert_ldap_parameters.setString(3, desc);
+                pstmt_insert_ldap_parameters.executeUpdate();
             }
 
-            pstmt.close();
-
             /**
              * if encrypted, decrypt the ldap hostname and port and then update as they are
not encrypted now.
              */
-            pstmt = conn.prepareStatement("SELECT conf.value FROM `cloud`.`configuration`
conf WHERE conf.name='ldap.hostname'");
-            ResultSet resultSet = pstmt.executeQuery();
-            String hostname = null;
-            String port;
-            int portNumber = 0;
-            if (resultSet.next()) {
-                hostname = DBEncryptionUtil.decrypt(resultSet.getString(1));
-            }
-
-            pstmt.close();
-
-            pstmt = conn.prepareStatement("SELECT conf.value FROM `cloud`.`configuration`
conf WHERE conf.name='ldap.port'");
-            resultSet = pstmt.executeQuery();
-            if (resultSet.next()) {
-                port = DBEncryptionUtil.decrypt(resultSet.getString(1));
-                if (StringUtils.isNotBlank(port)) {
-                    portNumber = Integer.parseInt(port);
+            try (
+                    PreparedStatement pstmt_ldap_hostname = conn.prepareStatement("SELECT
conf.value FROM `cloud`.`configuration` conf WHERE conf.name='ldap.hostname'");
+                    ResultSet resultSet_ldap_hostname = pstmt_ldap_hostname.executeQuery();
+                ) {
+                String hostname = null;
+                String port;
+                int portNumber = 0;
+                if (resultSet_ldap_hostname.next()) {
+                    hostname = DBEncryptionUtil.decrypt(resultSet_ldap_hostname.getString(1));
                 }
-            }
-            pstmt.close();
-
-            if (StringUtils.isNotBlank(hostname)) {
-                pstmt = conn.prepareStatement("INSERT INTO `cloud`.`ldap_configuration`(hostname,
port) VALUES(?,?)");
-                pstmt.setString(1, hostname);
-                if (portNumber != 0) {
-                    pstmt.setInt(2, portNumber);
-                } else {
-                    pstmt.setNull(2, Types.INTEGER);
+
+                try (
+                        PreparedStatement pstmt_ldap_port = conn.prepareStatement("SELECT
conf.value FROM `cloud`.`configuration` conf WHERE conf.name='ldap.port'");
+                        ResultSet resultSet_ldap_port = pstmt_ldap_port.executeQuery();
+                    ) {
+                    if (resultSet_ldap_port.next()) {
+                        port = DBEncryptionUtil.decrypt(resultSet_ldap_port.getString(1));
+                        if (StringUtils.isNotBlank(port)) {
+                            portNumber = Integer.parseInt(port);
+                        }
+                    }
+
+                    if (StringUtils.isNotBlank(hostname)) {
+                        try (PreparedStatement pstmt_insert_ldap_hostname_port = conn.prepareStatement("INSERT
INTO `cloud`.`ldap_configuration`(hostname, port) VALUES(?,?)");) {
+                            pstmt_insert_ldap_hostname_port.setString(1, hostname);
+                            if (portNumber != 0) {
+                                pstmt_insert_ldap_hostname_port.setInt(2, portNumber);
+                            } else {
+                                pstmt_insert_ldap_hostname_port.setNull(2, Types.INTEGER);
+                            }
+                            pstmt_insert_ldap_hostname_port.executeUpdate();
+                        }
+                    }
                 }
-                pstmt.executeUpdate();
-                pstmt.close();
             }
 
         } catch (SQLException e) {
             throw new CloudRuntimeException("Unable to insert ldap configuration values ",
e);
         } catch (UnsupportedEncodingException e) {
             throw new CloudRuntimeException("Unable to insert ldap configuration values ",
e);
-        } finally {
-            try {
-                if (pstmt != null) {
-                    pstmt.close();
-                }
-            } catch (SQLException e) {
-            }
         }
         s_logger.debug("Done encrypting ldap Config values");
 
@@ -192,11 +167,10 @@ public class Upgrade421to430 implements DbUpgrade {
 
     private void encryptImageStoreDetails(Connection conn) {
         s_logger.debug("Encrypting image store details");
-        PreparedStatement pstmt = null;
-        ResultSet rs = null;
-        try {
-            pstmt = conn.prepareStatement("select id, value from `cloud`.`image_store_details`
where name = 'key' or name = 'secretkey'");
-            rs = pstmt.executeQuery();
+        try (
+                PreparedStatement selectPstmt = conn.prepareStatement("select id, value from
`cloud`.`image_store_details` where name = 'key' or name = 'secretkey'");
+                ResultSet rs = selectPstmt.executeQuery();
+            ) {
             while (rs.next()) {
                 long id = rs.getLong(1);
                 String value = rs.getString(2);
@@ -204,26 +178,16 @@ public class Upgrade421to430 implements DbUpgrade {
                     continue;
                 }
                 String encryptedValue = DBEncryptionUtil.encrypt(value);
-                pstmt = conn.prepareStatement("update `cloud`.`image_store_details` set value=?
where id=?");
-                pstmt.setBytes(1, encryptedValue.getBytes("UTF-8"));
-                pstmt.setLong(2, id);
-                pstmt.executeUpdate();
+                try (PreparedStatement updatePstmt = conn.prepareStatement("update `cloud`.`image_store_details`
set value=? where id=?");) {
+                    updatePstmt.setBytes(1, encryptedValue.getBytes("UTF-8"));
+                    updatePstmt.setLong(2, id);
+                    updatePstmt.executeUpdate();
+                }
             }
         } catch (SQLException e) {
             throw new CloudRuntimeException("Unable encrypt image_store_details values ",
e);
         } catch (UnsupportedEncodingException e) {
             throw new CloudRuntimeException("Unable encrypt image_store_details values ",
e);
-        } finally {
-            try {
-                if (rs != null) {
-                    rs.close();
-                }
-
-                if (pstmt != null) {
-                    pstmt.close();
-                }
-            } catch (SQLException e) {
-            }
         }
         s_logger.debug("Done encrypting image_store_details");
     }


Mime
View raw message