Fix selected ciphersuite info of established session
authorJoonghwan Lee <jh05.lee@samsung.com>
Thu, 19 Jan 2017 04:25:46 +0000 (13:25 +0900)
committerRandeep Singh <randeep.s@samsung.com>
Thu, 9 Feb 2017 06:38:17 +0000 (06:38 +0000)
Fixed selected ciphersuite infomation to get from
the session object when session established.
This patch will be needed in case of multiple (D)TLS session are initiating.

Patch 1:Initial upload

Change-Id: I245443f9e1216da72c742fe7eafaf24445050dfa
Signed-off-by: Joonghwan Lee <jh05.lee@samsung.com>
Reviewed-on: https://gerrit.iotivity.org/gerrit/16569
Tested-by: jenkins-iotivity <jenkins@iotivity.org>
Reviewed-by: Jongsung Lee <js126.lee@samsung.com>
Reviewed-by: Randeep Singh <randeep.s@samsung.com>
(cherry picked from commit f14b783b1828361a41de813f9780ae61ec8a6597)
Reviewed-on: https://gerrit.iotivity.org/gerrit/17105

resource/csdk/connectivity/src/adapter_util/ca_adapter_net_ssl.c

index de28bfb..ec9a423 100644 (file)
@@ -1848,8 +1848,10 @@ CAResult_t CAdecryptSsl(const CASecureEndpoint_t *sep, uint8_t *data, uint32_t d
                 SendCacheMessages(peer);
             }
 
-            if (MBEDTLS_TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA256 != g_caSslContext->selectedCipher &&
-                MBEDTLS_TLS_ECDH_ANON_WITH_AES_128_CBC_SHA256 != g_caSslContext->selectedCipher)
+            int selectedCipher = peer->ssl.session->ciphersuite;
+            OIC_LOG_V(DEBUG, NET_SSL_TAG, "(D)TLS Session is connected via ciphersuite [0x%x]", selectedCipher);
+            if (MBEDTLS_TLS_ECDHE_PSK_WITH_AES_128_CBC_SHA256 != selectedCipher &&
+                MBEDTLS_TLS_ECDH_ANON_WITH_AES_128_CBC_SHA256 != selectedCipher)
             {
                 char uuid[UUID_LENGTH * 2 + 5] = {0};
                 void * uuidPos = NULL;