[CONPRO-1269] Creating socket everytime when network bearer changes 71/176271/1
authorKush <kush.agrawal@samsung.com>
Tue, 10 Apr 2018 07:14:19 +0000 (12:44 +0530)
committerAmit KS <amit.s12@samsung.com>
Tue, 17 Apr 2018 09:10:09 +0000 (14:40 +0530)
Socket was created only once but changed the logic for creating on every network change

https://github.sec.samsung.net/RS7-IOTIVITY/IoTivity/pull/280
(cherry picked from commit eaa97ac11871f5536ca12e7ab2f9c848b4d99afd)

Change-Id: Iaeabe733b6b8728ae74b1903d49c9596dcf021e8
Signed-off-by: Kush <kush.agrawal@samsung.com>
Signed-off-by: Amit KS <amit.s12@samsung.com>
resource/csdk/connectivity/src/ip_adapter/android/caipnwmonitor.c

index 97a46ca..75f7814 100644 (file)
@@ -483,6 +483,11 @@ Java_org_iotivity_ca_CaIpInterface_caIpStateEnabled(JNIEnv *env, jclass class)
 
     OIC_LOG(DEBUG, TAG, "Wifi is in Activated State");
     CAIPPassNetworkChangesToAdapter(CA_INTERFACE_UP);
+    /* Added preventive patch for CONRO-1269
+     * Network unreachable error was coming whenever WIFI-AP connection is changed.
+     * To avoid that scenario we are closing and creating sockets again.
+     */
+    CreateMulticastSocket();
 
     // Apply network interface changes.
     u_arraylist_t *iflist = CAIPGetInterfaceInformation(0);
@@ -515,4 +520,6 @@ Java_org_iotivity_ca_CaIpInterface_caIpStateDisabled(JNIEnv *env, jclass class)
 
     OIC_LOG(DEBUG, TAG, "Wifi is in Deactivated State");
     CAIPPassNetworkChangesToAdapter(CA_INTERFACE_DOWN);
+    // Closing sockets so that it will be created again when WIFI is activated(CONPRO-1269).
+    CloseMulticastSocket();
 }