- Fix the prevent problems.
authorWonkyu Kwon <wonkyu.kwon@samsung.com>
Tue, 27 Nov 2012 06:27:12 +0000 (15:27 +0900)
committerWonkyu Kwon <wonkyu.kwon@samsung.com>
Tue, 27 Nov 2012 06:27:12 +0000 (15:27 +0900)
Change-Id: If98bfb6e0cd7500b8806fe30b92e008bd4915a62

client/ClientIPC.cpp
client/SEService.cpp
common/OpensslHelper.cpp
packaging/smartcard-service.spec
server/ServerIPC.cpp

index 8c50ff8..0dea0ed 100644 (file)
@@ -149,21 +149,20 @@ namespace smartcard_service_api
 
        int ClientIPC::handleIOErrorCondition(void *channel, GIOCondition condition)
        {
-               SCARD_BEGIN();
+               DispatcherMsg dispMsg;
 
-               /* push disconnect message */
-               DispatcherMsg *dispMsg = new DispatcherMsg();
+               SCARD_BEGIN();
 
-               dispMsg->message = Message::MSG_OPERATION_RELEASE_CLIENT;
-               dispMsg->error = -1;
+               /* push or process disconnect message */
+               dispMsg.message = Message::MSG_OPERATION_RELEASE_CLIENT;
+               dispMsg.error = -1;
 
                if (dispatcher != NULL)
                {
 #ifdef CLIENT_IPC_THREAD
-                       dispatcher->processMessage(dispMsg);
-                       delete dispMsg;
+                       dispatcher->processMessage(&dispMsg);
 #else
-                       dispatcher->pushMessage(dispMsg);
+                       dispatcher->pushMessage(&dispMsg);
 #endif
                }
 
index 082aec3..d2a3b78 100644 (file)
@@ -97,7 +97,10 @@ namespace smartcard_service_api
                msg.caller = (void *)this;
                msg.callback = (void *)this; /* if callback is class instance, it means synchronized call */
 
-               ClientIPC::getInstance().sendMessage(&msg);
+               if (ClientIPC::getInstance().sendMessage(&msg) == false)
+               {
+                       SCARD_DEBUG_ERR("time over");
+               }
        }
 
        void SEService::shutdownSync()
index 5241bad..175bc11 100644 (file)
@@ -146,7 +146,10 @@ namespace smartcard_service_api
                                memset(temp, 0, EVP_MAX_MD_SIZE);
 
                                EVP_DigestInit(&mdCtx, md);
-                               EVP_DigestUpdate(&mdCtx, buffer.getBuffer(), buffer.getLength());
+                               if (EVP_DigestUpdate(&mdCtx, buffer.getBuffer(), buffer.getLength()) != 0)
+                               {
+                                       SCARD_DEBUG_ERR("EVP_DigestUpdate failed");
+                               }
                                EVP_DigestFinal(&mdCtx, temp, &resultLen);
 
                                result.setBuffer(temp, resultLen);
index 4f63354..1ff1891 100644 (file)
@@ -1,7 +1,7 @@
 Name:       smartcard-service
 Summary:    Smartcard Service FW
 Version:    0.1.0
-Release:    27
+Release:    28
 Group:      libs
 License:    Samsung Proprietary License
 Source0:    %{name}-%{version}.tar.gz
index c6c1a59..739a557 100644 (file)
@@ -197,20 +197,18 @@ ERROR :
                }
                else
                {
-                       DispatcherMsg *dispMsg = NULL;
+                       DispatcherMsg dispMsg;
                        int peerSocket = g_io_channel_unix_get_fd((GIOChannel *)channel);
 
                        SCARD_DEBUG("client socket is closed, socket [%d]", peerSocket);
 
                        /* push messsage to dispatcher */
-                       dispMsg = new DispatcherMsg();
-
-                       dispMsg->message = Message::MSG_OPERATION_RELEASE_CLIENT;
-                       dispMsg->param1 = peerSocket;
-                       dispMsg->setPeerSocket(peerSocket);
+                       dispMsg.message = Message::MSG_OPERATION_RELEASE_CLIENT;
+                       dispMsg.param1 = peerSocket;
+                       dispMsg.setPeerSocket(peerSocket);
 
                        /* push to dispatcher */
-                       ServerDispatcher::getInstance()->pushMessage(dispMsg);
+                       ServerDispatcher::getInstance()->pushMessage(&dispMsg);
                }
 
                SCARD_END();