Fix errors find by valgrid.
authorBartlomiej Grzelewski <b.grzelewski@samsung.com>
Mon, 7 Jul 2014 19:21:41 +0000 (21:21 +0200)
committerBartlomiej Grzelewski <b.grzelewski@samsung.com>
Fri, 12 Sep 2014 12:58:49 +0000 (14:58 +0200)
Change-Id: Id123d90a8c59ac0b72c3d95823bf22c03de371d5

src/manager/client/client-common.cpp
src/manager/main/socket-manager.cpp
src/manager/service/ckm-logic.cpp

index ad3f59f..1679923 100644 (file)
@@ -115,7 +115,7 @@ public:
 
         int retval = TEMP_FAILURE_RETRY(connect(m_sock, (struct sockaddr*)&clientAddr, SUN_LEN(&clientAddr)));
         if ((retval == -1) && (errno == EINPROGRESS)) {
-            if (0 >= waitForSocket(m_sock, POLLIN, POLL_TIMEOUT)) {
+            if (0 >= waitForSocket(m_sock, POLLOUT, POLL_TIMEOUT)) {
                 LogError("Error in waitForSocket.");
                 return CKM_API_ERROR_SOCKET;
             }
index bfdfb14..db58139 100644 (file)
@@ -169,7 +169,8 @@ SocketManager::CreateDefaultReadSocketDescription(int sock, bool timeout)
 }
 
 SocketManager::SocketManager()
-  : m_counter(0)
+  : m_maxDesc(0)
+  , m_counter(0)
 {
     FD_ZERO(&m_readSet);
     FD_ZERO(&m_writeSet);
index 68fc98c..1e9c14c 100644 (file)
@@ -169,13 +169,14 @@ int CKMLogic::saveDataHelper(
             LogDebug("No Key in database found. Generating new one for label: "
                     << cred.smackLabel);
             key = handler.keyProvider.generateDEK(cred.smackLabel);
+            handler.database.saveKey(cred.smackLabel, key);
         } else {
+            LogDebug("Key from DB");
             key = *key_optional;
         }
 
         key = handler.keyProvider.getPureDEK(key);
         handler.crypto.pushKey(cred.smackLabel, key);
-        handler.database.saveKey(cred.smackLabel, key);
     }
     handler.crypto.encryptRow(policy.password, row);
     handler.database.saveDBRow(row);