Close file descriptors for socket appropriately during SoftAP disconnect.

Change-Id: Idadae26ce6bbdf1ea6f6b1eaa63cd890bbfcb541
CRs-Fixed: 293934
diff --git a/softap/jni/QWiFiSoftApCfg.c b/softap/jni/QWiFiSoftApCfg.c
old mode 100644
new mode 100755
index 28ef074..22a6f43
--- a/softap/jni/QWiFiSoftApCfg.c
+++ b/softap/jni/QWiFiSoftApCfg.c
@@ -313,7 +313,8 @@
     const char *pcmd;
     char       cmd[MAX_CMD_SIZE];
     char       resp[MAX_RESP_SIZE];
-    int        sock, rc;
+    int        sock = -1;
+    int        rc;
     int        done = 0;
     char       code[32] = {0};
     int        connect_retry;
@@ -400,5 +401,10 @@
 end:
     (*env)->ReleaseStringUTFChars(env, jcmd, pcmd);
 
+    if( sock >= 0 ){
+        close(sock);
+        sock = -1;
+    }
+
     return (*env)->NewStringUTF(env, resp);
 }
diff --git a/softap/sdk/qsap_api.c b/softap/sdk/qsap_api.c
index 4626710..2dbd24d 100755
--- a/softap/sdk/qsap_api.c
+++ b/softap/sdk/qsap_api.c
@@ -1132,12 +1132,14 @@
     ret = ioctl(sock, QCSAP_IOCTL_GET_CHANNEL, &wrq);
     if(ret < 0) {
         LOGE("%s: ioctl failure \n",__func__);
+        close(sock);
         goto error;
     }
 
     LOGE("Recv len :%d \n", wrq.u.data.length);
 
     LOGE("Operating channel :%ld \n", *pchan);
+    close(sock);
     return eSUCCESS;
 
 error:
@@ -1231,6 +1233,7 @@
     pbuf = (s8 *)malloc((MAX_STA_ALLOWED * 6) + 8);
     if(NULL == pbuf) {
         LOGE("%s :No memory \n", __func__);
+        close(sock);
         goto error;
     }
 
@@ -1245,6 +1248,7 @@
     if(ret < 0) {
         LOGE("%s :ioctl failure \n", __func__);
         free(pbuf);
+        close(sock);
         goto error;
     }
 
@@ -1259,6 +1263,7 @@
     *plen = len + tlen;
     
     free(pbuf);
+    close(sock);
 
     return;
 error:
@@ -1328,6 +1333,7 @@
     pbuf = (s8 *)malloc(MAX_RESP_LEN);
     if(NULL == pbuf) {
         LOGE("%s :No memory \n", __func__);
+        close(sock);
         goto error;
     }
 
@@ -1340,6 +1346,7 @@
     if(ret < 0) {
         LOGE("%s :ioctl failure \n", __func__);
         free(pbuf);
+        close(sock);
         goto error;
     }
 
@@ -1350,7 +1357,7 @@
     *plen = recvLen;
 
     free(pbuf);
-
+    close(sock);
     return;
 
 error:
@@ -2052,6 +2059,7 @@
     
     if(TRUE != qsap_get_mac_in_bytes(pVal, pbuf)) {
         LOGE("%s: Invalid input \n", __func__);
+        close(sock);
         goto end;    
     }
 
@@ -2063,6 +2071,7 @@
     if(ret < 0) {
         LOGE("%s: ioctl failure \n", __func__);
     }
+    close(sock);
 
 end:
     *plen = snprintf(presp, *plen, "%s", (ret == eSUCCESS) ? SUCCESS : ERR_UNKNOWN);