replace : iotivity -> iotivity-sec
[platform/upstream/iotivity.git] / resource / csdk / connectivity / src / canetworkconfigurator.c
index fa776c0..9f822e4 100644 (file)
 #include "uarraylist.h"
 #include "logger.h"
 
-#define TAG "CA_NW_CONFIG"
+#define TAG "OIC_CA_NW_CONFIG"
 
 static u_arraylist_t *g_selectedNetworkList = NULL;
-static uint32_t NETWORK_IP = CA_ADAPTER_IP;
+
+#ifdef EDR_ADAPTER
 static uint32_t NETWORK_RFCOMM = CA_ADAPTER_RFCOMM_BTEDR;
+#endif
+
+#ifdef LE_ADAPTER
 static uint32_t NETWORK_GATT = CA_ADAPTER_GATT_BTLE;
+#endif
+
+#ifdef IP_ADAPTER
+static uint32_t NETWORK_IP = CA_ADAPTER_IP;
+#endif
+
+#ifdef NFC_ADAPTER
+static uint32_t NETWORK_NFC = CA_ADAPTER_NFC;
+#endif
+
+#ifdef RA_ADAPTER
+static uint32_t NETWORK_RA = CA_ADAPTER_REMOTE_ACCESS;
+#endif
+
+#ifdef TCP_ADAPTER
+static uint32_t NETWORK_TCP = CA_ADAPTER_TCP;
+#endif
 
 CAResult_t CAAddNetworkType(CATransportAdapter_t transportType)
 {
-    OIC_LOG(DEBUG, TAG, "IN");
     if (NULL == g_selectedNetworkList)
     {
         OIC_LOG(DEBUG, TAG, "Create network list");
@@ -46,63 +66,100 @@ CAResult_t CAAddNetworkType(CATransportAdapter_t transportType)
             return CA_MEMORY_ALLOC_FAILED;
         }
     }
-    CAResult_t res = CA_STATUS_OK;
+    bool res = true;
     switch (transportType)
     {
         case CA_ADAPTER_IP:
 #ifndef IP_ADAPTER
-            OIC_LOG(DEBUG, TAG, "Add network type(IP) - Not Supported");
             return CA_NOT_SUPPORTED;
-#endif /* IP_ADAPTER */
+#else
 
-            OIC_LOG(DEBUG, TAG, "Add network type(IP)");
             if (u_arraylist_contains(g_selectedNetworkList, &NETWORK_IP))
             {
                 goto exit;
             }
             res = u_arraylist_add(g_selectedNetworkList, &NETWORK_IP);
+
             break;
+#endif // IP_ADAPTER
 
         case CA_ADAPTER_RFCOMM_BTEDR:
 #ifndef EDR_ADAPTER
-            OIC_LOG(DEBUG, TAG, "Add network type(EDR) - Not Supported");
             return CA_NOT_SUPPORTED;
-#endif /* EDR_ADAPTER */
+#else
 
-            OIC_LOG(DEBUG, TAG, "Add network type(EDR)");
             if (u_arraylist_contains(g_selectedNetworkList, &NETWORK_RFCOMM))
             {
                 goto exit;
             }
             res = u_arraylist_add(g_selectedNetworkList, &NETWORK_RFCOMM);
+
             break;
+#endif // EDR_ADAPTER
 
         case CA_ADAPTER_GATT_BTLE:
 #ifndef LE_ADAPTER
-            OIC_LOG(DEBUG, TAG, "Add network type(LE) - Not Supported");
             return CA_NOT_SUPPORTED;
-#endif /* LE_ADAPTER */
+#else
 
-            OIC_LOG(DEBUG, TAG, "Add network type(LE)");
             if (u_arraylist_contains(g_selectedNetworkList, &NETWORK_GATT))
             {
                 goto exit;
             }
             res = u_arraylist_add(g_selectedNetworkList, &NETWORK_GATT);
+
             break;
+#endif // LE_ADAPTER
+
+#ifdef RA_ADAPTER
+        case CA_ADAPTER_REMOTE_ACCESS:
+
+           if (u_arraylist_contains(g_selectedNetworkList, &NETWORK_RA))
+           {
+               goto exit;
+           }
+           res = u_arraylist_add(g_selectedNetworkList, &NETWORK_RA);
+           break;
+#endif // RA_ADAPTER
+
+#ifdef TCP_ADAPTER
+        case CA_ADAPTER_TCP:
+
+           if (u_arraylist_contains(g_selectedNetworkList, &NETWORK_TCP))
+           {
+               goto exit;
+           }
+           res = u_arraylist_add(g_selectedNetworkList, &NETWORK_TCP);
+           break;
+#endif // TCP_ADAPTER
+
+
+        case CA_ADAPTER_NFC:
+ #ifndef NFC_ADAPTER
+            return CA_NOT_SUPPORTED;
+
+#else
+           if (u_arraylist_contains(g_selectedNetworkList, &NETWORK_NFC))
+           {
+               goto exit;
+           }
+           res = u_arraylist_add(g_selectedNetworkList, &NETWORK_NFC);
+
+           break;
+#endif // CA_ADAPTER_NFC
+
         default:
             break;
     }
 
