diff --git a/src/lynq/lib/liblynq-data/lynq_data.cpp b/src/lynq/lib/liblynq-data/lynq_data.cpp
index 460eb9c..6b52ea0 100755
--- a/src/lynq/lib/liblynq-data/lynq_data.cpp
+++ b/src/lynq/lib/liblynq-data/lynq_data.cpp
@@ -145,7 +145,7 @@
     lynq_apn_table[apnId].hasTimeout = 0;
     lynq_apn_table[apnId].hasUsed = 0;
     bzero(lynq_apn_table[apnId].apn,LYNQ_APN_MAX_LEN);
-    //bzero(lynq_apn_table[apnId].apnType,LYNQ_APN_TYPE_MAX_LEN);
+    bzero(lynq_apn_table[apnId].apnType,LYNQ_APN_TYPE_MAX_LEN);
     bzero(lynq_apn_table[apnId].ifaceName,LYNQ_IFACE_NAME_MAX_LEN);
     return;
 }
@@ -1384,4 +1384,31 @@
     return 0;
 }
 
+int lynq_get_apn_table(int *size,lynq_apn_info **list)
+{
+    if (NULL == size || NULL == list)
+    {
+        LYERRLOG("size or list  is NULL");
+        return LYNQ_E_NULL_ANONALY;
+    }
+    int count = 0;
+    int i = 0;
+    for (i = 0;i < LYNQ_APN_CHANNEL_MAX;i++)
+    {
+        if (lynq_apn_table[i].hasUsed == 1)
+        {
+            if (NULL ==  list[count])
+            {
+                LYERRLOG("list[%d] is NULL",count);
+                return LYNQ_E_NULL_ANONALY;
+            }
+            list[count]->index = i;
+            memcpy(list[count]->apn,lynq_apn_table[i].apn,strlen(lynq_apn_table[i].apn)+1);
+            memcpy(list[count]->apnType,lynq_apn_table[i].apnType,strlen(lynq_apn_table[i].apnType)+1);
+            count++;
+        }
+    }
+    *size = count;
+    return 0;
+}
 /*Typethree add for T800 platform 2022/04/21 end*/
