Fix Asan build errors (#281) 89/176389/1
authordh79.pyun@samsung.com <dh79.pyun@samsung.com>
Tue, 17 Apr 2018 06:31:54 +0000 (15:31 +0900)
committerDoHyun Pyun <dh79.pyun@samsung.com>
Thu, 19 Apr 2018 04:24:44 +0000 (13:24 +0900)
Remove duplicate variables
multiple definition of `g_ESEasySetupResource'
multiple definition of `g_ESDevConfResource'
multiple definition of `g_ESCoapCloudConfResource'
multiple definition of `g_ESWiFiConfResource'

https://github.sec.samsung.net/RS7-IOTIVITY/IoTivity/pull/281
(cherry picked from commit 0cbbcfa65ff14d751dd1193f75b7c20269e26991)

Change-Id: I71c2a33ca6823231b60cdd4bc9c8e4b9a28ec7d3
Signed-off-by: Oleg Ogurtsov <o.ogurtsov@samsung.com>
Signed-off-by: DoHyun Pyun <dh79.pyun@samsung.com>
15 files changed:
build_common/SConscript
extlibs/mbedtls/SConscript
extlibs/mbedtls/mbedtls/configs/config-mini-tls1_1.h
extlibs/mbedtls/mbedtls/configs/config-picocoin.h
extlibs/mbedtls/mbedtls/configs/config-suite-b.h
extlibs/mbedtls/mbedtls/configs/config-thread.h
extlibs/mbedtls/mbedtls/include/mbedtls/config.h
service/easy-setup/enrollee/src/samsung/sc_easysetup.c
service/notification/src/provider/NSProviderCallbackResponse.c
service/notification/src/provider/NSProviderMemoryCache.c
service/notification/src/provider/NSProviderMemoryCache.h
service/notification/src/provider/NSProviderSubscription.c
service/notification/src/provider/NSProviderSubscription.h
service/notification/src/provider/NSProviderTopic.c
service/notification/src/provider/NSProviderTopic.h

index b373665dadef07e8bbbc25680c27af2545238ff4..e16a27d809aa937c482f44dc7588a580bf01fe55 100644 (file)
@@ -104,6 +104,7 @@ help_vars.Add(ListVariable('RD_MODE', 'Resource Directory build mode', 'CLIENT',
 help_vars.Add(BoolVariable('SIMULATOR', 'Build with simulator module', False))
 
 help_vars.Add(BoolVariable('WITH_RA_IBB', 'Build with Remote Access module(workssys)', False))
+help_vars.Add(BoolVariable('WITH_ASAN', 'Build with Address Sanitizer support', False))
 
 
 if target_os in targets_disallow_multitransport:
index cfcec9dabef0ff08448a62cac3701a88047df16a..152c4baab0138ac71e84844d696fbacd79f8ed20 100644 (file)
@@ -77,6 +77,11 @@ mbedtls_env.PrependUnique(CPPPATH = [mbedtls_dir])
 mbedtls_env.AppendUnique(CPPPATH = [mbedtls_dir+'include/'])
 mbedtls_env.AppendUnique(CFLAGS = ['-fPIC', '-Wall'])
 
+asan_build = env.get('WITH_ASAN')
+print 'Asan build: {}'.format(asan_build)
+if asan_build:
+    mbedtls_env.AppendUnique(CFLAGS = ['-UMBEDTLS_HAVE_ASM'])
+
 ######################################################################
 # Source files and Target(s)
 ######################################################################
index e22363d1a34785fa690c3ff8289b781607f0b270..2d6d5ac1b47e1c2106353f158b1299d4f6395c6b 100644 (file)
@@ -29,7 +29,9 @@
 #define MBEDTLS_CONFIG_H
 
 /* System support */
+#if !defined(__SANITIZE_ADDRESS__)
 #define MBEDTLS_HAVE_ASM
+#endif
 #define MBEDTLS_HAVE_TIME
 
 /* mbed TLS feature support */
index 26b24a9e2ac76745d3ca295176944be1016010f4..7fe0ee7613165fcd6d08111c7139d9e90e46f593 100644 (file)
@@ -33,7 +33,9 @@
 #define MBEDTLS_CONFIG_H
 
 /* System support */
+#if !defined(__SANITIZE_ADDRESS__)
 #define MBEDTLS_HAVE_ASM
+#endif
 #define MBEDTLS_HAVE_TIME
 
 /* mbed TLS feature support */
index 3c4804c79d11536b729b932e611dbc5355dbf142..45ad8d23a5cda2393b7c44fe9af066e4d1c9e5ea 100644 (file)
@@ -36,7 +36,9 @@
 #define MBEDTLS_CONFIG_H
 
 /* System support */
+#if !defined(__SANITIZE_ADDRESS__)
 #define MBEDTLS_HAVE_ASM
+#endif
 #define MBEDTLS_HAVE_TIME
 
 /* mbed TLS feature support */
index 990fe08c6c920d1908be7baf6911c6775884adc5..f1f8ff575a4e9cfef1b2ffd3a08b48a447976581 100644 (file)
@@ -35,7 +35,9 @@
 #define MBEDTLS_CONFIG_H
 
 /* System support */
+#if !defined(__SANITIZE_ADDRESS__)
 #define MBEDTLS_HAVE_ASM
+#endif
 
 /* mbed TLS feature support */
 #define MBEDTLS_AES_ROM_TABLES
index 9798b395af9f5236ba6f2019a18c0c059023a735..083c56e23bd43753b5f3f42f50babe782d8b96ef 100644 (file)
@@ -39,6 +39,7 @@
  * \{
  */
 
+#if !defined(__SANITIZE_ADDRESS__)
 /**
  * \def MBEDTLS_HAVE_ASM
  *
@@ -54,6 +55,7 @@
  * Comment to disable the use of assembly code.
  */
 #define MBEDTLS_HAVE_ASM
+#endif
 
 /**
  * \def MBEDTLS_HAVE_SSE2
  * \{
  */
 
+#if !defined(__SANITIZE_ADDRESS__)
 /**
  * \def MBEDTLS_AESNI_C
  *
  * This modules adds support for the AES-NI instructions on x86-64
  */
 #define MBEDTLS_AESNI_C
+#endif
 
 /**
  * \def MBEDTLS_AES_C
  */
 #define MBEDTLS_OID_C
 
+#if !defined(__SANITIZE_ADDRESS__)
 /**
  * \def MBEDTLS_PADLOCK_C
  *
  * This modules adds support for the VIA PadLock on x86.
  */
 #define MBEDTLS_PADLOCK_C
+#endif
 
 /**
  * \def MBEDTLS_PEM_PARSE_C
index 5c7a2e3b0ab8d3560a4f84259722df3798ce53ec..e86e1b92e20fdb84e43bc01f4f8a9727a2bfd555 100755 (executable)
  */
 #define SC_ENROLLEE_TAG "ES_SC_ENROLLEE"
 
-EasySetupResource g_ESEasySetupResource;
-WiFiConfResource g_ESWiFiConfResource;
-CoapCloudConfResource g_ESCoapCloudConfResource;
-DevConfResource g_ESDevConfResource;
-
 SCProperties g_SCProperties;
 
 static void ReadAccountData(OCRepPayload* payload,void** userdata);
index e702bab138bb50e45108333439dd4f2796790cc2..2902df04e9c845b885a78226c08a21cc52877c13 100644 (file)
@@ -34,7 +34,7 @@
 static NSSubscribeRequestCallback g_subscribeRequestCb = NULL;\r
 static NSProviderSyncInfoCallback g_syncCb = NULL;\r
 \r
-pthread_mutex_t nsInitMutex;\r
+extern pthread_mutex_t nsInitMutex;\r
 \r
 void NSRegisterSubscribeRequestCb(NSSubscribeRequestCallback subscribeRequestCb)\r
 {\r
index 9e4dd693574e448b91c45a5b6ac5308775f95573..484f6238d6ceb976019441ae56a32654147fb95f 100644 (file)
@@ -34,6 +34,9 @@
         } \\r
     }\r
 \r
+pthread_mutex_t NSCacheMutex;\r
+pthread_mutexattr_t NSCacheMutexAttr;\r
+\r
 NSCacheList * NSProviderStorageCreate()\r
 {\r
     pthread_mutex_lock(&NSCacheMutex);\r
index df2733d9732b08e09eefea05c12dcd12216bb4c5..05440f811d4747a3ca3a093e2957dd5c66f6a2e2 100644 (file)
@@ -57,7 +57,7 @@ bool NSProviderIsTopicSubScribed(NSCacheElement * conTopicList, char * cId, char
 NSResult NSProviderDeleteConsumerTopic(NSCacheList * conTopicList,\r
         NSCacheTopicSubData * topicSubData);\r
 \r
-pthread_mutex_t NSCacheMutex;\r
-pthread_mutexattr_t NSCacheMutexAttr;\r
+extern pthread_mutex_t NSCacheMutex;\r
+extern pthread_mutexattr_t NSCacheMutexAttr;\r
 \r
 #endif /* _NS_PROVIDER_CACHEADAPTER__H_ */\r
index 3116cbb4f48da4aacaa5ad772c185f9e8741b798..3d01f3edf56825f727117322d5960802efa58df0 100644 (file)
@@ -21,6 +21,8 @@
 #include "NSProviderSubscription.h"\r
 #include "NSProviderListener.h"\r
 \r
+NSCacheList * consumerSubList;\r
+\r
 NSResult NSInitSubscriptionList()\r
 {\r
     NS_LOG(DEBUG, "NSInitSubscriptionList - IN");\r
index dd112731ce562444344e7be4e5b9439cddf95084..89acd5ea8c974f542725f12a04971deecbcd77cb 100644 (file)
@@ -34,7 +34,7 @@
 #include "oic_malloc.h"\r
 #include <stdbool.h>\r
 \r
-NSCacheList * consumerSubList;\r
+extern NSCacheList * consumerSubList;\r
 \r
 NSResult NSInitSubscriptionList();\r
 NSResult NSSetSubscriptionAccessPolicy(bool policy);\r
index 055dc47b37e1a6cb21d16238f557b2e8b0104d8a..f6aa8e9410f2cf48499caaaee3345ad3a17535f6 100644 (file)
@@ -23,6 +23,9 @@
 #include "oic_malloc.h"
 #include <pthread.h>
 
+NSCacheList * consumerTopicList;
+NSCacheList * registeredTopicList;
+
 NSResult NSSendTopicUpdation();
 
 NSResult NSInitTopicList()
index f75a1f58c2a4d276e081bae8f31dc3340b2db85a..5c858454b81a8d3311e9103465644fbca9dd9487 100644 (file)
@@ -42,8 +42,8 @@ typedef struct {
     NSResult result;\r
 } NSTopicSyncResult;\r
 \r
-NSCacheList * consumerTopicList;\r
-NSCacheList * registeredTopicList;\r
+extern NSCacheList * consumerTopicList;\r
+extern NSCacheList * registeredTopicList;\r
 \r
 NSResult NSInitTopicList();\r
 NSTopicList * NSGetTopics(char *consumerId);\r