-    if (CA_STATUS_OK != res)
+    if (!res)
     {
         OIC_LOG_V(ERROR, TAG, "Add arraylist failed[Err code: %d]", res);
-        return res;
+        return CA_STATUS_FAILED;
     }
     // start selected interface adapter
-    res = CAStartAdapter(transportType);
-    OIC_LOG(DEBUG, TAG, "OUT");
-    return res;
+    CAResult_t result = CAStartAdapter(transportType);
+    return result;
 
 exit:
     OIC_LOG(DEBUG, TAG, "This adapter is already enabled");
@@ -111,8 +168,6 @@ exit:
 
 CAResult_t CARemoveNetworkType(CATransportAdapter_t transportType)
 {
-    OIC_LOG(DEBUG, TAG, "IN");
-
     if (NULL == g_selectedNetworkList)
     {
         OIC_LOG(ERROR, TAG, "SelectedNetwork list is NULL");
@@ -143,8 +198,9 @@ CAResult_t CARemoveNetworkType(CATransportAdapter_t transportType)
 
                     OIC_LOG(DEBUG, TAG, "Remove network type(IP)");
                     u_arraylist_remove(g_selectedNetworkList, index);
-#endif /* IP_ADAPTER */
+
                     break;
+#endif //IP_ADAPTER
 
                 case CA_ADAPTER_RFCOMM_BTEDR:
 #ifndef EDR_ADAPTER
@@ -153,8 +209,9 @@ CAResult_t CARemoveNetworkType(CATransportAdapter_t transportType)
 #else
                     OIC_LOG(DEBUG, TAG, "Remove network type(EDR)");
                     u_arraylist_remove(g_selectedNetworkList, index);
-#endif /* EDR_ADAPTER */
+
                     break;
+#endif // EDR_ADAPTER
 
                 case CA_ADAPTER_GATT_BTLE:
 #ifndef LE_ADAPTER
@@ -163,9 +220,34 @@ CAResult_t CARemoveNetworkType(CATransportAdapter_t transportType)
 #else
                     OIC_LOG(DEBUG, TAG, "Remove network type(LE)");
                     u_arraylist_remove(g_selectedNetworkList, index);
-#endif /* LE_ADAPTER */
+
                     break;
+#endif // LE_ADAPTER
+
+#ifdef RA_ADAPTER
+                case CA_ADAPTER_REMOTE_ACCESS:
+                    OIC_LOG(DEBUG, TAG, "Remove network type(RA)");
+                    u_arraylist_remove(g_selectedNetworkList, index);
+                    break;
+#endif // RA_ADAPTER
+
+#ifdef TCP_ADAPTER
+                case CA_ADAPTER_TCP:
+                    OIC_LOG(DEBUG, TAG, "Remove network type(TCP)");
+                    u_arraylist_remove(g_selectedNetworkList, index);
+                    break;
+#endif // TCP_ADAPTER
+
+#ifndef NFC_ADAPTER
+                case CA_ADAPTER_NFC:
+                    OIC_LOG(DEBUG, TAG, "Add network type(NFC) - Not Supported");
+                    return CA_NOT_SUPPORTED;
+#else
+                   OIC_LOG(DEBUG, TAG, "Add network type(NFC)");
+                   u_arraylist_remove(g_selectedNetworkList, index);
 
+                   break;
+#endif // CA_ADAPTER_NFC
                 default:
                     break;
             }