Code Sync up from tizen_2.4 15/36915/1
authorDongchul Lim <dc7.lim@samsung.com>
Tue, 17 Mar 2015 04:53:23 +0000 (13:53 +0900)
committerDongchul Lim <dc7.lim@samsung.com>
Tue, 17 Mar 2015 04:53:23 +0000 (13:53 +0900)
Change-Id: I3f86c71e1e274fb98bcc91749d2ad14d2ebc0033

32 files changed:
.gitignore
AUTHORS [new file with mode: 0644]
CMakeLists.txt [changed mode: 0644->0755]
README [new file with mode: 0644]
include/main.h [moved from src/error.c with 65% similarity]
include/ps.h [changed mode: 0644->0755]
include/ps_log.h [new file with mode: 0644]
introspection/context.xml
introspection/master.xml
introspection/modem.xml
introspection/service.xml
packaging/tel-plugin-packetservice.manifest [deleted file]
packaging/tel-plugin-packetservice.spec [changed mode: 0644->0755]
resources/520.tel-plugin-packetservice.patch.sh [new file with mode: 0644]
resources/apns-conf.xml [new file with mode: 0644]
resources/dnet_db.sql [changed mode: 0644->0755]
resources/dnet_db_data.sql
resources/dnet_db_init.sql [new file with mode: 0755]
src/context.c [changed mode: 0644->0755]
src/desc.c [new file with mode: 0644]
src/dump_packetservice.sh [new file with mode: 0755]
src/main.c
src/master.c
src/modem.c [changed mode: 0644->0755]
src/ps-plugin.conf [deleted file]
src/ps_log.c [new file with mode: 0644]
src/service.c [changed mode: 0644->0755]
src/tcore-interface.c
src/util.c [new file with mode: 0644]
tel-plugin-packetservice.manifest [new file with mode: 0644]
test_src/CMakeLists.txt [new file with mode: 0644]
test_src/main.c [new file with mode: 0644]

index 63619be..4ce44b4 100644 (file)
@@ -1,51 +1,31 @@
-#Copyright (c) 2013 GitHub, Inc.
-#
-#Permission is hereby granted,  free of charge,  to any person obtaining a
-#copy of this software and associated documentation files (the "Software"),
-#to deal in the Software without restriction, including without limitation
-#the rights to  use, copy, modify, merge, publish, distribute, sublicense,
-#and/or sell copies of the Software, and to permit persons to whom the
-#Software is furnished to do so, subject to the following conditions:
-#
-#The above copyright notice and this permission notice shall be included in
-#all copies or substantial portions of the Software.
-#
-#THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-#IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-#FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-#AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-#LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
-#FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-#DEALINGS IN THE SOFTWARE.
-#
-# https://github.com/github/gitignore
-
-# Object files
+.cproject
+.project
+*.substvars
+*.deb
+*.debhelper
+cmake_tmp
+build-stamp
+configure-stamp
+*.debhelper.log
+*.changes
+*-0.install
+*-0-dbg
+*-dev.install
 *.o
-
-# Libraries
-*.lib
-*.a
-
-# Shared objects (inc. Windows DLLs)
-*.dll
+tags
+files
+stamp-*
+*/debian/*/
+cmake_install.cmake
+CMakeFiles/
 *.so
 *.so.*
-*.dylib
-
-# Executables
-*.exe
-*.out
-*.app
-
-# CMake
 CMakeCache.txt
-CMakeFiles
-Makefile
-cmake_install.cmake
+.*.swp
+documentation.list
 install_manifest.txt
+*.pc
 
-# Emacs
 *~
 \#*\#
 /.emacs.desktop
@@ -59,42 +39,24 @@ tramp
 .org-id-locations
 *_archive
 
-# Linux
-.*
-!.gitignore
-*~
-
-# Vim
-*.s[a-w][a-z]
-*.un~
-Session.vim
-.netrwhist
-*~
-
-# Eclipse
-*.pydevproject
-.project
-.metadata
-bin/**
-tmp/**
-tmp/**/*
-*.tmp
-*.bak
-*.swp
-*~.nib
-local.properties
-.classpath
-.settings/
-.loadpath
+# Object files
+*.o
 
-# External tool builders
-.externalToolBuilders/
+# Libraries
+*.lib
+*.a
 
-# Locally stored "Eclipse launch configurations"
-*.launch
+# Shared objects (inc. Windows DLLs)
+*.dll
+*.so
+*.so.*
+*.dylib
 
-# CDT-specific
-.cproject
+# Executables
+*.exe
+*.out
+*.app
 
-# PDT-specific
-.buildpath
+# Patches
+*.patch
+*.diff
diff --git a/AUTHORS b/AUTHORS
new file mode 100644 (file)
index 0000000..0e9faa9
--- /dev/null
+++ b/AUTHORS
@@ -0,0 +1,6 @@
+Jongman Park <jman.park@samsung.com>
+Ja-young Gu <jygu@samsung.com>
+Kyeongchul Kim <kyeongchul.kim@samsung.com>
+DongHoo Park <donghoo.park@samsung.>
+Youngman Park <youngman.park@samsung.com>
+Inho Oh <inho48.oh@samsung.com>
old mode 100644 (file)
new mode 100755 (executable)
index ff637b3..e4f1b15
@@ -14,7 +14,7 @@ endif()
 
 # Set required packages
 INCLUDE(FindPkgConfig)
-pkg_check_modules(pkgs REQUIRED glib-2.0 gio-2.0 gio-unix-2.0 tcore tel-headers libtzplatform-config iniparser)
+pkg_check_modules(pkgs REQUIRED glib-2.0 gio-2.0 gio-unix-2.0 tcore iniparser libxml-2.0 vconf security-server alarm-service)
 
 FOREACH(flag ${pkgs_CFLAGS})
        SET(EXTRA_CFLAGS "${EXTRA_CFLAGS} ${flag}")
@@ -22,13 +22,16 @@ ENDFOREACH(flag)
 
 INCLUDE_DIRECTORIES(${CMAKE_SOURCE_DIR} ${CMAKE_SOURCE_DIR}/include/ ${CMAKE_SOURCE_DIR}/cmake_tmp )
 
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS}")
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wextra -fvisibility=hidden -fPIC")
-SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-unused-parameter -Wno-missing-field-initializers -Wdeclaration-after-statement -Wmissing-declarations -Wcast-align")
+SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${EXTRA_CFLAGS} -Werror -Wextra -Wno-unused-parameter -Wno-missing-field-initializers -Wdeclaration-after-statement -Wmissing-declarations -Wcast-align -Wall -Wno-array-bounds -Wno-empty-body -Wno-ignored-qualifiers -Wshadow -Wswitch-default -Wno-unused-but-set-parameter -Wno-unused-but-set-variable")
 
 ### Purge unused code ###
 SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fdata-sections -ffunction-sections -Wl,--gc-sections")
 
+# model definitions #
+IF (CONNECT_DEFAULT_CONNECTION_WITHOUT_TIMER)
+  ADD_DEFINITIONS("-DCONNECT_DEFAULT_CONNECTION_WITHOUT_TIMER")
+ENDIF (CONNECT_DEFAULT_CONNECTION_WITHOUT_TIMER)
+
 ADD_DEFINITIONS("-DFEATURE_TLOG_DEBUG")
 ADD_DEFINITIONS("-DTCORE_LOG_TAG=\"PS\"")
 ADD_DEFINITIONS("-DPLUGIN_VERSION=${VERSION}")
@@ -38,38 +41,37 @@ MESSAGE(${CMAKE_C_FLAGS})
 MESSAGE(${pkgs_LDFLAGS})
 
 SET(SRCS
+       src/desc.c
        src/main.c
        src/master.c
        src/modem.c
        src/service.c
        src/context.c
        src/tcore-interface.c
+       src/ps_log.c
+       src/util.c
+       ${CMAKE_BINARY_DIR}/generated-code.c
 )
 
-SET(INTROSPECTION_PATH ${CMAKE_SOURCE_DIR}/introspection)
-
 ADD_CUSTOM_COMMAND(
        OUTPUT ${CMAKE_BINARY_DIR}/generated-code.c
-       COMMAND gdbus-codegen --interface-prefix com.tcore.ps.
-       --generate-c-code generated-code
-       --c-namespace PacketService
-       --c-generate-object-manager
-       --generate-docbook generated-docs
-       ${INTROSPECTION_PATH}/master.xml
-       ${INTROSPECTION_PATH}/modem.xml
-       ${INTROSPECTION_PATH}/service.xml
-       ${INTROSPECTION_PATH}/context.xml
-       COMMENT "Generating GDBus .c/.h"
-)
+       COMMAND gdbus-codegen --interface-prefix com.tcore.ps. --generate-c-code generated-code --c-namespace PacketService --c-generate-object-manager --generate-docbook generated-docs ${CMAKE_SOURCE_DIR}/introspection/master.xml ${CMAKE_SOURCE_DIR}/introspection/modem.xml ${CMAKE_SOURCE_DIR}/introspection/service.xml ${CMAKE_SOURCE_DIR}/introspection/context.xml
+       COMMENT "Generating GDBus .c/.h")
 
 # library build
-ADD_LIBRARY(${PROJECT_NAME} SHARED ${SRCS} ${CMAKE_BINARY_DIR}/generated-code.c)
-TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${pkgs_LDFLAGS})
-SET_TARGET_PROPERTIES(${PROJECT_NAME} PROPERTIES PREFIX "" OUTPUT_NAME ${PROJECT_NAME})
+ADD_LIBRARY(ps-plugin SHARED ${SRCS})
+TARGET_LINK_LIBRARIES(ps-plugin ${pkgs_LDFLAGS})
+SET_TARGET_PROPERTIES(ps-plugin PROPERTIES PREFIX "" OUTPUT_NAME ps-plugin)
 
 # install
-INSTALL(FILES ${CMAKE_SOURCE_DIR}/src/ps-plugin.conf DESTINATION ${SYSCONFDIR}/dbus-1/system.d)
 INSTALL(FILES ${CMAKE_SOURCE_DIR}/resources/dnet_db.sql DESTINATION ${DATAROOTDIR}/ps-plugin)
-INSTALL(FILES ${CMAKE_SOURCE_DIR}/resources/dnet_db_data.sql DESTINATION ${DATAROOTDIR}/ps-plugin)
-INSTALL(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${LIB_INSTALL_DIR}/telephony/plugins)
+INSTALL(FILES ${CMAKE_SOURCE_DIR}/resources/dnet_db_init.sql DESTINATION ${DATAROOTDIR}/ps-plugin)
+INSTALL(FILES ${CMAKE_SOURCE_DIR}/resources/apns-conf.xml DESTINATION ${DATAROOTDIR}/ps-plugin)
+INSTALL(FILES ${CMAKE_SOURCE_DIR}/resources/520.tel-plugin-packetservice.patch.sh DESTINATION ${SYSCONFDIR}/opt/upgrade)
+INSTALL(TARGETS ps-plugin LIBRARY DESTINATION lib/telephony/plugins)
 INSTALL(FILES ${CMAKE_SOURCE_DIR}/LICENSE DESTINATION /usr/share/license RENAME tel-plugin-packetservice)
+INSTALL(FILES ${CMAKE_SOURCE_DIR}/src/dump_packetservice.sh DESTINATION /opt/etc/dump.d/module.d)
+IF (TIZEN_ENGINEER_MODE)
+        ADD_SUBDIRECTORY(test_src)
+ENDIF (TIZEN_ENGINEER_MODE)
+
diff --git a/README b/README
new file mode 100644 (file)
index 0000000..2e54b41
--- /dev/null
+++ b/README
@@ -0,0 +1,2 @@
+PacketService Plugin
+DongHoo Park - evilpanda
\ No newline at end of file
similarity index 65%
rename from src/error.c
rename to include/main.h
index 8771678..04adb9a 100644 (file)
@@ -1,7 +1,10 @@
 /*
- * tel-plugin-packetservice
+ * PacketService Control Module
  *
- * Copyright (c) 2013 Samsung Electronics Co. Ltd. All rights reserved.
+ * Copyright (c) 2012 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Contact: DongHoo Park <donghoo.park@samsung.com>
+ *                     Arun Shukla <arun.shukla@samsung.com>
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
+ *
  */
 
 #include <glib.h>
+#include <tcore.h>
 
-#include "ps-error.h"
-
-GQuark ps_error_quark(void)
-{
-       static GQuark quark = 0;
-
-       if (!quark) quark = g_quark_from_static_string("ps_error");
+gboolean ps_main_init(TcorePlugin *plugin);
 
-       return quark;
-}
+void ps_main_exit(TcorePlugin *plugin);
\ No newline at end of file
old mode 100644 (file)
new mode 100755 (executable)
index 44e3a0f..351c1ee
@@ -1,7 +1,9 @@
 /*
- * tel-plugin-packetservice
+ * PacketService Control Module
  *
- * Copyright (c) 2013 Samsung Electronics Co. Ltd. All rights reserved.
+ * Copyright (c) 2012 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Contact: DongHoo Park <donghoo.park@samsung.com>
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
+ *
  */
 #ifndef __PS_H__
 #define __PS_H__
 
 #define PS_DBUS_SERVICE        "com.tcore.ps"
 
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <glib.h>
 #include <gio/gio.h>
+#include <alarm.h>
 
 #include <tcore.h>
 #include <plugin.h>
 #include <storage.h>
 #include <server.h>
 #include <core_object.h>
-#include <type/ps.h>
 #include <hal.h>
 
 #include "generated-code.h"
+#include "ps_log.h"
 
 #define FAIL_RESPONSE(ivc,msg) g_dbus_method_invocation_return_error (ivc, \
                G_DBUS_ERROR, G_DBUS_ERROR_FAILED, msg);
 #define PS_NETWORK_GET_MODE 0x08
 #define PS_NETWORK_RESET_GET_MODE_FLAG 0x07
 
+#define PS_NETWORK_SET_FLIGHT_MODE 0x10
+#define PS_NETWORK_RESET_SET_FLIGHT_MODE_FLAG 0xEF
+
+#define PS_NETWORK_SET_POWER_OFF 0x20
+#define PS_NETWORK_RESET_SET_POWER_OFF_FLAG 0xDF
+
+#define PS_NETWORK_SET_POWER_LOW 0x40
+#define PS_NETWORK_RESET_SET_POWER_LOW_FLAG 0xBF
+
+#define PS_NETWORK_SET_DEFAULT_DATA_SUBS 0x80
+#define PS_NETWORK_RESET_SET_DEFAULT_DATA_SUBS 0x7F
+
+#define PS_SIM_SET_POWER_STATE 0x08
+#define PS_SIM_SET_POWER_STATE_FLAG 0x07
+
+
+/*Storage Key value*/
+#define KEY_3G_ENABLE                          STORAGE_KEY_3G_ENABLE
+#define KEY_DATA_ROAMING_SETTING       STORAGE_KEY_SETAPPL_STATE_DATA_ROAMING_BOOL
+#define KEY_DATA_ROAMING_APP_SETTING   STORAGE_KEY_SETAPPL_STATE_DATA_ROAMING_APP_STATUS
+#define KEY_POWER_SAVING_MODE          STORAGE_KEY_POWER_SAVING_MODE
+#define KEY_PM_STATE                           STORAGE_KEY_PM_STATE
+#define KEY_NETWORK_RESTRICT_MODE   STORAGE_KEY_SETAPPL_NETWORK_RESTRICT_MODE
+#ifdef POWER_SAVING_FEATURE_WEARABLE
+#define KEY_WECONN_ALL_CONNECTED       STORAGE_KEY_WECONN_ALL_CONNECTED
+#endif
+#define KEY_SAP_CONNECTION_TYPE                STORAGE_KEY_SAP_CONNECTION_TYPE
+#define KEY_WIFI_STATE STORAGE_KEY_WIFI_STATE_INT
+
 #define PS_ERR_INTERNAL "Internal Error"
 #define PS_ERR_NO_SERVICE "NO service"
 #define PS_ERR_TRASPORT "No Transport"
 #define PS_ERR_WRONG_PROFILE "Wrong Profile"
 #define PS_ERR_MAX "Unknown Error"
 
-typedef struct {
+#define AC_PS_PUBLIC                   "telephony_framework::api_ps_public"
+#define AC_PS_PRIVATE                  "telephony_framework::api_ps_private"
+#define AC_PS_PROFILE                  "telephony_framework::api_ps_profile"
+
+/* Tizen Power saving mode */
+#define POWER_SAVING_MODE_NORMAL   0
+#define POWER_SAVING_MODE_POWERFUL 1
+#define POWER_SAVING_MODE_EMERGENCY 2
+#define POWER_SAVING_MODE_WEARABLE 3
+
+/*Tizen CDMA dummy Profile Index*/
+#define PS_CDMA_DUMMY_PROFILE_IDX 0
+#define PS_CDMA_DUMMY_PROFILE_PLMN "00000"
+
+typedef enum {
+       PS_SUBS_PRIMARY,
+       PS_SUBS_SECONDARY,
+       PS_SUBS_TERTIARY,
+       PS_SUBS_MAX = 0xFF
+} ps_subs_type;
+
+enum ps_modem_state {
+       PS_MODEM_STATE_UNKNOWN = -1,
+       PS_MODEM_STATE_OFFLINE = 0x00,
+       PS_MODEM_STATE_ONLINE = 0x01,
+       PS_MODEM_STATE_LOW = 0x02,
+};
+
+enum ps_pdp_permanet_reject {
+       /*3GPP spec defined Call End reasons*/
+       PS_PDP_PERMANENT_REJECT_OPERATOR_DETERMINED_BARRING                            = 8,
+       PS_PDP_PERMANENT_REJECT_LLC_SNDCP_FAILURE                                      = 25,
+       PS_PDP_PERMANENT_REJECT_INSUFFICIENT_RESOURCES                                 = 26,
+       PS_PDP_PERMANENT_REJECT_UNKNOWN_APN                                            = 27,
+       PS_PDP_PERMANENT_REJECT_UNKNOWN_PDP                                            = 28,
+       PS_PDP_PERMANENT_REJECT_AUTH_FAILED                                            = 29,
+       PS_PDP_PERMANENT_REJECT_GGSN_REJECT                                            = 30,
+       PS_PDP_PERMANENT_REJECT_ACTIVATION_REJECT                                      = 31,
+       PS_PDP_PERMANENT_REJECT_OPTION_NOT_SUPPORTED                                   = 32,
+       PS_PDP_PERMANENT_REJECT_OPTION_UNSUBSCRIBED                                    = 33,
+       PS_PDP_PERMANENT_REJECT_OPTION_TEMP_OOO                                        = 34,
+       PS_PDP_PERMANENT_REJECT_NSAPI_ALREADY_USED                                     = 35,
+       PS_PDP_PERMANENT_REJECT_IP_V4_ONLY_ALLOWED                                     = 50,
+       PS_PDP_PERMANENT_REJECT_IP_V6_ONLY_ALLOWED                                     = 51,
+       PS_PDP_PERMANENT_REJECT_SINGLE_ADDR_BEARER_ONLY                                = 52,
+       PS_PDP_PERMANENT_REJECT_MESSAGE_INCORRECT_SEMANTIC                             = 95,
+       PS_PDP_PERMANENT_REJECT_INVALID_MANDATORY_INFO                                 = 96,
+       PS_PDP_PERMANENT_REJECT_MESSAGE_TYPE_UNSUPPORTED                               = 97,
+       PS_PDP_PERMANENT_REJECT_MSG_TYPE_NONCOMPATIBLE_STATE                           = 98,
+       PS_PDP_PERMANENT_REJECT_UNKNOWN_INFO_ELEMENT                                   = 99,
+       PS_PDP_PERMANENT_REJECT_CONDITIONAL_IE_ERROR                                   = 100,
+       PS_PDP_PERMANENT_REJECT_MSG_AND_PROTOCOL_STATE_UNCOMPATIBLE                    = 101,
+       PS_PDP_PERMANENT_REJECT_PROTOCOL_ERROR                                         = 111,
+       PS_PDP_PERMANENT_REJECT_APN_TYPE_CONFLICT                                      = 112,
+};
+
+
+enum ps_wifi_state {
+       PS_WIFI_STATE_OFF = 0,
+       PS_WIFI_STATE_DICONNECTED = 1,
+       PS_WIFI_STATE_CONNECTED = 2
+};
+
+typedef struct packet_service_master {
        gchar *path;
        TcorePlugin *plg;
        GDBusConnection *conn;
        PacketServiceMaster *if_obj;
        GHashTable *modems;
-} PsMaster;
+} ps_master_t;
 
-typedef struct {
-       gchar *path;
+typedef struct packet_service_modem {
+       gchar* path;
+       gpointer p_master;
        TcorePlugin *plg;
+       CoreObject *co_modem;
        GDBusConnection *conn;
        PacketServiceModem *if_obj;
 
-       gpointer p_master;
-       CoreObject *co_modem;
-       gchar *operator;
-       gboolean powered;
+       /* Temp DBus value */
+       GDBusMethodInvocation *invocation;
+       gint type;
+
+       /* Value from modem */
+       gchar* operator;
+       int powered;
+       gboolean initial_bootup;
+       gboolean reset_profile;
        gboolean sim_init;
        gboolean flight_mode;
+       gboolean flight_mode_ups; /*CP state right before UPS*/
+
        gboolean roaming_allowed;
        gboolean roaming;
 
        gboolean data_allowed;
+       gint ps_mode;
+       unsigned char hook_flag;
+       gboolean mode_pref_changed;
+       GQueue *work_queue;
+       gchar *cp_name;
        GHashTable *services;
-} PsModem;
+       GHashTable *contexts;
+       GSource *reset_profile_gsource;
+} ps_modem_t;
 
-typedef struct {
+typedef struct packet_service_service {
        gchar *path;
        TcorePlugin *plg;
        GDBusConnection *conn;
@@ -93,160 +209,214 @@ typedef struct {
        gpointer p_modem;
        CoreObject *co_network;
        CoreObject *co_ps;
+
        gboolean ps_attached;
        gboolean roaming;
        gboolean restricted;
-       TelNetworkAct act;
+       gboolean initial_pdp_conn; // If FALSE, PDP never been connected.
+       gboolean wifi_connected_checked; // If TRUE, We already checked wifi-connected state.
+       enum telephony_network_access_technology act;
+       /*PDP retry timer*/
+       alarm_id_t timer_src;
+       guint connection_timeout;
 
        GHashTable *contexts;
-} PsService;
+} ps_service_t;
 
-typedef struct {
-       gchar *path;
-       TcorePlugin *plg;
+typedef struct packet_service_context {
+       gcharpath;
+       gchar* mccmnc;
        GDBusConnection *conn;
        PacketServiceContext *if_obj;
+       TcorePlugin *plg;
 
-       CoreObject *co_context;
-       gchar *mccmnc;
        gboolean alwayson;
        gboolean default_internet;
        gboolean hidden;
        gboolean editable;
        gboolean ps_defined;
        gboolean b_active;
+       gboolean b_only_attach;
        gpointer p_service;
-       gint profile_id;
+       int profile_id;
+       CoreObject *co_context;
 
        gpointer async_context;
        gpointer user_data;
-} PsContext;
+       gboolean delete_required;
+       gboolean deact_required;
+} ps_context_t;
 
-typedef struct {
+typedef struct ps_custom_data{
        GDBusConnection *conn;
        guint bus_id;
        TcorePlugin *p;
        GSList *master;
-} PsCustom;
-
-
-void _packet_service_cleanup();
-TcoreHookReturn __on_hook_modem_added(Server *server,
-        TcoreServerNotification command, guint data_len, void *data,
-        void *user_data);
-
-/* Master */
-void   __remove_master(gpointer master, gpointer user_data);
-gpointer       _ps_master_create_master(GDBusConnection *conn, TcorePlugin *p);
-gboolean       _ps_master_create_modems(gpointer master);
-gboolean       _ps_master_get_storage_value_bool(gpointer master, TcoreStorageKey key);
-gboolean       _ps_master_set_storage_value_bool(gpointer master, TcoreStorageKey key, gboolean value);
-
-/* Modem */
-void   __remove_modem_handler(gpointer modem);
-gpointer       _ps_modem_create_modem(GDBusConnection *conn, TcorePlugin *p, gpointer master,
-                       gchar* modem_name, gpointer co_modem);
-gboolean       _ps_modem_processing_flight_mode(gpointer object, gboolean enable);
-gboolean       _ps_modem_processing_power_enable(gpointer modem, gboolean enable);
-gboolean       _ps_modem_processing_sim_complete(gpointer modem, gboolean complete, gchar *operator);
-gboolean       _ps_modem_set_sim_enabled(gpointer object, gboolean value);
-gboolean       _ps_modem_set_data_allowed(gpointer modem, gboolean value);
-gboolean       _ps_modem_get_data_allowed(gpointer modem);
-gboolean       _ps_modem_set_data_roaming_allowed(gpointer modem, gboolean value);
-gboolean       _ps_modem_get_data_roaming_allowed(gpointer modem);
+}ps_custom_t;
+
+/*MASTER*/
+void           __remove_master(gpointer master, gpointer user_data);
+gpointer    _ps_master_create_master(GDBusConnection *conn, TcorePlugin *p);
+gboolean    _ps_master_create_modems(gpointer master,TcorePlugin *p);
+gboolean    _ps_master_get_storage_value_bool(gpointer master, enum tcore_storage_key key);
+gboolean    _ps_master_get_storage_value_int(gpointer master, enum tcore_storage_key key);
+gboolean    _ps_master_set_storage_value_bool(gpointer master, enum tcore_storage_key key, gboolean value);
+gboolean    _ps_master_set_storage_value_int(gpointer master, enum tcore_storage_key key, gint value);
+
+/*MODEM*/
+void           __remove_modem_handler(gpointer modem);
+gpointer    _ps_modem_create_modem(GDBusConnection *conn, TcorePlugin *p, gpointer master,
+                               gchar* modem_name, gpointer co_modem, gchar *cp_name);
+gboolean       _ps_modem_send_filght_mode_request(gpointer value, void *data);
+gboolean    _ps_modem_processing_flight_mode(gpointer object, gboolean enable);
+gboolean    _ps_modem_processing_power_enable(gpointer modem, int enable);
+gboolean    _ps_modem_processing_sim_complete(gpointer modem, gboolean complete, gchar *operator);
+gboolean       _ps_modem_set_reset_profile(gpointer object, gboolean value);
+gboolean       _ps_modem_get_reset_profile(gpointer object);
+GSource * _ps_modem_get_profile_reset_gsource(gpointer object);
+gboolean _ps_modem_set_profile_reset_gsource(gpointer object, GSource * source);
+gboolean  _ps_modem_remove_profile_reset_gsource(gpointer object);
+gboolean    _ps_modem_set_sim_enabled(gpointer object, gboolean value);
+gboolean    _ps_modem_set_data_allowed(gpointer modem, gboolean value);
+gboolean    _ps_modem_get_data_allowed(gpointer modem);
+gboolean    _ps_modem_set_data_roaming_allowed(gpointer modem, gboolean value);
+gboolean    _ps_modem_get_data_roaming_allowed(gpointer modem);
 gboolean    _ps_modem_get_roaming(gpointer object);
-void           _ps_modem_set_roaming(gpointer object, gboolean value);
-gboolean       _ps_modem_set_psmode(gpointer modem, gint value);
-gboolean       _ps_modem_get_psmode(gpointer modem);
-gboolean       _ps_modem_get_flght_mode(gpointer object);
-gboolean       _ps_modem_get_sim_init(gpointer object);
-gboolean       _ps_modem_get_power(gpointer object);
-gchar*         _ps_modem_ref_operator(gpointer object);
+void        _ps_modem_set_roaming(gpointer object, gboolean value);
+gboolean    _ps_modem_set_psmode(gpointer modem, gint value);
+gint           _ps_modem_get_psmode(gpointer modem);
+guchar         _ps_modem_get_hook_flag(gpointer modem);
+gboolean    _ps_modem_get_flght_mode(gpointer object);
+void           _ps_modem_set_flght_mode_ups(gpointer object, gboolean value);
+gboolean    _ps_modem_get_flght_mode_ups(gpointer object);
+gboolean    _ps_modem_get_sim_init(gpointer object);
+int    _ps_modem_get_power(gpointer object);
+gchar*      _ps_modem_ref_operator(gpointer object);
 gboolean       _ps_modem_get_properties_handler(gpointer object, GVariantBuilder * properties);
 GVariant*      _ps_modem_get_properties(gpointer object, GVariantBuilder *properties);
-GHashTable*    _ps_modem_ref_services(gpointer modem);
-gchar*         _ps_modem_ref_path(gpointer modem);
-gpointer       _ps_modem_ref_plugin(gpointer modem);
-gpointer       _ps_modem_ref_dbusconn(gpointer modem);
-gpointer       _ps_modem_ref_co_modem(gpointer modem);
+GHashTable* _ps_modem_ref_services(gpointer modem);
+gchar*      _ps_modem_ref_path(gpointer modem);
+gpointer    _ps_modem_ref_plugin(gpointer modem);
+gpointer    _ps_modem_ref_dbusconn(gpointer modem);
+gpointer    _ps_modem_ref_co_modem(gpointer modem);
 gpointer       _ps_modem_ref_work_queue(gpointer modem);
+gchar*         _ps_modem_ref_cp_name(gpointer modem);
+ps_subs_type _ps_modem_get_subs_type(gpointer modem);
+gboolean _ps_modem_initiate_reset_profile(gpointer modem);
 
-/* Service */
+/*SERVICE*/
 void           __remove_service_handler(gpointer service);
-gpointer       _ps_service_create_service(GDBusConnection *conn, TcorePlugin *p,
-                       gpointer modem, CoreObject *co_network, CoreObject *co_ps, gchar* path);
-gboolean       _ps_service_ref_context(gpointer object, gpointer context);
-gboolean       _ps_service_ref_contexts(gpointer service, GHashTable *contexts, gchar *operator);
-gboolean       _ps_service_unref_context(gpointer service, gpointer context);
+gpointer    _ps_service_create_service(GDBusConnection *conn, TcorePlugin *p,
+                               gpointer modem, CoreObject *co_network, CoreObject *co_ps, gchar* path);
+gboolean    _ps_service_ref_context(gpointer object, gpointer context);
+gboolean    _ps_service_ref_contexts(gpointer service, GHashTable *contexts, gchar *operator);
+gboolean    _ps_service_unref_context(gpointer service, gpointer context);
 gboolean       _ps_service_get_properties_handler(gpointer object, GVariantBuilder *properties);
 GVariant*      _ps_service_get_properties(gpointer object, GVariantBuilder *properties);
-gchar*         _ps_service_ref_path(gpointer service);
-gpointer       _ps_service_ref_plugin(gpointer service);
-gpointer       _ps_service_ref_co_network(gpointer service);
-gpointer       _ps_service_ref_co_ps(gpointer service);
-gpointer       _ps_service_ref_modem(gpointer object);
-gboolean       _ps_service_set_context_info(gpointer service,  TcorePsPdpIpConf *devinfo);
-gint           _ps_service_define_context(gpointer object, gpointer context);
-gint           _ps_service_activate_context(gpointer service, gpointer context);
-gint           _ps_service_deactivate_context(gpointer service, gpointer context);
-void           _ps_service_set_retry_timeout_value(int value);
-void           _ps_service_connection_timer(gpointer service, gpointer context);
-void           _ps_service_reset_connection_timer(gpointer context);
-int                    _ps_service_connect_default_context(gpointer service);
-void           _ps_service_remove_contexts(gpointer object);
-void           _ps_service_disconnect_contexts(gpointer service);
-gboolean       _ps_service_processing_network_event(gpointer service, gboolean ps_attached, gboolean roaming);
-gpointer       _ps_service_return_default_context(gpointer object);
-gboolean       _ps_service_set_connected(gpointer service, gint context_id, gboolean enabled);
-void           _ps_service_set_ps_defined(gpointer *object, gboolean value, gint cid);
-gboolean       _ps_service_set_ps_attached(gpointer service, gboolean value);
-gboolean       _ps_service_set_roaming(gpointer service, gboolean value);
-gboolean       _ps_service_get_roaming(gpointer object);
-gboolean       _ps_service_set_restricted(gpointer object, gboolean value);
-gboolean       _ps_service_get_restricted(gpointer object);
-gboolean       _ps_service_set_access_technology(gpointer service,
-                       TelNetworkAct value);
-TcorePsState _ps_service_check_cellular_state(gpointer object);
-
-/* Context */
-void   __remove_context_handler(gpointer context);
-gboolean       _ps_context_initialize(gpointer plugin);
-gboolean       _ps_context_reset_profile_table(void);
-gboolean       _ps_context_fill_profile_table_from_ini_file(void);
-gboolean       _ps_context_reset_hashtable(void);
-GHashTable*    _ps_context_create_hashtable(GDBusConnection *conn, TcorePlugin *p, gchar *mccmnc);
-GHashTable*    _ps_context_ref_hashtable(void);
-gboolean       _ps_context_add_context(gpointer modem, gchar *operator, GHashTable *property);
+gchar*      _ps_service_ref_path(gpointer service);
+gpointer    _ps_service_ref_plugin(gpointer service);
+gpointer    _ps_service_ref_co_network(gpointer service);
+gpointer    _ps_service_ref_co_ps(gpointer service);
+gpointer    _ps_service_ref_modem(gpointer object);
+gboolean    _ps_service_set_context_info(gpointer service, struct tnoti_ps_pdp_ipconfiguration *devinfo);
+int            _ps_service_define_context(gpointer object, gpointer context);
+int         _ps_service_activate_context(gpointer service, gpointer context);
+gboolean    _ps_service_deactivate_context(gpointer service, gpointer context);
+void        _ps_service_set_retry_timeout_value(gpointer service, int value);
+void        _ps_service_connection_timer(gpointer service, gpointer context);
+void        _ps_service_reset_connection_timer(gpointer context);
+int         _ps_service_connect_default_context(gpointer service);
+void        _ps_service_remove_contexts(gpointer object);
+void        _ps_service_disconnect_contexts(gpointer service);
+void   _ps_service_disconnect_internet_mms_contexts(gpointer object);
+gboolean    _ps_service_processing_network_event(gpointer service, gboolean ps_attached, gboolean roaming);
+gpointer    _ps_service_return_default_context(gpointer object, int svc_cat_id);
+gboolean    _ps_service_set_connected(gpointer service, gpointer cstatus, gboolean enabled);
+void           _ps_service_set_ps_defined(gpointer *object, gboolean value, int cid);
+gboolean    _ps_service_set_ps_attached(gpointer service, gboolean value);
+gboolean    _ps_service_set_number_of_pdn_cnt(gpointer object, gchar *operator);
+gboolean    _ps_service_set_roaming(gpointer service, gboolean value);
+gboolean    _ps_service_get_roaming(gpointer object);
+gboolean    _ps_service_set_restricted(gpointer object, gboolean value);
+gboolean    _ps_service_get_restricted(gpointer object);
+gboolean    _ps_service_set_access_technology(gpointer service,
+                               enum telephony_network_access_technology value);
+enum telephony_ps_state
+                       _ps_service_check_cellular_state(gpointer object);
+int            _ps_service_update_roaming_apn(gpointer object, const char* apn_str);
+
+/*CONTEXT*/
+void           __remove_context_handler(gpointer context);
+gboolean    _ps_context_initialize(gpointer plugin);
+gboolean    _ps_context_reset_profile_table(gchar *cp_name);
+gboolean    _ps_context_fill_profile_table_from_ini_file(gchar *cp_name);
+gboolean    _ps_context_reset_hashtable(gpointer modem);
+GHashTable* _ps_context_create_hashtable(gpointer modem);
+GHashTable* _ps_context_ref_hashtable(gpointer modem);
+gboolean    _ps_context_add_context(gpointer modem, gchar *operator, GHashTable *property);
 gboolean       _ps_context_get_properties_handler(gpointer context, GVariantBuilder *properties);
 GVariant*      _ps_context_get_properties(gpointer context, GVariantBuilder *properties);
-gboolean       _ps_context_set_service(gpointer context, gpointer service);
-gpointer       _ps_context_ref_service(gpointer object);
-gboolean       _ps_context_get_alwayson_enable(gpointer object);
-gchar*         _ps_context_ref_path(gpointer context);
-gpointer       _ps_context_ref_co_context(gpointer context);
-gboolean       _ps_context_set_connected(gpointer context, gboolean enabled);
-gboolean       _ps_context_set_ps_defined(gpointer *object, gboolean value, gint cid);
-gboolean       _ps_context_get_ps_defined(gpointer *object);
-gboolean       _ps_context_set_alwayson_enable(gpointer object, gboolean enabled);
-gboolean       _ps_context_get_default_internet(gpointer object);
-gboolean       _ps_context_remove_context(gpointer context);
-gboolean       _ps_context_reset_user_data(gpointer object);
-gpointer       _ps_context_get_user_data(gpointer object);
-TelReturn      _ps_connection_hdlr(gpointer object);
-void           _ps_default_connection_hdlr(gpointer object);
-gint           _ps_context_get_number_of_pdn(gchar *operator);
-gboolean       _ps_context_handle_ifaceup(gpointer user_data);
-gboolean       _ps_context_handle_ifacedown(gpointer user_data);
-
-
-/* Plugin Interface */
-gboolean       _ps_hook_co_modem_event(gpointer modem);
-gboolean       _ps_get_co_modem_values(gpointer modem);
-gboolean       _ps_hook_co_network_event(gpointer service);
-gboolean       _ps_free_co_network_event(gpointer service);
-gboolean       _ps_get_co_network_values(gpointer service);
-gboolean       _ps_hook_co_ps_event(gpointer service);
-gboolean       _ps_free_co_ps_event(gpointer service);
-gboolean       _ps_update_cellular_state_key(gpointer service);
+gboolean    _ps_context_set_service(gpointer context, gpointer service);
+gpointer    _ps_context_ref_service(gpointer object);
+gboolean    _ps_context_get_alwayson_enable(gpointer object);
+gchar*      _ps_context_ref_path(gpointer context);
+gpointer    _ps_context_ref_co_context(gpointer context);
+gboolean    _ps_context_set_connected(gpointer context, gboolean enabled);
+gboolean       _ps_context_set_ps_defined(gpointer *object, gboolean value);
+gboolean       _ps_context_get_ps_defined(gpointer *object);
+gboolean _ps_context_set_only_attach(gpointer *object, gboolean value);
+gboolean _ps_context_get_only_attach(gpointer *object);
+gboolean    _ps_context_set_alwayson_enable(gpointer object, gboolean enabled);
+gboolean    _ps_context_get_default_context(gpointer object, int svc_cat_id);
+gboolean    _ps_context_remove_context(gpointer context);
+gboolean    _ps_context_reset_user_data(gpointer object);
+gboolean _ps_context_create_cdma_profile(gchar* mccmnc, gchar* cp_name);
+gpointer    _ps_context_get_user_data(gpointer object);
+TReturn     _ps_connection_hdlr(gpointer object);
+void        _ps_default_connection_hdlr(gpointer object);
+gint        _ps_context_get_number_of_pdn(gchar *operator, gchar *cp_name);
+gboolean       _ps_context_handle_ifaceup(gpointer user_data);
+gboolean       _ps_context_handle_ifacedown(gpointer user_data);
+
+
+/*PLUGIN INTERFACE*/
+void        _ps_get_network_mode(gpointer data);
+gboolean    _ps_hook_co_modem_event(gpointer modem);
+gboolean    _ps_get_co_modem_values(gpointer modem);
+gboolean    _ps_hook_co_network_event(gpointer service);
+gboolean    _ps_free_co_network_event(gpointer service);
+gboolean    _ps_get_co_network_values(gpointer service);
+gboolean    _ps_hook_co_ps_event(gpointer service);
+gboolean       _ps_free_modem_event(gpointer modem);
+gboolean    _ps_free_co_ps_event(gpointer service);
+gboolean _ps_free_co_modem_event(gpointer modem);
+gboolean    _ps_update_cellular_state_key(gpointer service);
+
+/* Utilities */
+void __ps_hook_response_cb(UserRequest *ur, enum tcore_response_command command, unsigned int data_len, const void *data, void *user_data);
+void __ps_modem_cp_reset_send_pending_request_response(gpointer data);
+enum tcore_hook_return ps_handle_dds(Server *s, UserRequest *ur, void *user_data);
+enum tcore_hook_return ps_handle_hook(Server *s, UserRequest *ur, void *user_data);
+void __ps_send_pending_user_request(gpointer data);
+#ifdef POWER_SAVING_FEATURE_WEARABLE
+typedef enum {
+       ON_REQUEST,
+       ON_NON_CALL_NOTI_HOOK,
+       ON_CALL_NOTI_HOOK,
+}__ps_call_flow_type;
+
+void __ps_check_handle_modem_off_request(gpointer data, __ps_call_flow_type type,enum tcore_notification_command command);
+
+#endif /* #ifdef POWER_SAVING_FEATURE_WEARABLE */
+
+enum tcore_hook_return __on_hook_modem_added(Server *s, CoreObject *source, enum tcore_notification_command command, unsigned int data_len, void *data, void *user_data);
+
+/* util.c */
+gboolean ps_util_check_access_control (GDBusMethodInvocation *invoc, const char *label, const char *perm);
+GSource * ps_util_gsource_dispatch(GMainContext *main_context, gint priority, GSourceFunc cb, gpointer data);
+gboolean ps_util_thread_dispatch(GMainContext *main_context, gint priority, GSourceFunc cb, gpointer data);
+int  ps_util_system_command(char * command);
+void ps_util_load_xml_file(const char *docname, const char *groupname, void **i_doc, void **i_root_node);
+void ps_util_unload_xml_file(void **i_doc, void **i_root_node);
 
 #endif /* __PS_H__ */
diff --git a/include/ps_log.h b/include/ps_log.h
new file mode 100644 (file)
index 0000000..1ac4f36
--- /dev/null
@@ -0,0 +1,48 @@
+/*
+ * PacketService Control Module
+ *
+ * Copyright (c) 2012 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Contact: DongHoo Park <donghoo.park@samsung.com>
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#pragma once
+
+extern gchar *ps_log_get_tag(CoreObject *co);
+
+#define ps_err_ex_co(c,...) do {       \
+               gchar *tag = ps_log_get_tag(c); \
+               err_ex(tag, "[ERROR] "__VA_ARGS__);     \
+               g_free(tag);    \
+       } while (0)
+
+#define ps_warn_ex_co(c,...) do {      \
+               gchar *tag = ps_log_get_tag(c); \
+               warn_ex(tag, "[WARN] "__VA_ARGS__);     \
+               g_free(tag);    \
+       } while (0)
+
+#define ps_msg_ex_co(c,...) do {       \
+               gchar *tag = ps_log_get_tag(c); \
+               msg_ex(tag, __VA_ARGS__);       \
+               g_free(tag);    \
+       } while (0)
+
+#define ps_dbg_ex_co(c,...) do {       \
+               gchar *tag = ps_log_get_tag(c); \
+               dbg_ex(tag, __VA_ARGS__);       \
+               g_free(tag);    \
+       } while (0)
index f825a9a..3ddbeec 100644 (file)
@@ -1,29 +1,30 @@
 <node>
-    <interface name="com.tcore.ps.context">
-        <method name="GetProperties">
-            <arg  type="a{ss}" name="context_property" direction="out" />
-        </method>
-        <method name="GetProfile">
-            <arg  type="a{ss}" name="profile_property" direction="out" />
-        </method>
-        <method name="Activate">
-            <arg  type="s" name="context_path" direction="out" />
-        </method>
-        <method name="Deactivate">
-            <arg  type="s" name="context_path" direction="out" />
-        </method>
-        <method name="SetDefaultConnection">
-            <arg  type="b" name="result" direction="out" />
-        </method>
-        <method name="ModifyProfile">
-            <arg  type="a{ss}" name="profile_property" direction="in" />
-            <arg  type="b" name="result" direction="out" />
-        </method>
-        <method name="RemoveProfile">
-            <arg  type="b" name="result" direction="out" />
-        </method>
-        <signal name="PropertyChanged">
-            <arg type="a{ss}" name="context_property" direction="out" />
-        </signal>
-    </interface>
+       <interface name="com.tcore.ps.context">
+               <method name="GetProperties">
+                       <arg  type="a{ss}" name="context_property" direction="out" />
+               </method>
+               <method name="GetProfile">
+                       <arg  type="a{ss}" name="profile_property" direction="out" />
+               </method>
+               <method name="Activate">
+                       <arg  type="s" name="context_path" direction="out" />
+               </method>
+               <method name="Deactivate">
+                       <arg  type="s" name="context_path" direction="out" />
+               </method>
+               <method name="SetDefaultConnection">
+                       <arg  type="b" name="result" direction="out" />
+               </method>
+               <method name="ModifyProfile">
+                       <arg  type="a{ss}" name="profile_property" direction="in" />
+                       <arg  type="b" name="result" direction="out" />
+               </method>
+               <method name="RemoveProfile">
+                       <arg  type="b" name="result" direction="out" />
+               </method>
+               <signal name="PropertyChanged">
+                       <arg type="a{ss}" name="context_property" direction="out" />
+               </signal>
+       </interface>
 </node>
+
index 0583954..901b966 100644 (file)
@@ -1,24 +1,15 @@
 <node>
-    <interface name="com.tcore.ps.master">
-        <method name="GetModems">
-            <arg  type="a{sa{ss}}" name="modem_hash" direction="out" />
-        </method>
-        <method name="GetProfileList">
-            <arg  type="as" name="profile_list" direction="out" />
-        </method>
-        <method name="AddProfile">
-            <arg  type="a{ss}" name="profile_property" direction="in" />
-            <arg  type="b" name="result" direction="out" />
-        </method>
-        <method name="ResetProfile">
-            <arg  type="i" name="type" direction="in" />
-            <arg  type="b" name="result" direction="out" />
-        </method>
-        <signal name="ModemAdded">
-            <arg  type="a{ss}" name="modem" direction="out" />
-        </signal>
-        <signal name="ModemRemoved">
-            <arg type="o" name="modem_path" direction="out" />
-        </signal>
-    </interface>
+       <interface name="com.tcore.ps.master">
+               <method name="GetModems">
+                       <arg  type="a{sa{ss}}" name="modem_hash" direction="out" />
+               </method>
+               <signal name="ModemAdded">
+                       <arg  type="a{ss}" name="modem" direction="out" />
+               </signal>
+
+               <signal name="ModemRemoved">
+                       <arg type="o" name="modem_path" direction="out" />
+               </signal>
+       </interface>
 </node>
+
index cb897cd..01a603d 100644 (file)
@@ -1,19 +1,39 @@
 <node>
-    <interface name="com.tcore.ps.modem">
-        <method name="GetProperties">
-            <arg  type="a{ss}" name="modem_property" direction="out" />
-        </method>
-        <method name="GetServices">
-            <arg  type="a{sa{ss}}" name="service_hash" direction="out" />
-        </method>
-        <signal name="PropertyChanged">
-            <arg type="a{ss}" name="modem_property" direction="out" />
-        </signal>
-        <signal name="ServiceAdded">
-            <arg type="a{ss}" name="service" direction="out" />
-        </signal>
-        <signal name="ServiceRemoved">
-            <arg  type="s" name="service_path" direction="out" />
-        </signal>
-    </interface>
+       <interface name="com.tcore.ps.modem">
+               <method name="GetProperties">
+                       <arg  type="a{ss}" name="modem_property" direction="out" />
+               </method>
+               <method name="GetServices">
+                       <arg  type="a{sa{ss}}" name="service_hash" direction="out" />
+               </method>
+               <method name="GetProfileList">
+                       <arg  type="as" name="profile_list" direction="out" />
+               </method>
+               <method name="AddProfile">
+                       <arg  type="a{ss}" name="profile_property" direction="in" />
+                       <arg  type="b" name="result" direction="out" />
+               </method>
+               <method name="ResetProfile">
+                       <arg  type="i" name="type" direction="in" />
+                       <arg  type="b" name="result" direction="out" />
+               </method>
+               <method name="GoDormantAll">
+                        <arg  type="i" name="result" direction="out" />
+               </method>               
+               <signal name="PropertyChanged">
+                       <arg type="a{ss}" name="modem_property" direction="out" />
+               </signal>
+               <signal name="ServiceAdded">
+                       <arg type="a{ss}" name="service" direction="out" />
+               </signal>
+               <signal name="ServiceRemoved">
+                       <arg  type="s" name="service_path" direction="out" />
+               </signal>
+               <signal name="DedicatedBearerInfo">
+                       <arg  type="a{ss}" name="dedicated_bearer" direction="out" />
+               </signal>
+               <signal name="ResetProfileComplete">
+                       <arg type="b" name="result" direction="out" />
+               </signal>
+       </interface>
 </node>
index c16b14e..f378771 100644 (file)
@@ -1,19 +1,20 @@
 <node>
-    <interface name="com.tcore.ps.service">
-        <method name="GetProperties">
-            <arg  type="a{ss}" name="service_property" direction="out" />
-        </method>
-        <method name="GetContexts">
-            <arg  type="a{sa{ss}}" name="context_hash" direction="out" />
-        </method>
-        <signal name="PropertyChanged">
-            <arg type="a{ss}" name="service_property" direction="out" />
-        </signal>
-        <signal name="ContextAdded">
-            <arg type="a{ss}" name="context" direction="out" />
-        </signal>
-        <signal name="ContextRemoved">
-            <arg  type="s" name="context_path" direction="out" />
-        </signal>
-    </interface>
+       <interface name="com.tcore.ps.service">
+               <method name="GetProperties">
+                       <arg  type="a{ss}" name="service_property" direction="out" />
+               </method>
+               <method name="GetContexts">
+                       <arg  type="a{sa{ss}}" name="context_hash" direction="out" />
+               </method>
+               <signal name="PropertyChanged">
+                       <arg type="a{ss}" name="service_property" direction="out" />
+               </signal>
+               <signal name="ContextAdded">
+                       <arg type="a{ss}" name="context" direction="out" />
+               </signal>
+               <signal name="ContextRemoved">
+                       <arg  type="s" name="context_path" direction="out" />
+               </signal>
+       </interface>
 </node>
+
diff --git a/packaging/tel-plugin-packetservice.manifest b/packaging/tel-plugin-packetservice.manifest
deleted file mode 100644 (file)
index 017d22d..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-<manifest>
- <request>
-    <domain name="_"/>
- </request>
-</manifest>
old mode 100644 (file)
new mode 100755 (executable)
index 309e2ec..3b6a615
-%define major 3
-%define minor 0
-%define patchlevel 1
-
-Name:       tel-plugin-packetservice
-Summary:    Telephony Packet Service library
-Version:    %{major}.%{minor}.%{patchlevel}
-Release:    1
-Group:      System/Libraries
-License:    Apache-2.0
-Source0:    tel-plugin-packetservice-%{version}.tar.gz
-Source1001:    tel-plugin-packetservice.manifest
-Requires(post): /sbin/ldconfig
-Requires(postun): /sbin/ldconfig
+%define major 0
+%define minor 2
+%define patchlevel 98
+
+Name:           tel-plugin-packetservice
+Version:        %{major}.%{minor}.%{patchlevel}
+Release:        0
+License:        Apache
+Summary:        Telephony Packet Service library
+Group:          System/Libraries
+Source0:        tel-plugin-packetservice-%{version}.tar.gz
 BuildRequires:  cmake
 BuildRequires:  python
 BuildRequires:  python-xml
+#BuildRequires:  model-build-features
 BuildRequires:  pkgconfig(gio-2.0)
 BuildRequires:  pkgconfig(gio-unix-2.0)
 BuildRequires:  pkgconfig(glib-2.0)
-BuildRequires:  pkgconfig(tcore)
-BuildRequires:  pkgconfig(tel-headers)
+BuildRequires:  pkgconfig(libxml-2.0)
 BuildRequires:  pkgconfig(iniparser)
-BuildRequires:  pkgconfig(libtzplatform-config)
+BuildRequires:  pkgconfig(tcore)
+BuildRequires:  pkgconfig(db-util)
+BuildRequires:  pkgconfig(vconf)
+BuildRequires:         pkgconfig(alarm-service)
+BuildRequires:  pkgconfig(security-server)
 Requires(post): /sbin/ldconfig
 Requires(postun): /sbin/ldconfig
+
 %description
 Telephony Packet Service library
 
 %prep
 %setup -q
-cp %{SOURCE1001} .
 
 %build
 %cmake . -DSYSCONFDIR=%{_sysconfdir}
 make %{?jobs:-j%jobs}
 
-%post 
+%post
 /sbin/ldconfig
 
 #create db
-mkdir -p %{TZ_SYS_DB}  
+mkdir -p /opt/dbspace
 
-if [ ! -f %{TZ_SYS_DB}/.dnet.db ]
+if [ ! -f /opt/dbspace/.dnet.db ]
+then
+  sqlite3 /opt/dbspace/.dnet.db < /usr/share/ps-plugin/dnet_db.sql
+  sqlite3 /opt/dbspace/.dnet.db < /usr/share/ps-plugin/dnet_db_init.sql
+fi
+if [ ! -f /opt/dbspace/.dnet2.db ]
 then
-  sqlite3 %{TZ_SYS_DB}/.dnet.db < /usr/share/ps-plugin/dnet_db.sql
-  sqlite3 %{TZ_SYS_DB}/.dnet.db < /usr/share/ps-plugin/dnet_db_data.sql
+  sqlite3 /opt/dbspace/.dnet2.db < /usr/share/ps-plugin/dnet_db.sql
+  sqlite3 /opt/dbspace/.dnet2.db < /usr/share/ps-plugin/dnet_db_init.sql
 fi
 
 rm -f /usr/share/ps-plugin/dnet_db.sql
-rm -f /usr/share/ps-plugin/dnet_db_data.sql
 
 #change file permission
-if [ -f %{TZ_SYS_DB}/.dnet.db ]
+if [ -f /opt/dbspace/.dnet.db ]
+then
+       chmod 660 /opt/dbspace/.dnet.db
+       chsmack -a 'telephony_framework::db' /opt/dbspace/.dnet.db
+fi
+
+if [ -f /opt/dbspace/.dnet.db-journal ]
+then
+       chmod 664 /opt/dbspace/.dnet.db-journal
+       chsmack -a 'telephony_framework::db' /opt/dbspace/.dnet.db-journal
+fi
+
+if [ -f /opt/dbspace/.dnet2.db ]
+then
+       chmod 660 /opt/dbspace/.dnet2.db
+       chsmack -a 'telephony_framework::db' /opt/dbspace/.dnet2.db
+fi
+
+if [ -f /opt/dbspace/.dnet2.db-journal ]
+then
+       chmod 664 /opt/dbspace/.dnet2.db-journal
+       chsmack -a 'telephony_framework::db' /opt/dbspace/.dnet2.db-journal
+fi
+
+if [ -f /etc/opt/upgrade/520.tel-plugin-packetservice.patch.sh ]
 then
-  chmod 660 %{TZ_SYS_DB}/.dnet.db
-  chsmack -a 'System' %{TZ_SYS_DB}/.dnet.db
+       chmod 700 /etc/opt/upgrade/520.tel-plugin-packetservice.patch.sh
 fi
 
-if [ -f %{TZ_SYS_DB}/.dnet.db-journal ]
+if [ -f /opt/etc/dump.d/module.d/dump_packetservice.sh ]
 then
-  chmod 664 %{TZ_SYS_DB}/.dnet.db-journal
-  chsmack -a 'System' %{TZ_SYS_DB}/.dnet.db-journal
+       chmod 700 /opt/etc/dump.d/module.d/dump_packetservice.sh
 fi
 
 %postun -p /sbin/ldconfig
 
 %install
 %make_install
-mkdir -p %{buildroot}/usr/share/license
-cp LICENSE %{buildroot}/usr/share/license/%{name}
+mkdir -p %{buildroot}%{_datadir}/license
 
 %files
-%manifest %{name}.manifest
+%manifest tel-plugin-packetservice.manifest
 %defattr(-,root,root,-)
-/usr/share/ps-plugin/dnet_db.sql
-/usr/share/ps-plugin/dnet_db_data.sql
-%{_sysconfdir}/dbus-1/system.d/*
+/opt/etc/dump.d/module.d/dump_packetservice.sh
+#%doc COPYING
+%{_datadir}/ps-plugin/dnet_db.sql
+%{_datadir}/ps-plugin/dnet_db_init.sql
+%{_datadir}/ps-plugin/apns-conf.xml
+%{_sysconfdir}/opt/upgrade/*
 %{_libdir}/telephony/plugins/ps-plugin*
-/usr/share/license/%{name}
+%{_datadir}/license/tel-plugin-packetservice
diff --git a/resources/520.tel-plugin-packetservice.patch.sh b/resources/520.tel-plugin-packetservice.patch.sh
new file mode 100644 (file)
index 0000000..0971e1b
--- /dev/null
@@ -0,0 +1 @@
+/bin/echo 'alter table pdp_profile add user_defined INTEGER default 0;' | /usr/bin/sqlite3 /opt/dbspace/.dnet.db
\ No newline at end of file
diff --git a/resources/apns-conf.xml b/resources/apns-conf.xml
new file mode 100644 (file)
index 0000000..8203e8b
--- /dev/null
@@ -0,0 +1,13931 @@
+<?xml version="1.0" encoding="utf-8"?>\r
+<!--\r
+/*\r
+** Copyright 2006, Google Inc.\r
+**\r
+** Licensed under the Apache License, Version 2.0 (the "License");\r
+** you may not use this file except in compliance with the License.\r
+** You may obtain a copy of the License at\r
+**\r
+**     http://www.apache.org/licenses/LICENSE-2.0\r
+**\r
+** Unless required by applicable law or agreed to in writing, software\r
+** distributed under the License is distributed on an "AS IS" BASIS,\r
+** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+** See the License for the specific language governing permissions and\r
+** limitations under the License.\r
+*/\r
+-->\r
+\r
+<!-- use empty string to specify no proxy or port -->\r
+<!-- This version must agree with that in apps/common/res/apns.xml -->\r
+<apns version="8">\r
+  <apn carrier="Cosmote Wireless Internet"\r
+      mcc="202"\r
+      mnc="01"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Cosmote Mms"\r
+      mcc="202"\r
+      mnc="01"\r
+      apn="mms"\r
+      mmsc="http://mmsc.cosmote.gr:8002"\r
+      mmsproxy="10.10.10.20"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!--Vodafone Greece requested. QC56746. 2011.09.30. -->\r
+  <apn carrier="Vf Mobile Internet"\r
+      mcc="202"\r
+      mnc="05"\r
+      apn="internet.vodafone.gr"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!--Vodafone Greece requested to remove "Vf Wap. QC56746. 2011.09.30. -->\r
+\r
+  <apn carrier="Vf MMS"\r
+      mcc="202"\r
+      mnc="05"\r
+      apn="mms.vodafone.net"\r
+      user="user"\r
+      password="pass"\r
+      mmsc="http://mms.vodafone.gr"\r
+      mmsproxy="213.249.19.49"\r
+      mmsport="5080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Q-Telecom MMS GPRS"\r
+      mcc="202"\r
+      mnc="09"\r
+      apn="q-mms.myq.gr"\r
+      mmsc="http://mms.myq.gr"\r
+      mmsproxy="192.168.80.134"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Wind Internet"\r
+      mcc="202"\r
+      mnc="10"\r
+      apn="gint.b-online.gr"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Wind MMS"\r
+      mcc="202"\r
+      mnc="10"\r
+      apn="mnet.b-online.gr"\r
+      mmsc="http://192.168.200.95/servlets/mms"\r
+      mmsproxy="192.168.200.11"\r
+      mmsport="9401"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CTNET"\r
+      mcc="204"\r
+      mnc="04"\r
+      apn="CTNET"\r
+      user="ctnet@mycdma.cn"\r
+      password="vnet.mobi"\r
+      authtype="2"\r
+      proxy=""\r
+      port=""\r
+      mmsproxy=""\r
+      mmsport=""\r
+      mmsc=""\r
+      type="default"\r
+      ppp_digit="#777"\r
+      databearer="Packet data bearer"\r
+  />\r
+  <apn carrier="Vodafone NL"\r
+      mcc="204"\r
+      mnc="04"\r
+      apn="live.vodafone.com"\r
+      user="vodafone"\r
+      password="vodafone"\r
+      mmsc="http://mmsc.mms.vodafone.nl"\r
+      mmsproxy="192.168.251.150"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="KPN Internet"\r
+      mcc="204"\r
+      mnc="08"\r
+      apn="portalmmm.nl"\r
+      mmsc="http://mp.mobiel.kpn/mmsc"\r
+      mmsproxy="10.10.100.20"\r
+      mmsport="5080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Telfort Internet"\r
+      mcc="204"\r
+      mnc="12"\r
+      apn="internet"\r
+      mmsc="http://mms"\r
+      mmsproxy="193.113.200.195"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile Internet"\r
+      mcc="204"\r
+      mnc="16"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="T-Mobile MMS"\r
+      mcc="204"\r
+      mnc="16"\r
+      apn="mms"\r
+      user="tmobilemms"\r
+      password="tmobilemms"\r
+      mmsc="http://t-mobilemms"\r
+      mmsproxy="10.10.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Rabo Mobiel"\r
+      mcc="204"\r
+      mnc="20"\r
+      apn="rabo.plus"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Proximus MMS"\r
+      mcc="206"\r
+      mnc="01"\r
+      apn="event.proximus.be"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mmsc.proximus.be/mms"\r
+      mmsproxy="10.55.14.75"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Proximus Internet"\r
+      mcc="206"\r
+      mnc="01"\r
+      apn="internet.proximus.be"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Telenet is using 206/01 as well (Confirmed by operator) -->\r
+  <apn carrier="Telenet Internet"\r
+       mcc="206"\r
+       mnc="01"\r
+       apn="telenetwap.be"\r
+       type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Telenet is using 206/01 as well (Confirmed by operator) -->\r
+  <apn carrier="Telenet MMS"\r
+       mcc="206"\r
+       mnc="01"\r
+       apn="mms.be"\r
+       mmsc="http://mmsc.telenet.be"\r
+       mmsproxy="195.130.149.100"\r
+       mmsport="80"\r
+       type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The WAP proxy should be removed (Confirmed by operator) -->\r
+  <apn carrier="Telenet"\r
+      mcc="206"\r
+      mnc="05"\r
+      apn="telenetwap.be"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Telenet MMS"\r
+      mcc="206"\r
+      mnc="05"\r
+      apn="mms.be"\r
+      mmsc="http://mmsc.telenet.be"\r
+      mmsproxy="195.130.149.100"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Mobistar MMS"\r
+      mcc="206"\r
+      mnc="10"\r
+      apn="mms.be"\r
+      mmsc="http://mmsc.mobistar.be"\r
+      mmsproxy="212.65.63.143"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Mobistar"\r
+      mcc="206"\r
+      mnc="10"\r
+      apn="mworld.be"\r
+      user="mobistar"\r
+      password="mobistar"\r
+      proxy="212.65.63.143"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The account for Base should be changed (Confirmed by operator) -->\r
+  <apn carrier="Base"\r
+      mcc="206"\r
+      mnc="20"\r
+      apn="gprs.base.be"\r
+      user="base"\r
+      password="base"\r
+      proxy="172.31.198.37"\r
+      port="5080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="BASE MMS"\r
+      mcc="206"\r
+      mnc="20"\r
+      apn="mms.base.be"\r
+      user="base"\r
+      password="base"\r
+      mmsc="http://mmsc.base.be"\r
+      mmsproxy="217.72.235.1"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change value -->\r
+  <apn carrier="Orange World"\r
+      mcc="208"\r
+      mnc="01"\r
+      apn="orange"\r
+      user="orange"\r
+      password="orange"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change value -->\r
+  <apn carrier="Orange MMS"\r
+      mcc="208"\r
+      mnc="01"\r
+      apn="orange.acte"\r
+      user="orange"\r
+      password="orange"\r
+      mmsc="http://mms.orange.fr"\r
+      mmsproxy="192.168.10.200"\r
+      mmsport="8080"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Add new apns -->\r
+  <apn carrier="Orange Entreprise"\r
+      mcc="208"\r
+      mnc="01"\r
+      apn="orange-mib"\r
+      proxy="172.16.2.8"\r
+      port="8000"\r
+      user="orange"\r
+      password="orange"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Add new apns -->\r
+  <apn carrier="Orange Internet"\r
+      apn="orange.fr"\r
+      user="orange"\r
+      password="orange"\r
+      mcc="208"\r
+      mnc="01"\r
+      authtype="1"\r
+      type="dun"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Add new apns -->\r
+  <apn carrier="Orange Internet Entreprise"\r
+      apn="internet-entreprise"\r
+      user="orange"\r
+      password="orange"\r
+      mcc="208"\r
+      mnc="01"\r
+      authtype="1"\r
+      type="dun"\r
+  />\r
+\r
+  <apn carrier="SFR webphone"\r
+      mcc="208"\r
+      mnc="10"\r
+      apn="sl2sfr"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="SFR Mobile"\r
+      mcc="208"\r
+      mnc="10"\r
+      apn="wapsfr"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="SFR Option Modem"\r
+      mcc="208"\r
+      mnc="10"\r
+      apn="websfr"\r
+      type="dun"\r
+  />\r
+\r
+  <apn carrier="MMS"\r
+      mcc="208"\r
+      mnc="10"\r
+      apn="mmssfr"\r
+      mmsc="http://mms1"\r
+      mmsproxy="10.151.0.1"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Bouygues Telecom"\r
+      mcc="208"\r
+      mnc="20"\r
+      apn="mmsbouygtel.com"\r
+      mmsc="http://mms.bouyguestelecom.fr/mms/wapenc"\r
+      mmsproxy="62.201.129.226"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="NRJWEB"\r
+      mcc="208"\r
+      mnc="10"\r
+      apn="fnetnrj"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="NRJMMS"\r
+      mcc="208"\r
+      mnc="10"\r
+      mmsc="http://mmsnrj"\r
+      mmsproxy="10.143.156.5"\r
+      mmsport="8080"\r
+      apn="mmsnrj"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Auchan WAP"\r
+      mcc="208"\r
+      mnc="10"\r
+      proxy="192.168.21.8"\r
+      port="8080"\r
+      apn="wap65"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Auchan MMS"\r
+      mcc="208"\r
+      mnc="10"\r
+      mmsc="http://mms65"\r
+      mmsproxy="10.143.156.8"\r
+      mmsport="8080"\r
+      apn="mms65"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="WAP Simplicime"\r
+      mcc="208"\r
+      mnc="10"\r
+      proxy="192.168.21.3"\r
+      port="8080"\r
+      apn="wapdebitel"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS Simplicime"\r
+      mcc="208"\r
+      mnc="10"\r
+      mmsc="http://mmsdebitel"\r
+      mmsproxy="10.143.156.3"\r
+      mmsport="8080"\r
+      apn="mmsdebitel"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="WAP LeclercMobile"\r
+      mcc="208"\r
+      mnc="10"\r
+      proxy="192.168.21.9"\r
+      port="8080"\r
+      apn="wap66"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS LeclercMobile"\r
+      mcc="208"\r
+      mnc="10"\r
+      mmsc="http://mms66"\r
+      mmsproxy="10.143.156.9"\r
+      mmsport="8080"\r
+      apn="mms66"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Coriolis WAP"\r
+      mcc="208"\r
+      mnc="10"\r
+      proxy="192.168.21.6"\r
+      port="8080"\r
+      apn="wapcoriolis"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Coriolis MMS"\r
+      mcc="208"\r
+      mnc="10"\r
+      mmsc="http://mmscoriolis"\r
+      mmsproxy="10.143.156.6"\r
+      mmsport="8080"\r
+      apn="mmscoriolis"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Keyyo Mobile Internet"\r
+      mcc="208"\r
+      mnc="10"\r
+      apn="internet68"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Keyyo Mobile MMS"\r
+      mcc="208"\r
+      mnc="10"\r
+      mmsc="http://mms68"\r
+      mmsproxy="10.143.156.11"\r
+      mmsport="8080"\r
+      apn="mms68"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="WEB La Poste Mobile"\r
+      mcc="208"\r
+      mnc="10"\r
+      proxy="192.168.21.3"\r
+      port="8080"\r
+      apn="wapdebitel"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS La Poste Mobile"\r
+      mcc="208"\r
+      mnc="10"\r
+      mmsc="http://mmsdebitel"\r
+      mmsproxy="10.143.156.3"\r
+      mmsport="8080"\r
+      apn="mmsdebitel"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Add new apns -->\r
+  <apn carrier="Free"\r
+      mcc="208"\r
+      mnc="15"\r
+      apn="free"\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Free MMS"\r
+      mcc="208"\r
+      mnc="15"\r
+      apn="mmsfree"\r
+      mmsc="http://mms.free.fr"\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="INTERNET"\r
+      mcc="214"\r
+      mnc="01"\r
+      apn="airtelwap.es"\r
+      user="wap@wap"\r
+      password="wap125"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS VODAFONE"\r
+      mcc="214"\r
+      mnc="01"\r
+      apn="mms.vodafone.net"\r
+      user="wap@wap"\r
+      password="wap125"\r
+      mmsc="http://mmsc.vodafone.es/servlets/mms"\r
+      mmsproxy="212.73.32.10"\r
+      mmsport="80"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Add new apn -->\r
+  <apn carrier="Orange Internet Mvil"\r
+      mcc="214"\r
+      mnc="03"\r
+      apn="orangeworld"\r
+      proxy="10.132.61.10"\r
+      port="8080"\r
+      user="orange"\r
+      password="orange"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change the value -->\r
+  <apn carrier="Orange Internet PC"\r
+      mcc="214"\r
+      mnc="03"\r
+      apn="internet"\r
+      user="orange"\r
+      password="orange"\r
+      authtype="0"\r
+      type="dun"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change the value -->\r
+  <apn carrier="Orange MMS"\r
+      apn="orangemms"\r
+      proxy="172.22.188.25"\r
+      port="8080"\r
+      user="orange"\r
+      password="orange"\r
+      mmsc="http://mms.orange.es"\r
+      mmsproxy="172.22.188.25"\r
+      mmsport="8080"\r
+      mcc="214"\r
+      mnc="03"\r
+      authtype="2"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The name for Yoigo should be changed (Confirmed by operator) -->\r
+  <apn carrier="Yoigo Navegador"\r
+      mcc="214"\r
+      mnc="04"\r
+      apn="internet"\r
+      proxy="10.8.0.36"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Yoigo MMS"\r
+      mcc="214"\r
+      mnc="04"\r
+      apn="mms"\r
+      mmsc="http://mmss/"\r
+      mmsproxy="193.209.134.141"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="INTERNET GPRS"\r
+      mcc="214"\r
+      mnc="06"\r
+      apn="airtelnet.es"\r
+      user="vodafone"\r
+      password="vodafone"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Euskaltel MMS"\r
+      mcc="214"\r
+      mnc="06"\r
+      apn="euskaltelmms.euskaltel.mobi"\r
+      user="MMS"\r
+      password="EUSKALTEL"\r
+      mmsc="http://mms.euskaltel.mobi"\r
+      mmsproxy="172.16.18.74"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Euskaltel Internet"\r
+      mcc="214"\r
+      mnc="06"\r
+      apn="internet.euskaltel.mobi"\r
+      user="CLIENTE"\r
+      password="EUSKALTEL"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Internet R"\r
+      mcc="214"\r
+      mnc="06"\r
+      apn="internet.mundo-r.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TeleCable Internet"\r
+      mcc="214"\r
+      mnc="06"\r
+      apn="internet.telecable.es"\r
+      user="telecable"\r
+      password="telecable"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS R"\r
+      mcc="214"\r
+      mnc="06"\r
+      apn="euskaltelmms.euskaltel.mobi"\r
+      mmsc="http://mms.mundo-r.com"\r
+      mmsproxy="10.0.157.169"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TeleCable MMS"\r
+      mcc="214"\r
+      mnc="06"\r
+      apn="mms.telecable.es"\r
+      user="telecable"\r
+      password="telecable"\r
+      mmsc="http://mms.telecable.es/mms/"\r
+      mmsproxy="212.89.0.84"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="MMS Vodafone"\r
+      mcc="214"\r
+      mnc="06"\r
+      apn="mms.vodafone.net"\r
+      user="wap@wap"\r
+      password="wap125"\r
+      mmsc="http://mmsc.vodafone.es/servlets/mms"\r
+      mmsproxy="212.73.32.10"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Movistar MMS"\r
+      mcc="214"\r
+      mnc="07"\r
+      apn="telefonica.es"\r
+      user="telefonica"\r
+      password="telefonica"\r
+      mmsc="http://mms.movistar.com"\r
+      mmsproxy="10.138.255.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Movistar"\r
+      mcc="214"\r
+      mnc="07"\r
+      apn="telefonica.es"\r
+      user="telefonica"\r
+      password="telefonica"\r
+      proxy="10.138.255.133"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The APN for DUN was added (Confirmed by operator) -->\r
+  <apn carrier="Conexin compartida"\r
+      mcc="214"\r
+      mnc="07"\r
+      apn="movistar.es"\r
+      user="MOVISTAR"\r
+      password="MOVISTAR"\r
+      type="dun"\r
+  />\r
+<apn carrier="Movistar MMS"\r
+      mcc="631"\r
+      mnc="04"\r
+      apn="telefonica.es"\r
+      user="telefonica"\r
+      password="telefonica"\r
+      mmsc="http://mms.movistar.com"\r
+      mmsproxy="10.138.255.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Movistar"\r
+      mcc="631"\r
+      mnc="04"\r
+      apn="telefonica.es"\r
+      user="telefonica"\r
+      password="telefonica"\r
+      proxy="10.138.255.133"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The APN for DUN was added (Confirmed by operator) -->\r
+  <apn carrier="Conexin compartida"\r
+      mcc="631"\r
+      mnc="04"\r
+      apn="movistar.es"\r
+      user="MOVISTAR"\r
+      password="MOVISTAR"\r
+      type="dun"\r
+  />\r
+  <apn carrier="Euskaltel MMS"\r
+      mcc="214"\r
+      mnc="08"\r
+      apn="euskaltelmms.euskaltel.mobi"\r
+      user="MMS"\r
+      password="EUSKALTEL"\r
+      mmsc="http://mms.euskaltel.mobi"\r
+      mmsproxy="172.16.18.74"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Euskaltel Internet"\r
+      mcc="214"\r
+      mnc="08"\r
+      apn="internet.euskaltel.mobi"\r
+      user="CLIENTE"\r
+      password="EUSKALTEL"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TeleCable Internet"\r
+      mcc="214"\r
+      mnc="16"\r
+      apn="internet.telecable.es"\r
+      user="telecable"\r
+      password="telecable"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TeleCable MMS"\r
+      mcc="214"\r
+      mnc="16"\r
+      apn="mms.telecable.es"\r
+      user="telecable"\r
+      password="telecable"\r
+      mmsc="http://mms.telecable.es/mms/"\r
+      mmsproxy="212.89.0.84"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Telenor MMS"\r
+      mcc="216"\r
+      mnc="01"\r
+      apn="mms"\r
+      mmsc="http://mmsc.telenor.hu/"\r
+      mmsproxy="84.225.255.1"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Telenor Online"\r
+      mcc="216"\r
+      mnc="01"\r
+      apn="online"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="T-Mobile MMS"\r
+      mcc="216"\r
+      mnc="30"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms.t-mobile.hu/servlets/mms"\r
+      mmsproxy="212.51.126.10"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Web"\r
+      mcc="216"\r
+      mnc="30"\r
+      apn="wnw"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VF internet"\r
+      mcc="216"\r
+      mnc="70"\r
+      apn="internet.vodafone.net"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vodafone MMS"\r
+      mcc="216"\r
+      mnc="70"\r
+      apn="mms.vodafone.net"\r
+      mmsc="http://mms.vodafone.hu/servlets/mms"\r
+      mmsproxy="80.244.97.2"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="VMAX Internet"\r
+      mcc="216"\r
+      mnc="70"\r
+      apn="vitamax.internet.vodafone.net"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The APNs for Bosnia & Herzegovina should be added -->\r
+  <apn carrier="HT Eronet"\r
+      mcc="218"\r
+      mnc="03"\r
+      apn="wap.eronet.ba"\r
+      proxy="010.012.003.010"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The APNs for Bosnia & Herzegovina should be added -->\r
+  <apn carrier="Ht Eronet MMS"\r
+      mcc="218"\r
+      mnc="03"\r
+      apn="mms.eronet.ba"\r
+      mmsc="http://mms.gprs.eronet.ba/mms/wapenc"\r
+      mmsproxy="010.012.003.011"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The APNs for Bosnia & Herzegovina should be added -->\r
+  <apn carrier="m:web Standard"\r
+      mcc="218"\r
+      mnc="05"\r
+      apn="3g1"      \r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="m:tel FREND"\r
+      mcc="218"\r
+      mnc="05"\r
+      apn="mtelfrend"      \r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="FREND Surfaj"\r
+      mcc="218"\r
+      mnc="05"\r
+      apn="mtelfrend"      \r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="m:web 100 MB"\r
+      mcc="218"\r
+      mnc="05"\r
+      apn="3g2"      \r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="m:web 500 MB"\r
+      mcc="218"\r
+      mnc="05"\r
+      apn="3g3"      \r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="m:web 1GB"\r
+      mcc="218"\r
+      mnc="05"\r
+      apn="3g4"      \r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The APNs for Bosnia & Herzegovina should be added -->\r
+  <apn carrier="mtelmms"\r
+      mcc="218"\r
+      mnc="05"\r
+      apn="mtelmms"\r
+      mmsc="http://mmsc.mtel.ba/mms/wapenc"\r
+      mmsproxy="192.168.61.11"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The APNs for Bosnia & Herzegovina should be added -->\r
+  <apn carrier="Bh Mobile"\r
+      mcc="218"\r
+      mnc="90"\r
+      apn="active.bhmobile.ba"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The APNs for Bosnia & Herzegovina should be added -->\r
+  <apn carrier="BHMobileMMS"\r
+      mcc="218"\r
+      mnc="90"\r
+      apn="mms.bhmobile.ba"\r
+      mmsc="http://mms.bhmobile.ba/cmmsc/post"\r
+      mmsproxy="195.222.056.041"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile MMS"\r
+      mcc="219"\r
+      mnc="01"\r
+      apn="mms.htgprs"\r
+      mmsc="http://mms.t-mobile.hr/servlets/mms"\r
+      mmsproxy="10.12.0.4"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile"\r
+      mcc="219"\r
+      mnc="01"\r
+      apn="web.htgprs"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="Tele2"\r
+      mcc="219"\r
+      mnc="02"\r
+      apn="internet.tele2.hr"\r
+      mmsc="http://mmsc.tele2.hr"\r
+      mmsproxy="193.12.40.66"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Broadband"\r
+      mcc="219"\r
+      mnc="10"\r
+      apn="data.vip.hr"\r
+      user="38591"\r
+      password="38591"\r
+      proxy="212.91.99.91"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VIP.mms"\r
+      mcc="219"\r
+      mnc="10"\r
+      apn="mms.vipnet.hr"\r
+      user="38591"\r
+      password="38591"\r
+      mmsc="http://mms.vipnet.hr/servlets/mms"\r
+      mmsproxy="212.91.99.91"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Telenor WAP"\r
+      mcc="220"\r
+      mnc="01"\r
+      apn="internet"\r
+      user="telenor"\r
+      password="gprs"\r
+      proxy="217.65.192.33"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Telenor MMS"\r
+      mcc="220"\r
+      mnc="01"\r
+      apn="mms"\r
+      mmsc="http://mms.telenor.rs/servlets/mms"\r
+      mmsproxy="217.65.192.33"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Telenor is using 220/02 as well (Confirmed by operator) -->\r
+  <apn carrier="Telenor MNE internet"\r
+      mcc="220"\r
+      mnc="02"\r
+      apn="internet"\r
+      user="gprs"\r
+      password="gprs"\r
+      proxy="192.168.246.5"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Telenor is using 220/02 as well (Confirmed by operator) -->\r
+  <apn carrier="Telenor MNE mms"\r
+      mcc="220"\r
+      mnc="02"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mm.vor.telenor.me"\r
+      mmsproxy="192.168.246.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="mt:s wap"\r
+      mcc="220"\r
+      mnc="03"\r
+      apn="gprswap"\r
+      user="mts"\r
+      password="064"\r
+      proxy="172.17.88.198"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="mt:s mms"\r
+      mcc="220"\r
+      mnc="03"\r
+      apn="mms"\r
+      user="mts"\r
+      password="064"\r
+      mmsc="http://mms.mts064.telekom.rs/mms/wapenc"\r
+      mmsproxy="172.17.85.131"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile MMS"\r
+      mcc="220"\r
+      mnc="04"\r
+      apn="mms"\r
+      user="38267"\r
+      password="38267"\r
+      mmsc="http://192.168.180.100/servlets/mms"\r
+      mmsproxy="10.0.5.19"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile Internet"\r
+      mcc="220"\r
+      mnc="04"\r
+      apn="tmcg-wnw"\r
+      user="38267"\r
+      password="38267"\r
+      proxy="10.0.5.19"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vip GPRS"\r
+      mcc="220"\r
+      mnc="05"\r
+      apn="vipmobile"\r
+      user="vipmobile"\r
+      password="vipmobile"\r
+      proxy="212.15.182.82"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vip MMS"\r
+      mcc="220"\r
+      mnc="05"\r
+      apn="vipmobile.mms"\r
+      user="vipmobile"\r
+      password="vipmobile"\r
+      mmsc="http://mmsc.vipmobile.rs"\r
+      mmsproxy="212.15.182.82"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- TIM proxy should be removed  (Confirmed by operator) -->\r
+  <apn carrier="TIM WAP"\r
+      mcc="222"\r
+      mnc="01"\r
+      apn="wap.tim.it"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TIM WEB"\r
+      mcc="222"\r
+      mnc="01"\r
+      apn="ibox.tim.it"\r
+      type="dun"\r
+  />\r
+\r
+  <apn carrier="TIM MMS"\r
+      mcc="222"\r
+      mnc="01"\r
+      apn="unico.tim.it"\r
+      mmsc="http://mms.tim.it/servlets/mms"\r
+      mmsproxy="213.230.130.89"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The apns for Iusacell ("Iusacell Internet" , "Iusacell MMS" was removed  (Confirmed by Italy PM) -->\r
+\r
+  <apn carrier="MMS Vodafone"\r
+      mcc="222"\r
+      mnc="10"\r
+      apn="mms.vodafone.it"\r
+      mmsc="http://mms.vodafone.it/servlets/mms"\r
+      mmsproxy="10.128.224.10"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Acc. Internet da cell"\r
+      mcc="222"\r
+      mnc="10"\r
+      apn="mobile.vodafone.it"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Tethering Internet"\r
+      mcc="222"\r
+      mnc="10"\r
+      apn="web.omnitel.it"\r
+      type="dun"\r
+  />\r
+\r
+  <apn carrier="WIND WEB"\r
+      mcc="222"\r
+      mnc="88"\r
+      apn="internet.wind"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="WIND BIZ WEB"\r
+      mcc="222"\r
+      mnc="88"\r
+      apn="internet.wind.biz"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="WIND MMS"\r
+      mcc="222"\r
+      mnc="88"\r
+      apn="mms.wind"\r
+      mmsc="http://mms.wind.it"\r
+      mmsproxy="212.245.244.100"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="3"\r
+      mcc="222"\r
+      mnc="99"\r
+      apn="tre.it"\r
+      mmsc="http://10.216.59.240:10021/mmsc"\r
+      mmsproxy="62.13.171.3"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Fastweb WEB"\r
+      mcc="222"\r
+      mnc="99"\r
+      apn="apn.fastweb.it"\r
+      mmsc="http://mms.fastweb.it/mms/wapenc"\r
+      mmsproxy="10.0.65.9"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone live!"\r
+      mcc="226"\r
+      mnc="01"\r
+      apn="live.vodafone.com"\r
+      user="live"\r
+      password="vodafone"\r
+      proxy="193.230.161.231"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vodafone live! PRE"\r
+      mcc="226"\r
+      mnc="01"\r
+      apn="live.pre.vodafone.com"\r
+      user="live"\r
+      password="vodafone"\r
+      proxy="193.230.161.231"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vodafone MMS"\r
+      mcc="226"\r
+      mnc="01"\r
+      apn="mms.vodafone.ro"\r
+      user="mms"\r
+      password="vodafone"\r
+      mmsc="http://multimedia/servlets/mms"\r
+      mmsproxy="193.230.161.231"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone MMS PRE"\r
+      mcc="226"\r
+      mnc="01"\r
+      apn="mms.pre.vodafone.ro"\r
+      user="mms"\r
+      password="vodafone"\r
+      mmsc="http://multimedia/servlets/mms"\r
+      mmsproxy="193.230.161.231"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Cosmote Internet"\r
+      mcc="226"\r
+      mnc="03"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Cosmote MMS"\r
+      mcc="226"\r
+      mnc="03"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mmsc1.mms.cosmote.ro:8002"\r
+      mmsproxy="10.252.1.62"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="web'n'walk"\r
+      mcc="226"\r
+      mnc="03"\r
+      apn="wnw"\r
+      user="wnw"\r
+      password="wnw"\r
+      proxy="10.252.1.62"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Cosmote MMS"\r
+      mcc="226"\r
+      mnc="06"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mmsc1.mms.cosmote.ro:8002"\r
+      mmsproxy="10.252.1.62"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="web'n'walk"\r
+      mcc="226"\r
+      mnc="06"\r
+      apn="wnw"\r
+      user="wnw"\r
+      password="wnw"\r
+      proxy="10.252.1.62"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- change value -->\r
+  <apn carrier="Orange MMS"\r
+      mcc="226"\r
+      mnc="10"\r
+      apn="mms"\r
+     user="mms"\r
+     password="mms"\r
+     server=""\r
+     proxy=""\r
+     port=""\r
+      mmsc="http://wap.mms.orange.ro:8002"\r
+      mmsproxy="62.217.247.252"\r
+     mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- change value -->\r
+  <apn carrier="Orange Internet"\r
+      mcc="226"\r
+      mnc="10"\r
+      apn="net"\r
+      user=""\r
+      password=""\r
+      server=""\r
+      proxy=""\r
+      port=""\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Swisscom MMS"\r
+      mcc="228"\r
+      mnc="01"\r
+      apn="event.swisscom.ch"\r
+      mmsc="http://mms.natel.ch:8079"\r
+      mmsproxy="192.168.210.2"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Swisscom Services"\r
+      mcc="228"\r
+      mnc="01"\r
+      apn="gprs.swisscom.ch"\r
+      proxy="192.168.210.1"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Sunrise live"\r
+      mcc="228"\r
+      mnc="02"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Sunrise MMS"\r
+      mcc="228"\r
+      mnc="02"\r
+      apn="mms.sunrise.ch"\r
+      mmsc="http://mmsc.sunrise.ch"\r
+      mmsproxy="212.35.34.75"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change the value -->\r
+  <apn carrier="Orange Internet"\r
+      mcc="228"\r
+      mnc="03"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Orange MMS"\r
+      mcc="228"\r
+      mnc="03"\r
+      apn="mms"\r
+      mmsc="http://192.168.151.3:8002"\r
+      mmsproxy="192.168.151.2"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The apns for CoopMobile should be removed  (Confirmed by Switzerland PM) -->\r
+\r
+  <apn carrier="T-Mobile CZ"\r
+      mcc="230"\r
+      mnc="01"\r
+      apn="internet.t-mobile.cz"\r
+      user="wap"\r
+      password="wap"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="T-Mobile MMS"\r
+      mcc="230"\r
+      mnc="01"\r
+      apn="mms.t-mobile.cz"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms"\r
+      mmsproxy="10.0.0.10"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="O2 internet"\r
+      mcc="230"\r
+      mnc="02"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="O2 MMS"\r
+      mcc="230"\r
+      mnc="02"\r
+      apn="mms"\r
+      mmsc="http://mms.o2active.cz:8002"\r
+      mmsproxy="160.218.160.218"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="GPRS Web"\r
+      mcc="230"\r
+      mnc="03"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="Vodafone MMS"\r
+      mcc="230"\r
+      mnc="03"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms"\r
+      mmsproxy="10.11.10.111"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change values -->\r
+  <apn carrier="Orange SK"\r
+      mcc="231"\r
+      mnc="01"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change values -->\r
+  <apn carrier="Orange SK MMS"\r
+      mcc="231"\r
+      mnc="01"\r
+      apn="mms"\r
+      user="wap"\r
+      password="wap"\r
+      mmsc="http://imms.orange.sk"\r
+      mmsproxy="213.151.208.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Orange World"\r
+      mcc="231"\r
+      mnc="01"\r
+      apn="orangewap"\r
+      user="wap"\r
+      password="wap"\r
+      proxy="213.151.208.156"\r
+      port="8799"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="T-Mobile internet"\r
+      mcc="231"\r
+      mnc="02"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="T-Mobile MMS"\r
+      mcc="231"\r
+      mnc="02"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms"\r
+      mmsproxy="192.168.1.1"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="O2 internet"\r
+      mcc="231"\r
+      mnc="06"\r
+      apn="o2internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="O2 MMS"\r
+      mcc="231"\r
+      mnc="06"\r
+      apn="o2mms"\r
+      mmsc="http://mms.o2world.sk:8002"\r
+      mmsproxy="10.97.1.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="A1"\r
+      mcc="232"\r
+      mnc="01"\r
+      apn="a1.net"\r
+      user="ppp@a1plus.at"\r
+      password="ppp"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="aonMobil"\r
+      mcc="232"\r
+      mnc="01"\r
+      apn="aon.at"\r
+      user="mobil@aon.at"\r
+      password="ppp"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="A1 MMS"\r
+      mcc="232"\r
+      mnc="01"\r
+      apn="free.a1.net"\r
+      user="ppp@a1plus.at"\r
+      password="ppp"\r
+      mmsc="http://mmsc.a1.net"\r
+      mmsproxy="194.48.124.71"\r
+      mmsport="8001"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="aonMobil MMS"\r
+      mcc="232"\r
+      mnc="01"\r
+      apn="mms.aon.at"\r
+      user="mobil@aon.at"\r
+      password="ppp"\r
+      mmsc="http://mmsc.aon.at"\r
+      mmsproxy="194.48.124.134"\r
+      mmsport="8001"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile Internet"\r
+      mcc="232"\r
+      mnc="03"\r
+      apn="gprsinternet"\r
+      user="t-mobile"\r
+      password="tm"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="T-Mobile MMS"\r
+      mcc="232"\r
+      mnc="03"\r
+      apn="gprsmms"\r
+      user="t-mobile"\r
+      password="tm"\r
+      mmsc="http://mmsc.t-mobile.at/servlets/mms"\r
+      mmsproxy="10.12.0.20"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Orange MMS"\r
+      mcc="232"\r
+      mnc="05"\r
+      apn="orange.mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mmsc.orange.at/mms/wapenc"\r
+      mmsproxy="194.24.128.118"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Orange Smartphone"\r
+      mcc="232"\r
+      mnc="05"\r
+      apn="orange.smartphone"\r
+      user="web"\r
+      password="web"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="tele.ring mms"\r
+      mcc="232"\r
+      mnc="07"\r
+      apn="mms"\r
+      user="wap@telering.at"\r
+      password="wap"\r
+      mmsc="http://relay.mms.telering.at"\r
+      mmsproxy="212.95.31.50"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="tele.ring web"\r
+      mcc="232"\r
+      mnc="07"\r
+      apn="web"\r
+      user="web@telering.at"\r
+      password="web"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Planet3"\r
+      mcc="232"\r
+      mnc="10"\r
+      apn="drei.at"\r
+      mmsc="http://mmsc"\r
+      mmsproxy="213.94.78.133"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+\r
+  <apn carrier="data.bob"\r
+      mcc="232"\r
+      mnc="11"\r
+      apn="bob.at"\r
+      user="data@bob.at"\r
+      password="ppp"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="data.bob MMS"\r
+      mcc="232"\r
+      mnc="11"\r
+      apn="mms.bob.at"\r
+      user="data@bob.at"\r
+      password="ppp"\r
+      mmsc="http://mmsc.bob.at"\r
+      mmsproxy="194.48.124.7"\r
+      mmsport="8001"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="YESSS! GPRS"\r
+      mcc="232"\r
+      mnc="12"\r
+      apn="web.yesss.at"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="UBIQUISYS"\r
+      mcc="234"\r
+      mnc="01"\r
+      apn="internet"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+ <apn carrier="O2 MOBILE WEB"\r
+      mcc="234"\r
+      mnc="02"\r
+      apn="mobile.o2.co.uk"\r
+      user="O2web"\r
+      password="O2web"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="O2 MMS Prepay"\r
+      mcc="234"\r
+      mnc="02"\r
+      apn="payandgo.o2.co.uk"\r
+      user="payandgo"\r
+      password="password"\r
+      mmsc="http://mmsc.mms.o2.co.uk:8002"\r
+      mmsproxy="82.132.254.1"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="O2 MMS Postpay"\r
+      mcc="234"\r
+      mnc="02"\r
+      apn="wap.o2.co.uk"\r
+      user="o2wap"\r
+      password="password"\r
+      mmsc="http://mmsc.mms.o2.co.uk:8002"\r
+      mmsproxy="82.132.254.1"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="O2 Mobile Web"\r
+      mcc="234"\r
+      mnc="10"\r
+      apn="mobile.o2.co.uk"\r
+      user="o2web"\r
+      password="password"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- changed the proxy value as O2's request -->\r
+  <apn carrier="O2 MMS"\r
+      mcc="234"\r
+      mnc="10"\r
+      apn="wap.o2.co.uk"\r
+      user="o2wap"\r
+      password="password"\r
+      proxy="193.113.200.195"\r
+      port="8080"\r
+      mmsc="http://mmsc.mms.o2.co.uk:8002"\r
+      mmsproxy="82.132.254.1"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- changed the proxy value as O2's request -->\r
+  <apn carrier="O2 PREPAY"\r
+      mcc="234"\r
+      mnc="10"\r
+      apn="payandgo.o2.co.uk"\r
+      proxy="193.113.200.195"\r
+      port="8080"\r
+      user="payandgo"\r
+      password="password"\r
+      mmsc="http://mmsc.mms.o2.co.uk:8002"\r
+      mmsproxy="82.132.254.1"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="TESCO Mobile"\r
+      mcc="234"\r
+      mnc="10"\r
+      apn="prepay.tesco-mobile.com"\r
+      proxy="193.113.200.195"\r
+      port="8080"\r
+      user="tescowap"\r
+      password="password"\r
+      mmsc="http://mmsc.mms.o2.co.uk:8002"\r
+      mmsproxy="193.113.200.195"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="O2 MOBILE WEB"\r
+      mcc="234"\r
+      mnc="11"\r
+      apn="mobile.o2.co.uk"\r
+      user="O2web"\r
+      password="O2web"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="O2 MMS Prepay"\r
+      mcc="234"\r
+      mnc="11"\r
+      apn="payandgo.o2.co.uk"\r
+      user="payandgo"\r
+      password="password"\r
+      mmsc="http://mmsc.mms.o2.co.uk:8002"\r
+      mmsproxy="82.132.254.1"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="O2 MMS Postpay"\r
+      mcc="234"\r
+      mnc="11"\r
+      apn="wap.o2.co.uk"\r
+      user="o2wap"\r
+      password="password"\r
+      mmsc="http://mmsc.mms.o2.co.uk:8002"\r
+      mmsproxy="82.132.254.1"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <apn carrier="O2 MOBILE WEB"\r
+      mcc="234"\r
+      mnc="11"\r
+      apn="mobile.o2.co.uk"\r
+      user="O2web"\r
+      password="O2web"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="O2 MMS Prepay"\r
+      mcc="234"\r
+      mnc="11"\r
+      apn="payandgo.o2.co.uk"\r
+      user="payandgo"\r
+      password="password"\r
+      mmsc="http://mmsc.mms.02.co.uk:8002"\r
+      mmsproxy="82.132.254.1"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="O2 MMS Postpay"\r
+      mcc="234"\r
+      mnc="11"\r
+      apn="wap.o2.co.uk"\r
+      user="o2wap"\r
+      password="password"\r
+      mmsc="http://mmsc.mms.02.co.uk:8002"\r
+      mmsproxy="82.132.254.1"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Contract Internet"\r
+      mcc="234"\r
+      mnc="15"\r
+      apn="wap.vodafone.co.uk"\r
+      user="wap"\r
+      password="wap"\r
+      mmsc="http://mms.vodafone.co.uk/servlets/mms"\r
+      mmsproxy="212.183.137.12"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone PAYG Internet"\r
+      mcc="234"\r
+      mnc="15"\r
+      apn="pp.vodafone.co.uk"\r
+      user="wap"\r
+      password="wap"\r
+      mmsc="http://mms.vodafone.co.uk/servlets/mms"\r
+      mmsproxy="212.183.137.12"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="BT Mobile Internet"\r
+      mcc="234"\r
+      mnc="15"\r
+      apn="btmobile.bt.com"\r
+      proxy="212.183.137.12"\r
+      port="8799"\r
+      user="bt"\r
+      password="bt"\r
+      mmsc="http://mms.bt.com/servlets/mms"\r
+      mmsproxy="212.183.137.12"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Asda WAP"\r
+      mcc="234"\r
+      mnc="15"\r
+      apn="asdamobiles.co.uk"\r
+      proxy="212.183.137.12"\r
+      port="8799"\r
+      user="wap"\r
+      password="wap"\r
+      mmsc="http://mms.asdamobiles.co.uk/servlets/mms"\r
+      mmsproxy="212.183.137.12"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Talkmob Internet"\r
+      mcc="234"\r
+      mnc="15"\r
+      apn="talkmobile.co.uk"\r
+      user="wap"\r
+      password="wap"\r
+      mmsc="http://mms.talkmobile.co.uk/servlets/mms"\r
+      mmsproxy="212.183.137.12"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Talkmob PAYG Int"\r
+      mcc="234"\r
+      mnc="15"\r
+      apn="payg.talkmobile.co.uk"\r
+      user="wap"\r
+      password="wap"\r
+      mmsc="http://mms.talkmobile.co.uk/servlets/mms"\r
+      mmsproxy="212.183.137.12"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Remove apn value named "3 WAP", Hutchison requirement" -->\r
+\r
+<!-- Samsung edit -->\r
+<!--  Hutchison requirement, Changed mmsproxy from "217.171.129.2" to "mms.three.co.uk" -->\r
+  <apn carrier="3"\r
+      mcc="234"\r
+      mnc="20"\r
+      apn="three.co.uk"\r
+      mmsc="http://mms.um.three.co.uk:10021/mmsc"\r
+      mmsproxy="mms.three.co.uk"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile Internet"\r
+      mcc="234"\r
+      mnc="30"\r
+      apn="general.t-mobile.uk"\r
+      user="t-mobile"\r
+      password="tm"\r
+      mmsc="http://mmsc.t-mobile.co.uk:8002"\r
+      mmsproxy="149.254.201.135"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile Ims"\r
+      mcc="234"\r
+      mnc="30"\r
+      apn="ims"\r
+      type="ims"\r
+      protocol="IPV6"\r
+      roaming_protocol="IPV4"\r
+  />\r
+\r
+  <apn carrier="Virgin Media Mobile Internet"\r
+      mcc="234"\r
+      mnc="30"\r
+      apn="goto.virginmobile.uk"\r
+      user="user"\r
+      mmsc="http://mms.virginmobile.co.uk:8002"\r
+      mmsproxy="193.30.166.2"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile Internet"\r
+      mcc="234"\r
+      mnc="31"\r
+      apn="general.t-mobile.uk"\r
+      user="t-mobile"\r
+      password="tm"\r
+      mmsc="http://mmsc.t-mobile.co.uk:8002"\r
+      mmsproxy="149.254.201.135"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile Ims"\r
+      mcc="234"\r
+      mnc="31"\r
+      apn="ims"\r
+      type="ims"\r
+      protocol="IPV6"\r
+      roaming_protocol="IPV4"\r
+  />\r
+\r
+  <apn carrier="T-Mobile Internet"\r
+      mcc="234"\r
+      mnc="32"\r
+      apn="general.t-mobile.uk"\r
+      user="t-mobile"\r
+      password="tm"\r
+      mmsc="http://mmsc.t-mobile.co.uk:8002"\r
+      mmsproxy="149.254.201.135"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile Ims"\r
+      mcc="234"\r
+      mnc="32"\r
+      apn="ims"\r
+      type="ims"\r
+      protocol="IPV6"\r
+      roaming_protocol="IPV4"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change valuess -->\r
+  <apn carrier="Orange Internet"\r
+      apn="everywhere"\r
+      user="eesecure"\r
+      password="secure"\r
+      mcc="234"\r
+      mnc="33"\r
+      authtype="2"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Orange Ims"\r
+      mcc="234"\r
+      mnc="33"\r
+      apn="ims"\r
+      type="ims"\r
+      protocol="IPV6"\r
+      roaming_protocol="IPV4"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change valuess -->\r
+  <apn carrier="Orange MMS"\r
+      apn="eezone"\r
+      user="eesecure"\r
+      password="secure"\r
+      mmsc="http://mms.orange.co.uk/"\r
+      mmsproxy="192.168.224.10"\r
+      mmsport="8080"\r
+      mcc="234"\r
+      mnc="33"\r
+      authtype="2"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Add new apn -->\r
+  <apn carrier="Orange internet"\r
+      mcc="234"\r
+      mnc="34"\r
+      apn="everywhere"\r
+      user="eesecure"\r
+      password="secure"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Orange MMS"\r
+      mcc="234"\r
+      mnc="34"\r
+      apn="eezone"\r
+      user="eesecure"\r
+      password="secure"\r
+      mmsc="http://mms.orange.co.uk/"\r
+      mmsproxy="192.168.224.10"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Jersey Telecom"\r
+      mcc="234"\r
+      mnc="50"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms.surfmail.com/mmsc"\r
+      mmsproxy="212.9.19.199"\r
+      mmsport="3130"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="pepperWEB (Jersey)"\r
+      mcc="234"\r
+      mnc="50"\r
+      apn="pepper"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="C&amp;W Guernsey Internet"\r
+      mcc="234"\r
+      mnc="55"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Sure Picture Messaging"\r
+      mcc="234"\r
+      mnc="55"\r
+      apn="mms"\r
+      mmsc="http://mmsc.gprs.cw.com/"\r
+      mmsproxy="10.0.3.101"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="3G HSDPA"\r
+      mcc="234"\r
+      mnc="58"\r
+      apn="3gpronto"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Manx Telecom Contract MMS"\r
+      mcc="234"\r
+      mnc="58"\r
+      apn="mms.manxpronto.net"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms.manxpronto.net:8002"\r
+      mmsproxy="195.10.99.46"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Manx Telecom Prepay MMS"\r
+      mcc="234"\r
+      mnc="58"\r
+      apn="mms.prontogo.net"\r
+      user="mmsgo"\r
+      password="mmsgo"\r
+      mmsc="http://mms.manxpronto.net:8002"\r
+      mmsproxy="195.10.99.41"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Manx Telecom Contract WEB"\r
+      mcc="234"\r
+      mnc="58"\r
+      apn="web.manxpronto.net"\r
+      user="gprs"\r
+      password="gprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Orange internet"\r
+      mcc="234"\r
+      mnc="86"\r
+      apn="orangeinternet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Orange MMS"\r
+      mcc="234"\r
+      mnc="86"\r
+      apn="orangemms"\r
+      mmsc="http://mms.orange.co.uk/"\r
+      mmsproxy="192.168.224.10"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Orange Ims"\r
+      mcc="234"\r
+      mnc="86"\r
+      apn="ims"\r
+      type="ims"\r
+      protocol="IPV6"\r
+      roaming_protocol="IPV4"\r
+  />\r
+\r
+  <apn carrier="TDC"\r
+      mcc="238"\r
+      mnc="01"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TDC Song WAP"\r
+      mcc="238"\r
+      mnc="01"\r
+      apn="internet.no"\r
+      proxy="194.182.251.15"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="TDC MMS"\r
+      mcc="238"\r
+      mnc="01"\r
+      apn="mms"\r
+      mmsc="http://mmsc.tdc.dk:8002"\r
+      mmsproxy="194.182.251.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TDC Song MMS"\r
+      mcc="238"\r
+      mnc="01"\r
+      apn="mms.no"\r
+      mmsc="http://mms.tdcmobil.no:8002"\r
+      mmsproxy="194.182.251.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TDC WAP"\r
+      mcc="238"\r
+      mnc="01"\r
+      apn="wap"\r
+      proxy="194.182.251.15"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="Telmore Wap"\r
+      mcc="238"\r
+      mnc="01"\r
+      apn="wap"\r
+      proxy="194.182.251.15"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Telmore MMS"\r
+      mcc="238"\r
+      mnc="01"\r
+      apn="mms"\r
+      mmsc="htp://192.168.241.114:8002"\r
+      mmsproxy="194.182.251.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Telenor Internet"\r
+      mcc="238"\r
+      mnc="02"\r
+      apn="Internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Telenor MMS"\r
+      mcc="238"\r
+      mnc="02"\r
+      apn="telenor"\r
+      mmsc="http://mms.telenor.dk"\r
+      mmsproxy="212.88.64.8"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!--  Hutchison requirement, Changed apn carrier from "3 Locked" to "3" and mmsproxy from "172.16.53.12" to "mmsproxy.3.dk" -->\r
+  <apn carrier="3"\r
+      mcc="238"\r
+      mnc="06"\r
+      apn="data.tre.dk"\r
+      mmsc="http://mms.3.dk/"\r
+      mmsproxy="mmsproxy.3.dk"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="MMS"\r
+      mcc="238"\r
+      mnc="20"\r
+      apn="mmssp"\r
+      mmsc="http://mms.telia.dk"\r
+      mmsproxy="193.209.134.131"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Internet"\r
+      mcc="238"\r
+      mnc="20"\r
+      apn="websp"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Telia Internet"\r
+      mcc="238"\r
+      mnc="20"\r
+      apn="www.internet.mtelia.dk"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Telia MMS"\r
+      mcc="238"\r
+      mnc="20"\r
+      apn="www.mms.mtelia.dk"\r
+      mmsc="http://mms.telia.dk"\r
+      mmsproxy="193.209.134.131"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Telenor Internet"\r
+      mcc="238"\r
+      mnc="77"\r
+      apn="Internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Telenor MMS"\r
+      mcc="238"\r
+      mnc="77"\r
+      apn="telenor"\r
+      mmsc="http://mms.telenor.dk"\r
+      mmsproxy="212.88.64.8"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Telia Internet"\r
+      mcc="240"\r
+      mnc="01"\r
+      apn="online.telia.se"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+  \r
+  <apn carrier="Telia SE MMS"\r
+      mcc="240"\r
+      mnc="01"\r
+      apn="mms.telia.se"\r
+      mmsc="http://mmss/"\r
+      mmsproxy="193.209.134.132"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Halebop Internet"\r
+      mcc="240"\r
+      mnc="017"\r
+      apn="halebop.telia.se"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Halebop MMS"\r
+      mcc="240"\r
+      mnc="017"\r
+      apn="mms.telia.se"\r
+      user="mms"\r
+      password="telia"\r
+      mmsc="http://mmss"\r
+      mmsproxy="193.209.134.132"\r
+      mmsport="9201"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!--  Hutchison requirement, Changed mmsproxy from "172.16.53.11" to "mmsproxy.tre.se" -->\r
+  <apn carrier="3"\r
+      mcc="240"\r
+      mnc="02"\r
+      apn="data.tre.se"\r
+      mmsc="http://mms.tre.se"\r
+      mmsproxy="mmsproxy.tre.se"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Telenor Mobilsurf"\r
+      mcc="240"\r
+      mnc="04"\r
+      apn="services.telenor.se"\r
+      proxy="172.30.253.241"\r
+      port="8799"\r
+      mmsc="http://mms"\r
+      mmsproxy="172.30.253.241"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Telenor Mobilsurf"\r
+      mcc="240"\r
+      mnc="06"\r
+      apn="services.telenor.se"\r
+      proxy="173.30.253.241"\r
+      port="8799"\r
+      mmsc="http://mms"\r
+      mmsproxy="173.30.253.241"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Tele2"\r
+      mcc="240"\r
+      mnc="07"\r
+      apn="4g.tele2.se"\r
+      mmsc="http://mmsc.tele2.se"\r
+      mmsproxy="130.244.202.030"\r
+      mmsport="8080"\r
+      authtype="1"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Telenor Mobilsurf"\r
+      mcc="240"\r
+      mnc="08"\r
+      apn="services.telenor.se"\r
+      mmsc="http://mms"\r
+      mmsproxy="172.30.253.241"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="TelenorMobilsurf"\r
+      mcc="240"\r
+      mnc="09"\r
+      apn="services.telenor.se"\r
+      mmsc="http://mms"\r
+      mmsproxy="173.30.253.241"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Spring data"\r
+      mcc="240"\r
+      mnc="10"\r
+      apn="data.springmobil.se"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Spring MMS"\r
+      mcc="240"\r
+      mnc="10"\r
+      apn="mms.springmobil.se"\r
+      mmsc="http://mms.springmobil.se"\r
+      mmsproxy="213.88.184.37"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Ventelo Internett"\r
+      mcc="242"\r
+      mnc="01"\r
+      apn="internet.ventelo.no"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Ventelo MMS"\r
+      mcc="242"\r
+      mnc="01"\r
+      apn="mms.ventelo.no"\r
+      user="ventelo"\r
+      password="1111"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.10.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Telenor"\r
+      mcc="242"\r
+      mnc="01"\r
+      apn="telenor"\r
+      mmsc="http://mmsc"\r
+      mmsproxy="10.10.10.11"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="NetCom MMS"\r
+      mcc="242"\r
+      mnc="02"\r
+      apn="mms.netcom.no"\r
+      mmsc="http://mm/"\r
+      mmsproxy="212.169.66.4"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="NetCom Internett"\r
+      mcc="242"\r
+      mnc="02"\r
+      apn="wap"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Tele2 Internett"\r
+      mcc="242"\r
+      mnc="04"\r
+      apn="internet.tele2.no"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Tele2 MMS"\r
+      mcc="242"\r
+      mnc="04"\r
+      apn="internet.tele2.no "\r
+      mmsc="http://mmsc.tele2.no"\r
+      mmsproxy="193.12.40.14"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="NwN Internet"\r
+      mcc="242"\r
+      mnc="05"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="NwN MMS"\r
+      mcc="242"\r
+      mnc="05"\r
+      apn="mms"\r
+      mmsc="http://mms.nwn.no"\r
+      mmsproxy="188.149.250.10"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="DNA Internet"\r
+      mcc="244"\r
+      mnc="03"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="DNA MMS"\r
+      mcc="244"\r
+      mnc="03"\r
+      apn="mms"\r
+      mmsc="http://mmsc.dnafinland.fi/"\r
+      mmsproxy="10.1.1.2"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="DNA Internet"\r
+      mcc="244"\r
+      mnc="04"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="DNA MMS"\r
+      mcc="244"\r
+      mnc="04"\r
+      apn="mms"\r
+      user="dna"\r
+      password="mms"\r
+      mmsc="http://mmsc.dnafinland.fi/"\r
+      mmsproxy="10.1.1.2"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Elisa Internet"\r
+      mcc="244"\r
+      mnc="05"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="Elisa MMS"\r
+      mcc="244"\r
+      mnc="05"\r
+      apn="mms"\r
+      mmsc="http://mms.elisa.fi"\r
+      mmsproxy="213.161.41.57"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TDC Internet"\r
+      mcc="244"\r
+      mnc="10"\r
+      apn="internet.song.fi"\r
+      user="song@internet"\r
+      password="songnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TDC MMS"\r
+      mcc="244"\r
+      mnc="10"\r
+      apn="mms.song.fi"\r
+      mmsc="http://mms.song.fi"\r
+      mmsproxy="213.161.41.58"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="DNA Internet"\r
+      mcc="244"\r
+      mnc="12"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="DNA MMS"\r
+      mcc="244"\r
+      mnc="12"\r
+      apn="mms"\r
+      mmsc="http://mmsc.dnafinland.fi/"\r
+      mmsproxy="10.1.1.2"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="DNA Internet"\r
+      mcc="244"\r
+      mnc="13"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="DNA MMS"\r
+      mcc="244"\r
+      mnc="13"\r
+      apn="mms"\r
+      user="dna"\r
+      password="mms"\r
+      mmsc="http://mmsc.dnafinland.fi/"\r
+      mmsproxy="10.1.1.2"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Saunalahti Internet"\r
+      mcc="244"\r
+      mnc="21"\r
+      apn="internet.saunalahti"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Saunalahti MMS"\r
+      mcc="244"\r
+      mnc="21"\r
+      apn="mms.saunalahti.fi"\r
+      mmsc="http://mms.saunalahti.fi:8002/"\r
+      mmsproxy="62.142.4.197"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="SONERA Internet"\r
+      mcc="244"\r
+      mnc="91"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="SONERA MMS"\r
+      mcc="244"\r
+      mnc="91"\r
+      apn="wap.sonera.net"\r
+      mmsc="http://mms.sonera.fi:8002"\r
+      mmsproxy="195.156.25.33"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Omnitel MMS"\r
+      mcc="246"\r
+      mnc="01"\r
+      apn="gprs.mms.lt"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms.omnitel.net:8002/"\r
+      mmsproxy="194.176.32.149"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Omnitel Internet"\r
+      mcc="246"\r
+      mnc="01"\r
+      apn="omnitel"\r
+      user="omni"\r
+      password="omni"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Bite LT MMS"\r
+      mcc="246"\r
+      mnc="02"\r
+      apn="mms"\r
+      user="mms@mms"\r
+      password="mms"\r
+      mmsc="http://mmsc/servlets/mms"\r
+      mmsproxy="192.168.150.2"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Bite LT WAP"\r
+      mcc="246"\r
+      mnc="02"\r
+      apn="wap"\r
+      proxy="213.226.131.133"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Tele2 Internet LT"\r
+      mcc="246"\r
+      mnc="03"\r
+      apn="internet.tele2.lt"\r
+      user="wap"\r
+      password="wap"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Tele2 MMS LT"\r
+      mcc="246"\r
+      mnc="03"\r
+      apn="mms.tele2.lt"\r
+      user="wap"\r
+      password="wap"\r
+      mmsc="http://mmsc.tele2.lt/"\r
+      mmsproxy="193.12.40.29"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="LMT Internet"\r
+      mcc="247"\r
+      mnc="01"\r
+      apn="internet.lmt.lv"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="LMT MMS"\r
+      mcc="247"\r
+      mnc="01"\r
+      apn="mms.lmt.lv"\r
+      mmsc="http://mmsc.lmt.lv/mmsc"\r
+      mmsproxy="212.93.97.201"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Tele2 LV Internet"\r
+      mcc="247"\r
+      mnc="02"\r
+      apn="internet.tele2.lv"\r
+      user="wap"\r
+      password="wap"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Tele2 LV MMS"\r
+      mcc="247"\r
+      mnc="02"\r
+      apn="mms.tele2.lv"\r
+      user="wap"\r
+      password="wap"\r
+      mmsc="http://mmsc.tele2.lv/"\r
+      mmsproxy="193.12.40.38"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Bite LV Internet"\r
+      mcc="247"\r
+      mnc="05"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Bite LV MMS"\r
+      mcc="247"\r
+      mnc="05"\r
+      apn="mms"\r
+      user="mms@mms"\r
+      password="mms"\r
+      mmsc="http://mmsc/servlets/mms"\r
+      mmsproxy="192.168.150.2"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Bite LV WAP"\r
+      mcc="247"\r
+      mnc="05"\r
+      apn="wap"\r
+      proxy="213.226.131.133"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="EMT Internet"\r
+      mcc="248"\r
+      mnc="01"\r
+      apn="internet.emt.ee"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="EMT MMS"\r
+      mcc="248"\r
+      mnc="01"\r
+      apn="mms.emt.ee"\r
+      mmsc="http://mms.emt.ee/servlets/mms"\r
+      mmsproxy="217.71.32.82"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="EMT WAP"\r
+      mcc="248"\r
+      mnc="01"\r
+      apn="wap.emt.ee"\r
+      proxy="217.71.32.236"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Elisa Internet"\r
+      mcc="248"\r
+      mnc="02"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Elisa MMS"\r
+      mcc="248"\r
+      mnc="02"\r
+      apn="mms"\r
+      mmsc="http://194.204.2.10"\r
+      mmsproxy="194.204.2.6"\r
+      mmsport="8000"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Elisa WAP"\r
+      mcc="248"\r
+      mnc="02"\r
+      apn="wap"\r
+      proxy="194.204.2.6"\r
+      port="8000"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Tele2 Internet"\r
+      mcc="248"\r
+      mnc="03"\r
+      apn="internet.tele2.ee"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Tele2 MMS"\r
+      mcc="248"\r
+      mnc="03"\r
+      apn="mms.tele2.ee"\r
+      mmsc="http://mmsc.tele2.ee"\r
+      mmsproxy="193.12.40.6"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+ <apn carrier="MTS Internet"\r
+      mcc="250"\r
+      mnc="01"\r
+      apn="internet.mts.ru"\r
+      user="mts"\r
+      password="mts"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change port number for Russia- MTS -->\r
+  <apn carrier="MTS MMS"\r
+      mcc="250"\r
+      mnc="01"\r
+      apn="mms.mts.ru"\r
+      user="mts"\r
+      password="mts"\r
+      mmsc="http://mmsc"\r
+      mmsproxy="192.168.192.192"\r
+      mmsport="9201"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Megafon Internet"\r
+      mcc="250"\r
+      mnc="02"\r
+      apn="internet"\r
+      user="gdata"\r
+      password="gdata"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Megafon MMS"\r
+      mcc="250"\r
+      mnc="02"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mmsc:8002"\r
+      mmsproxy="10.10.10.10"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Beeline Internet"\r
+      mcc="250"\r
+      mnc="99"\r
+      apn="internet.beeline.ru"\r
+      user="beeline"\r
+      password="beeline"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Beeline MMS"\r
+      mcc="250"\r
+      mnc="99"\r
+      apn="mms.beeline.ru"\r
+      user="beeline"\r
+      password="beeline"\r
+      mmsc="http://mms/"\r
+      mmsproxy="192.168.94.23"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TELE2 Internet"\r
+      mcc="250"\r
+      mnc="20"\r
+      apn="internet.tele2.ru"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TELE2 MMS"\r
+      mcc="250"\r
+      mnc="20"\r
+      apn="mms.tele2.ru"\r
+      mmsc="http://mmsc.tele2.ru"\r
+      mmsproxy="193.12.40.65"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Jeans MMS"\r
+      mcc="255"\r
+      mnc="01"\r
+      apn="mms.jeans.ua"\r
+      mmsc="http://mmsc:8002/"\r
+      mmsproxy="192.168.10.10"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change mmsc value -->\r
+  <apn carrier="MTS MMS"\r
+      mcc="255"\r
+      mnc="01"\r
+      apn="mms"\r
+      mmsc="http://mms/"\r
+      mmsproxy="192.168.10.10"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Remove unused apns (Jeans WAP and MTS WAP -->\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change values -->\r
+  <apn carrier="MTS-internet"\r
+      mcc="255"\r
+      mnc="01"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Beeline-internet"\r
+      mcc="255"\r
+      mnc="02"\r
+      apn="internet.beeline.ua"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Beeline MMS"\r
+      mcc="255"\r
+      mnc="02"\r
+      apn="mms.beeline.ua"\r
+      mmsc="http://mms/"\r
+      mmsproxy="172.29.18.192"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Remove unused apns "Beeline WAP"-->\r
+\r
+  <apn carrier="Djuice MMS"\r
+      mcc="255"\r
+      mnc="03"\r
+      apn="mms.djuice.com.ua"\r
+      user="djuice"\r
+      password="mms"\r
+      mmsc="http://mms.kyivstar.net"\r
+      mmsproxy="10.10.10.10"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Kyivstar MMS"\r
+      mcc="255"\r
+      mnc="03"\r
+      apn="mms.kyivstar.net"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms.kyivstar.net"\r
+      mmsproxy="10.10.10.10"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change values -->\r
+  <apn carrier="Kyivstar Internet"\r
+      mcc="255"\r
+      mnc="03"\r
+      apn="www.kyivstar.net"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Remove unused apns "Djuice WAP" and "Kyivstar WAP"-->\r
+\r
+  <apn carrier="life:) internet"\r
+      mcc="255"\r
+      mnc="06"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="life:) MMS"\r
+      mcc="255"\r
+      mnc="06"\r
+      apn="mms"\r
+      mmsc="http://mms.life.com.ua/cmmsc/post"\r
+      mmsproxy="212.58.162.230"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Remove unused apns "life:) WAP"-->\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change values -->\r
+  <apn carrier="Utel Internet"\r
+      mcc="255"\r
+      mnc="07"\r
+      apn="3g.utel.ua"\r
+      mmsc="http://10.212.1.4/mms/wapenc"\r
+      mmsproxy="10.212.3.148"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Plus Internet"\r
+      mcc="260"\r
+      mnc="01"\r
+      apn="plus"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Plus MMS"\r
+      mcc="260"\r
+      mnc="01"\r
+      apn="mms"\r
+      mmsc="http://mms.plusgsm.pl:8002"\r
+      mmsproxy="212.2.96.16"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Plus MMS is DUPLICATED -->\r
+\r
+<!-- Samsung edit -->\r
+<!-- ERA changed to T-MOBILE  -->\r
+  <apn carrier="T-mobile.pl"\r
+      mcc="260"\r
+      mnc="02"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- apn name "MMS" is change to "mms"  -->\r
+  <apn carrier="T-mobile.pl"\r
+      mcc="260"\r
+      mnc="02"\r
+      apn="mms"\r
+      mmsc="http://mms/servlets/mms"\r
+      mmsproxy="213.158.194.226"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="heyahinternet"\r
+      mcc="260"\r
+      mnc="02"\r
+      apn="heyah.pl"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="heyahmms"\r
+      mcc="260"\r
+      mnc="02"\r
+      apn="heyahmms"\r
+      mmsc="http://mms.heyah.pl/servlets/mms"\r
+      mmsproxy="213.158.194.226"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change value --> \r
+  <apn carrier="Internet"\r
+      apn="internet"\r
+      user="internet"\r
+      password="internet"\r
+      mcc="260"\r
+      mnc="03"\r
+      type="default,supl" \r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change value --> \r
+  <apn carrier="MMS Orange"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms.orange.pl"\r
+      mmsproxy="192.168.6.104"\r
+      mmsport="8080"\r
+      mcc="260"\r
+      mnc="03"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="P4 Internet"\r
+      mcc="260"\r
+      mnc="06"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="P4 MMS"\r
+      mcc="260"\r
+      mnc="06"\r
+      apn="mms"\r
+      mmsc="http://10.10.28.164/mms/wapenc"\r
+      mmsproxy="10.10.25.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <apn carrier="T-Mobile Internet"\r
+      mcc="262"\r
+      mnc="01"\r
+      apn="internet.telekom"\r
+      user="telekom"\r
+      password="telekom"\r
+      mmsc="http://mms.t-mobile.de/servlets/mms"\r
+      mmsproxy="172.28.23.131"\r
+      mmsport="8008"\r
+      authtype="1"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone MMS"\r
+      mcc="262"\r
+      mnc="02"\r
+      apn="event.vodafone.de"\r
+      user="VDF2"\r
+      password="MMS"\r
+      mmsc="http://139.7.24.1/servlets/mms"\r
+      mmsproxy="139.7.29.17"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Internet"\r
+      mcc="262"\r
+      mnc="02"\r
+      apn="web.vodafone.de"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="E-Plus Internet"\r
+      mcc="262"\r
+      mnc="03"\r
+      apn="internet.eplus.de"\r
+      user="eplus"\r
+      password="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="E-Plus MMS"\r
+      mcc="262"\r
+      mnc="03"\r
+      apn="mms.eplus.de"\r
+      user="mms"\r
+      password="eplus"\r
+      mmsc="http://mms/eplus/"\r
+      mmsproxy="212.23.97.153"\r
+      mmsport="5080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="o2 Internet"\r
+      mcc="262"\r
+      mnc="07"\r
+      apn="internet"\r
+      mmsc="http://10.81.0.7:8002"\r
+      mmsproxy="82.113.100.5"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="O2 Ims"\r
+      mcc="262"\r
+      mnc="07"\r
+      apn="ims"\r
+      type="ims"\r
+      protocol="IPV4"\r
+  />\r
+\r
+  <apn carrier="o2 WEB debitel"\r
+      mcc="262"\r
+      mnc="07"\r
+      apn="internet.debitel"\r
+      user="freenet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="debitel-02 MMS"\r
+      mcc="262"\r
+      mnc="07"\r
+      apn="wap.debitel.de"\r
+      user="debitel"\r
+      password="mms"\r
+      mmsc="http://10.81.0.7:8002"\r
+      mmsproxy="193.168.128.127"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- O2 De has prepaid profile, so we added below one -->\r
+  <apn carrier="o2 Internet Prepaid"\r
+      mcc="262"\r
+      mnc="07"\r
+      apn="pinternet.interkom.de"\r
+      proxy="82.113.100.6"\r
+      port="8080"\r
+      mmsc="http://10.81.0.7:8002"\r
+      mmsproxy="82.113.100.6"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+  \r
+  <apn carrier="Vodafone Net2"\r
+      mcc="268"\r
+      mnc="01"\r
+      apn="net2.vodafone.pt"\r
+      user="vodafone"\r
+      password="vodafone"\r
+      proxy="iproxy.vodafone.pt"\r
+      port="80"\r
+      mmsc="http://mms.vodafone.pt/servlets/mms"\r
+      mmsproxy="iproxy.vodafone.pt"\r
+      mmsport="80"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change value --> \r
+  <apn carrier="Optimus Internet"\r
+      mcc="268"\r
+      mnc="03"\r
+      apn="umts"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change value --> \r
+  <apn carrier="Optimus MMS"\r
+      mcc="268"\r
+      mnc="03"\r
+      apn="mms"\r
+      mmsc="http://mmsc:10021/mmsc"\r
+      mmsproxy="62.169.66.1"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="tmn internet"\r
+      mcc="268"\r
+      mnc="06"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="mms tmn"\r
+      mcc="268"\r
+      mnc="06"\r
+      apn="mmsc.tmn.pt"\r
+      user="tmn"\r
+      password="tmnnet"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.111.2.16"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="LUXGSM MMS"\r
+      mcc="270"\r
+      mnc="01"\r
+      apn="mms.pt.lu"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mmsc.pt.lu"\r
+      mmsproxy="194.154.192.88"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="LUXGSM WAP"\r
+      mcc="270"\r
+      mnc="01"\r
+      apn="wap.pt.lu"\r
+      user="wap"\r
+      password="wap"\r
+      proxy="194.154.192.98"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Tango WAP"\r
+      mcc="270"\r
+      mnc="77"\r
+      apn="internet"\r
+      user="tango"\r
+      password="tango"\r
+      proxy="130.244.196.90"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Tango MMS"\r
+      mcc="270"\r
+      mnc="77"\r
+      apn="mms"\r
+      user="tango"\r
+      password="tango"\r
+      mmsc="http://mms.tango.lu"\r
+      mmsproxy="212.66.75.3"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vox Mobile"\r
+      mcc="270"\r
+      mnc="99"\r
+      apn="vox.lu"\r
+      mmsc="http://mms.vox.lu"\r
+      mmsproxy="212.88.139.44"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone IE"\r
+      mcc="272"\r
+      mnc="01"\r
+      proxy="10.24.59.100"\r
+      port="80"\r
+      apn="live.vodafone.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vodafone IE-MMS"\r
+      mcc="272"\r
+      mnc="01"\r
+      apn="mms.vodafone.net"\r
+      mmsc="http://www.vodafone.ie/mms"\r
+      mmsproxy="10.24.59.200"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <apn carrier="O2 Ireland"\r
+      mcc="272"\r
+      mnc="02"\r
+      apn="internet"\r
+      mmsc="http://mmsc.mms.o2.ie:8002"\r
+      mmsproxy="62.40.32.40"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Meteor Data"\r
+      mcc="272"\r
+      mnc="03"\r
+      apn="data.mymeteor.ie"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Meteor MMS"\r
+      mcc="272"\r
+      mnc="03"\r
+      apn="mms.mymeteor.ie"\r
+      user="my"\r
+      password="wap"\r
+      mmsc="http://mms.mymeteor.ie"\r
+      mmsproxy="10.85.85.85"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="3 Ireland"\r
+      mcc="272"\r
+      mnc="05"\r
+      apn="3ireland.ie"\r
+      user="user"\r
+      mmsc="http://mms.um.3ireland.ie:10021/mmsc"\r
+      mmsproxy="217.171.129.2"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Tesco Mobile Internet"\r
+      mcc="272"\r
+      mnc="11"\r
+      proxy="10.1.11.19"\r
+      port="8080"\r
+      apn="tescomobile.liffeytelecom.com"\r
+      mmsc="http://10.1.11.68/servlets/mms"\r
+      mmsproxy="10.1.11.19"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Siminn Internet"\r
+      mcc="274"\r
+      mnc="01"\r
+      apn="internet"\r
+      proxy="213.167.138.200"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Siminn MMS"\r
+      mcc="274"\r
+      mnc="01"\r
+      apn="mms.simi.is"\r
+      mmsc="http://mms.simi.is/servlets/mms"\r
+      mmsproxy="213.167.138.200"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Internet"\r
+      mcc="274"\r
+      mnc="02"\r
+      apn="gprs.is"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vodafone MMS"\r
+      mcc="274"\r
+      mnc="02"\r
+      apn="mms.gprs.is"\r
+      mmsc="http://mmsc.vodafone.is"\r
+      mmsproxy="10.22.0.10"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="MMS Nova"\r
+      mcc="274"\r
+      mnc="11"\r
+      apn="mms.nova.is"\r
+      mmsc="http://mmsc.nova.is"\r
+      mmsproxy="10.10.2.60"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Net Nova"\r
+      mcc="274"\r
+      mnc="11"\r
+      apn="net.nova.is"\r
+      proxy="10.10.2.60"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+<apn carrier="Vodafone MT"\r
+      mcc="278"\r
+      mnc="01"\r
+      apn="internet"\r
+      user="internet"\r
+      password="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vodafone MT-MMS"\r
+      mcc="278"\r
+      mnc="01"\r
+      apn="mms.vodafone.com.mt"\r
+      mmsc="http://mms.vodafone.com.mt/servlets/mms"\r
+      mmsproxy="10.12.0.3"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CYTA"\r
+      mcc="280"\r
+      mnc="01"\r
+      apn="cytamobile"\r
+      user="user"\r
+      password="pass"\r
+      mmsc="http://mmsc.cyta.com.cy"\r
+      mmsproxy="212.31.96.161"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="MTN MMS"\r
+      mcc="280"\r
+      mnc="10"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms.mtn.com.cy/mmsc"\r
+      mmsproxy="172.24.97.1"\r
+      mmsport="3130"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="MTN Wap"\r
+      mcc="280"\r
+      mnc="10"\r
+      apn="wap"\r
+      user="wap"\r
+      password="wap"\r
+      proxy="172.24.97.3"\r
+      port="3130"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The APN for M-Tel should be changed (Confirmed by operator) -->\r
+  <apn carrier="M-Tel"\r
+      mcc="284"\r
+      mnc="01"\r
+      apn="wap-gprs.mtel.bg"\r
+      proxy="213.226.006.065"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The APN for M-Tel should be changed (Confirmed by operator) -->\r
+  <apn carrier="M-Tel MMS"\r
+      mcc="284"\r
+      mnc="01"\r
+      apn="mms-gprs.mtel.bg"\r
+      user="mtel"\r
+      password="mtel"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.150.0.33"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The APN for Vivacom should be added (Confirmed by operator) -->\r
+    <apn carrier="Vivacom WAP"\r
+      mcc="284"\r
+      mnc="03"\r
+      apn="wap.vivacom.bg"\r
+      user="wap"\r
+      password="wap"\r
+      proxy="192.168.123.123"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The APN for Vivacom should be added (Confirmed by operator) -->\r
+  <apn carrier="Vivacom MMS"\r
+      mcc="284"\r
+      mnc="03"\r
+      apn="mms.vivacom.bg"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mmsc.vivacom.bg"\r
+      mmsproxy="192.168.123.123"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="GPRS GLOBUL"\r
+      mcc="284"\r
+      mnc="05"\r
+      apn="globul"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="GLOBUL MMS GPRS"\r
+      mcc="284"\r
+      mnc="05"\r
+      apn="mms.globul.bg"\r
+      user="mms"\r
+      mmsc="http://mmsc1.mms.globul.bg:8002"\r
+      mmsproxy="192.168.87.11"\r
+      mmsport="8004"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Turkcell Internet"\r
+      mcc="286"\r
+      mnc="01"\r
+      apn="internet"\r
+      user="gprs"\r
+      password="gprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Turkcell MMS"\r
+      mcc="286"\r
+      mnc="01"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms.turkcell.com.tr/servlets/mms"\r
+      mmsproxy="212.252.169.217"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Internet"\r
+      mcc="286"\r
+      mnc="02"\r
+      apn="internet"\r
+      user="vodafone"\r
+      password="vodafone"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vodafone MMS"\r
+      mcc="286"\r
+      mnc="02"\r
+      apn="mms"\r
+      mmsc="http://217.31.233.18:6001/MM1Servlet"\r
+      mmsproxy="217.31.233.18"\r
+      mmsport="9401"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Avea Internet"\r
+      mcc="286"\r
+      mnc="03"\r
+      apn="internet"\r
+      user="wap"\r
+      password="wap"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Avea MMS"\r
+      mcc="286"\r
+      mnc="03"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms.avea.com.tr/servlets/mms"\r
+      mmsproxy="213.161.151.201"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Tele Internet"\r
+      mcc="290"\r
+      mnc="01"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Tele MMS"\r
+      mcc="290"\r
+      mnc="01"\r
+      apn="mms"\r
+      mmsc="http://mms.tele.gl/mms/wapenc"\r
+      mmsproxy="10.112.222.37"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone live!"\r
+      mcc="293"\r
+      mnc="40"\r
+      apn="internet.simobil.si"\r
+      user="simobil"\r
+      password="internet"\r
+      proxy="80.95.224.17"\r
+      port="9201"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Si.mobil MMS"\r
+      mcc="293"\r
+      mnc="40"\r
+      apn="mms.simobil.si"\r
+      user="simobil"\r
+      password="internet"\r
+      mmsc="http://mmc"\r
+      mmsproxy="80.95.224.46"\r
+      mmsport="9201"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Planet"\r
+      mcc="293"\r
+      mnc="41"\r
+      apn="internet"\r
+      user="mobitel"\r
+      password="internet"\r
+      proxy="213.229.249.40"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Mobitel MMS"\r
+      mcc="293"\r
+      mnc="41"\r
+      apn="internet"\r
+      user="mobitel"\r
+      password="internet"\r
+      mmsc="http://mms.mobitel.si/servlets/mms"\r
+      mmsproxy="213.229.249.40"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile MK Internet"\r
+      mcc="294"\r
+      mnc="01"\r
+      apn="internet"\r
+      user="internet"\r
+      password="t-mobile"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="T-Mobile MK MMS"\r
+      mcc="294"\r
+      mnc="01"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms.t-mobile.com.mk"\r
+      mmsproxy="62.162.155.227"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Cosmofon should be added (Confirmed by operator) -->\r
+   <apn carrier="Cosmofon"\r
+      mcc="294"\r
+      mnc="02"\r
+      apn="Internet"\r
+      user="Internet"\r
+      password="Internet"\r
+      proxy="http://wap.planet.mk"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Cosmofon should be added (Confirmed by operator) -->\r
+  <apn carrier="Cosmofon MMS"\r
+      mcc="294"\r
+      mnc="02"\r
+      apn="mms"\r
+      mmsc="http://195.167.65.220:8002"\r
+      mmsproxy="10.010.010.020"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Internet"\r
+      mcc="294"\r
+      mnc="03"\r
+      apn="vipoperator"\r
+      user="vipoperator"\r
+      password="vipoperator"\r
+      proxy="78.40.0.1"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS"\r
+      mcc="294"\r
+      mnc="03"\r
+      apn="vipoperator.mms"\r
+      user="vipoperator"\r
+      password="vipoperator"\r
+      mmsc="http://mmsc.vipoperator.com.mk"\r
+      mmsproxy="78.40.0.1"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile MMS"\r
+      mcc="297"\r
+      mnc="02"\r
+      apn="mms"\r
+      user="38267"\r
+      password="38267"\r
+      mmsc="http://192.168.180.100/servlets/mms"\r
+      mmsproxy="10.0.5.19"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile Internet"\r
+      mcc="297"\r
+      mnc="02"\r
+      apn="tmcg-wnw"\r
+      user="38267"\r
+      password="38267"\r
+      proxy="10.0.5.19"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TELUS ISP"\r
+      mcc="302"\r
+      mnc="220"\r
+      apn="isp.telus.com"\r
+      type="dun"\r
+  />\r
+\r
+  <apn carrier="TELUS SP"\r
+      mcc="302"\r
+      mnc="220"\r
+      apn="sp.telus.com"\r
+      mmsc="http://aliasredirect.net/proxy/mmsc"\r
+      mmsproxy="74.49.0.18"\r
+      mmsport="80"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Koodo SP"\r
+      mcc="302"\r
+      mnc="220"\r
+      apn="sp.koodo.com"\r
+      proxy="74.49.0.18"\r
+      port="80"\r
+      mmsc="http://aliasredirect.net/proxy/koodo/mmsc"\r
+      mmsproxy="74.49.0.18"\r
+      mmsport="80"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- A Telus apn is added. -->\r
+\r
+  <apn carrier="Tethered Mobile Internet"\r
+      mcc="302"\r
+      mnc="220"\r
+      apn="isp.mb.com"\r
+      type="dun"\r
+  />\r
+\r
+  <apn carrier="Mobile Internet"\r
+      mcc="302"\r
+      mnc="220"\r
+      apn="sp.mb.com"\r
+      mmsc="http://aliasredirect.net/proxy/mb/mmsc"\r
+      mmsproxy="74.49.0.18"\r
+      mmsport="80"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Tethered Mobile Internet"\r
+      mcc="302"\r
+      mnc="221"\r
+      apn="isp.mb.com"\r
+      type="dun"\r
+  />\r
+\r
+  <apn carrier="Mobile Internet"\r
+      mcc="302"\r
+      mnc="221"\r
+      apn="sp.mb.com"\r
+      mmsc="http://aliasredirect.net/proxy/mb/mmsc"\r
+      mmsproxy="74.49.0.18"\r
+      mmsport="80"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Eastlink Internet"\r
+      mcc="302"\r
+      mnc="270"\r
+      apn="wisp.mobi.eastlink.ca"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Eastlink MMS"\r
+      mcc="302"\r
+      mnc="270"\r
+      apn="mms.mobi.eastlink.ca"\r
+      mmsc="http://mmss.mobi.eastlink.ca"\r
+      mmsproxy="10.232.12.49"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="MOWAP"\r
+      mcc="302"\r
+      mnc="320"\r
+      apn="wap.davewireless.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MOMMS"\r
+      mcc="302"\r
+      mnc="320"\r
+      apn="mms.davewireless.com"\r
+      mmsc="http://mms.mobilicity.net"\r
+      mmsproxy="10.100.3.4"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <apn carrier="Fido LTE"\r
+      mcc="302"\r
+      mnc="370"\r
+      apn="ltemobile.apn"\r
+      mmsc="http://mms.fido.ca"\r
+      mmsproxy="mmsproxy.fido.ca"\r
+      mmsport="80"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="LTE Tethering"\r
+      mcc="302"\r
+      mnc="370"\r
+      apn="ltedata.apn"\r
+      type="dun"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- A Rogers apn is added. -->\r
+\r
+  <apn carrier="MTS Tethering"\r
+      mcc="302"\r
+      mnc="370"\r
+      apn="internet.mts"\r
+      type="dun"\r
+  />\r
+\r
+  <apn carrier="MTS Internet"\r
+      mcc="302"\r
+      mnc="370"\r
+      apn="sp.mts"\r
+      mmsc="http://mmsc2.mts.net/"\r
+      mmsproxy="wapgw1.mts.net"\r
+      mmsport="9201"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Wind CA"\r
+      mcc="302"\r
+      mnc="490"\r
+      apn="internet.windmobile.ca"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Wind CA MMS"\r
+      mcc="302"\r
+      mnc="490"\r
+      apn="mms.windmobile.ca"\r
+      mmsc="http://mms.windmobile.ca"\r
+      mmsproxy="74.115.197.70"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videotron"\r
+      mcc="302"\r
+      mnc="500"\r
+      apn="media.videotron"\r
+      mmsc="http://media.videotron.com"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Bell Internet"\r
+      mcc="302"\r
+      mnc="610"\r
+      apn="pda.bell.ca"\r
+      mmsc="http://mms.bell.ca/mms/wapenc"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="MTS Tethering"\r
+      mcc="302"\r
+      mnc="660"\r
+      apn="internet.mts"\r
+      type="dun"\r
+  />\r
+\r
+  <apn carrier="MTS Internet"\r
+      mcc="302"\r
+      mnc="660"\r
+      apn="sp.mts"\r
+      mmsc="http://mmsc2.mts.net/"\r
+      mmsproxy="wapgw1.mts.net"\r
+      mmsport="9201"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="LTE Tethering"\r
+      mcc="302"\r
+      mnc="720"\r
+      apn="ltedata.apn"\r
+      type="dun"\r
+  />\r
+\r
+  <apn carrier="Rogers LTE"\r
+      mcc="302"\r
+      mnc="720"\r
+      apn="ltemobile.apn"\r
+      mmsc="http://mms.gprs.rogers.com"\r
+      mmsproxy="mmsproxy.rogers.com"\r
+      mmsport="80"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="chatr-Internet"\r
+      mcc="302"\r
+      mnc="720"\r
+      apn="chatrweb.apn"\r
+      mmsc="http://mms.chatrwireless.com"\r
+      mmsproxy="205.151.11.11"\r
+      mmsport="80"\r
+      type="default,mms"\r
+  />\r
+\r
+  <apn carrier="Cityfone Tethering"\r
+      mcc="302"\r
+      mnc="720"\r
+      apn="ltedata.apn"\r
+      type="dun"\r
+  />\r
+\r
+  <apn carrier="Cityfone Internet"\r
+      mcc="302"\r
+      mnc="720"\r
+      apn="ltemobile.apn"\r
+      mmsc="http://mms.gprs.rogers.com"\r
+      mmsproxy="mmsproxy.rogers.com"\r
+      mmsport="80"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Tbaytel Tethering"\r
+      mcc="302"\r
+      mnc="720"\r
+      apn="ltedata.apn"\r
+      type="dun"\r
+  />\r
+\r
+  <apn carrier="Tbaytel Internet"\r
+      mcc="302"\r
+      mnc="720"\r
+      apn="ltemobile.apn"\r
+      mmsc="http://mms.gprs.rogers.com"\r
+      mmsproxy="mmsproxy.rogers.com"\r
+      mmsport="80"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="SaskTel"\r
+      mcc="302"\r
+      mnc="780"\r
+      apn="pda.stm.sk.ca"\r
+      mmsc="http://mms.sasktel.com"\r
+      mmsproxy="mig.sasktel.com"\r
+      mmsport="80"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="myBlue Pix"\r
+      mcc="310"\r
+      mnc="030"\r
+      apn="mmswap.centennialwireless.com"\r
+      mmsc="http://mms.myblue.com/servlets/mms"\r
+      mmsproxy="63.99.231.135"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Internet"\r
+      mcc="310"\r
+      mnc="030"\r
+      apn="private.centennialwireless.com"\r
+      user="privuser"\r
+      password="priv"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CorrMMS"\r
+      mcc="310"\r
+      mnc="080"\r
+      apn="corrmms"\r
+      mmsc="http://mms.iot1.com/corr/mms.php"\r
+      mmsproxy="66.255.55.23"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Internet"\r
+      mcc="310"\r
+      mnc="090"\r
+      apn="isp"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS"\r
+      mcc="310"\r
+      mnc="090"\r
+      apn="mms"\r
+      mmsc="http://mms.edgemobile.net/mmsc"\r
+      mmsproxy="12.108.12.13"\r
+      mmsport="3128"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Edge MMS Prepay"\r
+      mcc="310"\r
+      mnc="090"\r
+      apn="ppmms"\r
+      mmsc="http://mms.edgemobile.net/mmsc"\r
+      mmsproxy="12.108.12.13"\r
+      mmsport="3128"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="PLAT-OTA-MMS"\r
+      mcc="310"\r
+      mnc="100"\r
+      apn="plateaumms"\r
+      password="mmsc"\r
+      mmsc="208.254.124.11:8514"\r
+      mmsproxy="208.254.124.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="PLATWEB"\r
+      mcc="310"\r
+      mnc="100"\r
+      apn="plateauweb"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="My Multi Media"\r
+      mcc="310"\r
+      mnc="130"\r
+      apn="mms.c1.ama"\r
+      user="cell1mms"\r
+      password="cell1"\r
+      mmsc="http://mms.iot1.com/amarillo/mms.php"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile US 160"\r
+      mcc="310"\r
+      mnc="160"\r
+      apn="epc.tmobile.com"\r
+      mmsc="http://mms.msg.eng.t-mobile.com/mms/wapenc"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="DataConnect"\r
+      mcc="310"\r
+      mnc="170"\r
+      apn="isp.cingular"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Cingular MMS"\r
+      mcc="310"\r
+      mnc="170"\r
+      apn="wap.cingular"\r
+      user="WAP@CINGULARGPRS.COM"\r
+      password="CINGULAR1"\r
+      mmsc="http://mmsc.cingular.com"\r
+      mmsproxy="66.209.11.32"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile US 200"\r
+      mcc="310"\r
+      mnc="200"\r
+      apn="epc.tmobile.com"\r
+      mmsc="http://mms.msg.eng.t-mobile.com/mms/wapenc"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile US 210"\r
+      mcc="310"\r
+      mnc="210"\r
+      apn="epc.tmobile.com"\r
+      mmsc="http://mms.msg.eng.t-mobile.com/mms/wapenc"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile US 220"\r
+      mcc="310"\r
+      mnc="220"\r
+      apn="epc.tmobile.com"\r
+      mmsc="http://mms.msg.eng.t-mobile.com/mms/wapenc"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile US 230"\r
+      mcc="310"\r
+      mnc="230"\r
+      apn="epc.tmobile.com"\r
+      mmsc="http://mms.msg.eng.t-mobile.com/mms/wapenc"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile US 240"\r
+      mcc="310"\r
+      mnc="240"\r
+      apn="epc.tmobile.com"\r
+      mmsc="http://mms.msg.eng.t-mobile.com/mms/wapenc"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile US 250"\r
+      mcc="310"\r
+      mnc="250"\r
+      apn="epc.tmobile.com"\r
+      mmsc="http://mms.msg.eng.t-mobile.com/mms/wapenc"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile US"\r
+      mcc="310"\r
+      mnc="260"\r
+      apn="epc.tmobile.com"\r
+      mmsc="http://mms.msg.eng.t-mobile.com/mms/wapenc"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile US 270"\r
+      mcc="310"\r
+      mnc="270"\r
+      apn="epc.tmobile.com"\r
+      mmsc="http://mms.msg.eng.t-mobile.com/mms/wapenc"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile US 310"\r
+      mcc="310"\r
+      mnc="310"\r
+      apn="epc.tmobile.com"\r
+      mmsc="http://mms.msg.eng.t-mobile.com/mms/wapenc"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Cingular 380 ATT"\r
+      mcc="310"\r
+      mnc="380"\r
+      apn="proxy"\r
+      mmsc="http://mmsc.cingular.com/"\r
+      mmsproxy="wireless.cingular.com"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="AWS MMS"\r
+      mcc="310"\r
+      mnc="380"\r
+      apn="proxy"\r
+      mmsc="http://mmsc.mymmode.com"\r
+      mmsproxy="10.250.250.55"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Celloneet MMS"\r
+      mcc="310"\r
+      mnc="390"\r
+      apn="mms.celloneet.com"\r
+      user="user1@mms.celloneet.com"\r
+      password="celloneet"\r
+      mmsc="http://mms.celloneet.com/servlets/mms"\r
+      mmsproxy="63.99.231.135"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+  <apn carrier="Cingular 410"\r
+      mcc="310"\r
+      mnc="410"\r
+      apn="wap.cingular"\r
+      user="WAP@CINGULARGPRS.COM"\r
+      password="CINGULAR1"\r
+      server="cingulargprs.com"\r
+      mmsc="http://mmsc.cingular.com/"\r
+      mmsproxy="wireless.cingular.com"\r
+      type="default,supl,mms"\r
+  />\r
+  <apn carrier="CBW MMS"\r
+      mcc="310"\r
+      mnc="420"\r
+      apn="wap.gocbw.com"\r
+      mmsc="http://mms.gocbw.com:8088/mms"\r
+      mmsproxy="216.68.79.202"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="DataConnect"\r
+      mcc="310"\r
+      mnc="470"\r
+      apn="isp.cingular"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MediaNet"\r
+      mcc="310"\r
+      mnc="470"\r
+      apn="wap.cingular"\r
+      user="WAP@CINGULARGPRS.COM"\r
+      password="CINGULAR1"\r
+      mmsc="http://mmsc.cingular.com"\r
+      mmsproxy="66.209.11.32"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="DataConnect"\r
+      mcc="310"\r
+      mnc="480"\r
+      apn="isp.cingular"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MediaNet"\r
+      mcc="310"\r
+      mnc="480"\r
+      apn="wap.cingular"\r
+      user="WAP@CINGULARGPRS.COM"\r
+      password="CINGULAR1"\r
+      mmsc="http://mmsc.cingular.com"\r
+      mmsproxy="66.209.11.32"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile US 490"\r
+      mcc="310"\r
+      mnc="490"\r
+      apn="epc.tmobile.com"\r
+      mmsc="http://mms.msg.eng.t-mobile.com/mms/wapenc"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="GoodCall Picture Message"\r
+      mcc="310"\r
+      mnc="490"\r
+      apn="good.call"\r
+      mmsc="http://mms.suncom.net:8088/mms"\r
+      mmsproxy="66.150.33.125"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Suncom MMS"\r
+      mcc="310"\r
+      mnc="490"\r
+      apn="mms"\r
+      mmsc="http://mms.suncom.net:8088/mms"\r
+      mmsproxy="66.150.33.125"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="DobsonMMS"\r
+      mcc="310"\r
+      mnc="560"\r
+      apn="dobsoncellularwap"\r
+      mmsc="http://mmsc"\r
+      mmsproxy="172.23.1.252"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="ChinookMMS"\r
+      mcc="310"\r
+      mnc="570"\r
+      apn="wapgw.chinookwireless.net"\r
+      mmsc="http://mms.cellonenation.net/mms/"\r
+      mmsproxy="204.181.155.195"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile US 580"\r
+      mcc="310"\r
+      mnc="580"\r
+      apn="epc.tmobile.com"\r
+      mmsc="http://mms.msg.eng.t-mobile.com/mms/wapenc"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="CellularOne MMS"\r
+      mcc="310"\r
+      mnc="590"\r
+      apn="cellular1wap"\r
+      mmsc="http://mmsc"\r
+      mmsproxy="172.23.1.252"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="EpicINT"\r
+      mcc="310"\r
+      mnc="610"\r
+      apn="internet.epictouch"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="EpicMMS"\r
+      mcc="310"\r
+      mnc="610"\r
+      apn="mms.epictouch"\r
+      mmsc="http://mmsc.westlinkcom.com/servlets/mms"\r
+      mmsproxy="63.99.231.135"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile US 660"\r
+      mcc="310"\r
+      mnc="660"\r
+      apn="epc.tmobile.com"\r
+      mmsc="http://mms.msg.eng.t-mobile.com/mms/wapenc"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="WEB 2"\r
+      mcc="310"\r
+      mnc="770"\r
+      apn="i2.iwireless.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Picture Messaging"\r
+      mcc="310"\r
+      mnc="770"\r
+      apn="wap1.iwireless.com"\r
+      mmsc="http://mmsc.iwireless.dataonair.net:6672"\r
+      mmsproxy="209.4.229.31"\r
+      mmsport="9401"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="PIAPicture Messaging"\r
+      mcc="310"\r
+      mnc="770"\r
+      apn="wap9.iwireless.com"\r
+      mmsc="http://mmsc.iwireless.dataonair.net:6672"\r
+      mmsproxy="209.4.229.32"\r
+      mmsport="9401"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="T-Mobile US 800"\r
+      mcc="310"\r
+      mnc="800"\r
+      apn="epc.tmobile.com"\r
+      mmsc="http://mms.msg.eng.t-mobile.com/mms/wapenc"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Internet"\r
+      mcc="310"\r
+      mnc="840"\r
+      apn="isp"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS"\r
+      mcc="310"\r
+      mnc="840"\r
+      apn="mms"\r
+      mmsc="http://mms.edgemobile.net/mmsc"\r
+      mmsproxy="12.108.12.13"\r
+      mmsport="3128"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Edge MMS Prepay"\r
+      mcc="310"\r
+      mnc="840"\r
+      apn="ppmms"\r
+      mmsc="http://mms.edgemobile.net/mmsc"\r
+      mmsproxy="12.108.12.13"\r
+      mmsport="3128"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="DTC MMS"\r
+      mcc="310"\r
+      mnc="880"\r
+      apn="mms.adv.com"\r
+      mmsc="http://mms.iot1.com/advantage/mms.php"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="WOW_WAP"\r
+      mcc="310"\r
+      mnc="910"\r
+      apn="wap.firstcellular.com"\r
+      mmsc="mms.firstcellular.net/mmsc"\r
+      mmsproxy="10.101.1.5"\r
+      mmsport="3128"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="MMS"\r
+      mcc="311"\r
+      mnc="190"\r
+      apn="wap.cellular1.net"\r
+      mmsc="http://mms.cellular1.net/ecit/mms.php"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Farmers GPRS"\r
+      mcc="311"\r
+      mnc="210"\r
+      apn="internet.farmerswireless.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Farmers MMS"\r
+      mcc="311"\r
+      mnc="210"\r
+      apn="mms.farmers.com"\r
+      mmsc="172.16.0.37:8514"\r
+      type="mms"\r
+  />\r
+\r
+  <!--Start(1): Latin America-->\r
+  <apn carrier="INTERNET CLARO"\r
+      mcc="330"\r
+      mnc="110"\r
+      apn="internet.claropr.com"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS CLARO"\r
+      mcc="330"\r
+      mnc="110"\r
+      apn="mms.claropr.com"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.50.38.3"\r
+      mmsport="8799"\r
+      mmsc="http://mmsg.claropr.com:10021/mmsc"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <apn carrier="Internet"\r
+      mcc="334"\r
+      mnc="020"\r
+      apn="internet.itelcel.com"\r
+      user="webgprs"\r
+      password="webgprs2002"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="Mensajes Multimedia"\r
+      mcc="334"\r
+      mnc="020"\r
+      apn="mms.itelcel.com"\r
+      user="mmsgprs"\r
+      password="mmsgprs2003"\r
+      mmsc="http://mms.itelcel.com/servlets/mms"\r
+      mmsproxy="148.233.151.240"\r
+      mmsport="8080"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Movistar INTERNET"\r
+      mcc="334"\r
+      mnc="03"\r
+      apn="internet.movistar.mx"\r
+      user="movistar"\r
+      password="movistar"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Movistar MMS"\r
+      mcc="334"\r
+      mnc="03"\r
+      apn="mms.movistar.mx"\r
+      user="movistar"\r
+      password="movistar"\r
+      mmsc="http://mms.movistar.mx"\r
+      mmsproxy="10.2.20.1"\r
+      mmsport="80"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Movistar INTERNET" \r
+      mcc="334"\r
+      mnc="030"\r
+      apn="internet.movistar.mx"\r
+      user="movistar"\r
+      password="movistar"\r
+      authtype="1"\r
+      type="default,supl" \r
+  />\r
+\r
+  <apn carrier="Movistar MMS"\r
+      mcc="334"\r
+      mnc="030"\r
+      apn="mms.movistar.mx"\r
+      user="movistar"\r
+      password="movistar"\r
+      mmsc="http://mms.movistar.mx"\r
+      mmsproxy="10.2.20.1"\r
+      mmsport="80"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Iusacell Internet"\r
+      mcc="334"\r
+      mnc="050"\r
+      apn="web.iusacellgsm.mx"\r
+      user="iusacellgsm"\r
+      password="iusacellgsm"\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Iusacell MMS"\r
+      mcc="334"\r
+      mnc="050"\r
+      apn="mms.iusacellgsm.mx"\r
+      user="mmsiusacellgsm"\r
+      password="mmsiusacellgsm"\r
+      mmsproxy=""\r
+      mmsport=""\r
+      mmsc="http://mms.iusacell3g.com/"\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Iusacell Modem"\r
+      mcc="334"\r
+      mnc="050"\r
+      apn="modem.iusacellgsm.mx"\r
+      user="iusacellgsm"\r
+      password="iusacellgsm"\r
+      authtype="0"\r
+      type="dun"\r
+  />\r
+\r
+  <apn carrier="Web Digicel"\r
+      mcc="338"\r
+      mnc="050"\r
+      apn="web"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="MMS Digicel"\r
+      mcc="338"\r
+      mnc="050"\r
+      apn="wap"\r
+      user=""\r
+      password=""\r
+      mmsproxy="172.16.7.12"\r
+      mmsport="8080"\r
+      mmsc="http://mms.digicelgroup.com"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Lime Internet Postpaid"\r
+      mcc="338"\r
+      mnc="18"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Lime Postpaid MMS"\r
+      mcc="338"\r
+      mnc="18"\r
+      apn="multimedia"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.20.5.34"\r
+      mmsport="8799"\r
+      mmsc="http://mmsc"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Claro Web"\r
+      mcc="338"\r
+      mnc="070"\r
+      apn="internet.ideasclaro.com.jm"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Claro MMS"\r
+      mcc="338"\r
+      mnc="070"\r
+      apn="mms.ideasclaro.com.jm"\r
+      user=""\r
+      password=""\r
+      mmsproxy="190.80.147.118"\r
+      mmsport="8080"\r
+      mmsc="http://mms.ideasclaro.com.jm/mms/wapenc"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Lime Internet Postpaid"\r
+      mcc="338"\r
+      mnc="180"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Lime Postpaid MMS"\r
+      mcc="338"\r
+      mnc="180"\r
+      apn="multimedia"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.20.5.34"\r
+      mmsport="8799"\r
+      mmsc="http://mmsc"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+<!--End(1): Latin America-->\r
+\r
+  <apn carrier="Orange World Carabe"\r
+      mcc="340"\r
+      mnc="01"\r
+      apn="orangewap"\r
+      user="orange"\r
+      password="wap"\r
+      proxy="10.0.0.10"\r
+      port="8082"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Orange MMS Carabe"\r
+      mcc="340"\r
+      mnc="01"\r
+      apn="orangewap"\r
+      user="orange"\r
+      password="orange"\r
+      mmsc="http://193.251.160.246/servlets/mms"\r
+      mmsproxy="10.0.0.10"\r
+      mmsport="8082"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Digicel FR"\r
+      mcc="340"\r
+      mnc="20"\r
+      apn="wap.digicelfr.com"\r
+      user="wap"\r
+      password="wap"\r
+      mmsc="http://mmc.digicelfr.com/servlets/mms"\r
+      mmsproxy="172.20.6.12"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <!--Start(2): Latin America-->\r
+\r
+  <apn carrier="Lime Internet Postpaid"\r
+      mcc="342"\r
+      mnc="60"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Lime Postpaid MMS"\r
+      mcc="342"\r
+      mnc="60"\r
+      apn="multimedia"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.20.5.34"\r
+      mmsport="8799"\r
+      mmsc="http://mmsc"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Lime Internet Postpaid"\r
+      mcc="344"\r
+      mnc="92"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Lime Postpaid MMS"\r
+      mcc="344"\r
+      mnc="92"\r
+      apn="multimedia"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.20.5.34"\r
+      mmsport="8799"\r
+      mmsc="http://mmsc"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Lime Internet Postpaid"\r
+      mcc="346"\r
+      mnc="14"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Lime Postpaid MMS"\r
+      mcc="346"\r
+      mnc="14"\r
+      apn="multimedia"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.20.5.34"\r
+      mmsport="8799"\r
+      mmsc="http://mmsc"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Lime Internet Postpaid"\r
+      mcc="348"\r
+      mnc="17"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Lime Postpaid MMS"\r
+      mcc="348"\r
+      mnc="17"\r
+      apn="multimedia"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.20.5.34"\r
+      mmsport="8799"\r
+      mmsc="http://mmsc"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Lime Internet Postpaid"\r
+      mcc="352"\r
+      mnc="11"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Lime Postpaid MMS"\r
+      mcc="352"\r
+      mnc="11"\r
+      apn="multimedia"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.20.5.34"\r
+      mmsport="8799"\r
+      mmsc="http://mmsc"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Lime Internet Postpaid"\r
+      mcc="354"\r
+      mnc="86"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Lime Postpaid MMS"\r
+      mcc="354"\r
+      mnc="86"\r
+      apn="multimedia"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.20.5.34"\r
+      mmsport="8799"\r
+      mmsc="http://mmsc"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Lime Internet Postpaid"\r
+      mcc="356"\r
+      mnc="11"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Lime Postpaid MMS"\r
+      mcc="356"\r
+      mnc="11"\r
+      apn="multimedia"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.20.5.34"\r
+      mmsport="8799"\r
+      mmsc="http://mmsc"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Lime Internet Postpaid"\r
+      mcc="358"\r
+      mnc="11"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Lime Postpaid MMS"\r
+      mcc="358"\r
+      mnc="11"\r
+      apn="multimedia"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.20.5.34"\r
+      mmsport="8799"\r
+      mmsc="http://mmsc"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Lime Internet Postpaid"\r
+      mcc="360"\r
+      mnc="11"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Lime Postpaid MMS"\r
+      mcc="360"\r
+      mnc="11"\r
+      apn="multimedia"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.20.5.34"\r
+      mmsport="8799"\r
+      mmsc="http://mmsc"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Web Digicel"\r
+      mcc="363"\r
+      mnc="02"\r
+      apn="web"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS Digicel"\r
+      mcc="363"\r
+      mnc="02"\r
+      apn="wap"\r
+      user=""\r
+      password=""\r
+      mmsproxy="172.16.7.12"\r
+      mmsport="8080"\r
+      mmsc="http://mms.digicelgroup.com"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+<apn carrier="Web Digicel"\r
+      mcc="363"\r
+      mnc="020"\r
+      apn="web"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS Digicel"\r
+      mcc="363"\r
+      mnc="020"\r
+      apn="wap"\r
+      user=""\r
+      password=""\r
+      mmsproxy="172.16.7.12"\r
+      mmsport="8080"\r
+      mmsc="http://mms.digicelgroup.com"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Lime Internet Postpaid"\r
+      mcc="365"\r
+      mnc="84"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Lime Postpaid MMS"\r
+      mcc="365"\r
+      mnc="84"\r
+      apn="multimedia"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.20.5.34"\r
+      mmsport="8799"\r
+      mmsc="http://mmsc"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Lime Internet Postpaid"\r
+      mcc="366"\r
+      mnc="11"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Lime Postpaid MMS"\r
+      mcc="366"\r
+      mnc="11"\r
+      apn="multimedia"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.20.5.34"\r
+      mmsport="8799"\r
+      mmsc="http://mmsc"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Internet"\r
+      mcc="368"\r
+      mnc="01"\r
+      apn="internet"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Cubacel MMS"\r
+      mcc="368"\r
+      mnc="01"\r
+      apn="mms"\r
+      mmsproxy="200.13.145.52"\r
+      mmsport="8080"\r
+      mmsc="http://mms.cubacel.cu/"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Orange Net"\r
+      mcc="370"\r
+      mnc="01"\r
+      apn="orangenet.com.do"\r
+      user="orange"\r
+      password="orange"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Orange MMS"\r
+      mcc="370"\r
+      mnc="01"\r
+      apn="orangeworld"\r
+      user="orange"\r
+      password="orange"\r
+      mmsproxy="172.16.126.70"\r
+      mmsport="8080"\r
+      mmsc="http://mms.orange.com.do/servlets/mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="INTERNET CLARO"\r
+      mcc="370"\r
+      mnc="02"\r
+      apn="internet.ideasclaro.com.do"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS CLARO"\r
+      mcc="370"\r
+      mnc="02"\r
+      apn="mms.ideasclaro.com.do"\r
+      user=""\r
+      password=""\r
+      mmsproxy="190.80.147.8"\r
+      mmsport="8080"\r
+      mmsc="http://mms.ideasclaro.com.do/mms/wapenc"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Viva Edge"\r
+      mcc="370"\r
+      mnc="04"\r
+      apn="edge.viva.net.do"\r
+      proxy="192.168.16.10"\r
+      port="9401"\r
+      user="viva"\r
+      password="viva"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Viva MMS"\r
+      mcc="370"\r
+      mnc="04"\r
+      apn="mms.viva.net.do"\r
+      user="viva"\r
+      password="viva"\r
+      mmsproxy="192.168.16.10"\r
+      mmsport="9401"\r
+      mmsc="http://10.200.16.4/mms/wapenc"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Web Voila"\r
+      mcc="372"\r
+      mnc="01"\r
+      apn="internet.voila.ht"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Bmobile internet"\r
+      mcc="374"\r
+      mnc="12"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Bmobile mms"\r
+      mcc="374"\r
+      mnc="12"\r
+      apn="mms"\r
+      user=""\r
+      password=""\r
+      mmsproxy="192.168.210.104"\r
+      mmsport="8080"\r
+      mmsc="http://192.168.210.104/mmrelay.app"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Bmobile internet"\r
+      mcc="374"\r
+      mnc="120"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Bmobile mms"\r
+      mcc="374"\r
+      mnc="120"\r
+      apn="mms"\r
+      user=""\r
+      password=""\r
+      mmsproxy="192.168.210.104"\r
+      mmsport="8080"\r
+      mmsc="http://192.168.210.104/mmrelay.app"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Bmobile internet"\r
+      mcc="374"\r
+      mnc="121"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Bmobile mms"\r
+      mcc="374"\r
+      mnc="121"\r
+      apn="mms"\r
+      user=""\r
+      password=""\r
+      mmsproxy="192.168.210.104"\r
+      mmsport="8080"\r
+      mmsc="http://192.168.210.104/mmrelay.app"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Bmobile internet"\r
+      mcc="374"\r
+      mnc="122"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Bmobile mms"\r
+      mcc="374"\r
+      mnc="122"\r
+      apn="mms"\r
+      user=""\r
+      password=""\r
+      mmsproxy="192.168.210.104"\r
+      mmsport="8080"\r
+      mmsc="http://192.168.210.104/mmrelay.app"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Bmobile internet"\r
+      mcc="374"\r
+      mnc="123"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Bmobile mms"\r
+      mcc="374"\r
+      mnc="123"\r
+      apn="mms"\r
+      user=""\r
+      password=""\r
+      mmsproxy="192.168.210.104"\r
+      mmsport="8080"\r
+      mmsc="http://192.168.210.104/mmrelay.app"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Bmobile internet"\r
+      mcc="374"\r
+      mnc="124"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Bmobile mms"\r
+      mcc="374"\r
+      mnc="124"\r
+      apn="mms"\r
+      user=""\r
+      password=""\r
+      mmsproxy="192.168.210.104"\r
+      mmsport="8080"\r
+      mmsc="http://192.168.210.104/mmrelay.app"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Bmobile internet"\r
+      mcc="374"\r
+      mnc="125"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Bmobile mms"\r
+      mcc="374"\r
+      mnc="125"\r
+      apn="mms"\r
+      user=""\r
+      password=""\r
+      mmsproxy="192.168.210.104"\r
+      mmsport="8080"\r
+      mmsc="http://192.168.210.104/mmrelay.app"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Bmobile internet"\r
+      mcc="374"\r
+      mnc="126"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Bmobile mms"\r
+      mcc="374"\r
+      mnc="126"\r
+      apn="mms"\r
+      user=""\r
+      password=""\r
+      mmsproxy="192.168.210.104"\r
+      mmsport="8080"\r
+      mmsc="http://192.168.210.104/mmrelay.app"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Bmobile internet"\r
+      mcc="374"\r
+      mnc="127"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Bmobile mms"\r
+      mcc="374"\r
+      mnc="127"\r
+      apn="mms"\r
+      user=""\r
+      password=""\r
+      mmsproxy="192.168.210.104"\r
+      mmsport="8080"\r
+      mmsc="http://192.168.210.104/mmrelay.app"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Bmobile internet"\r
+      mcc="374"\r
+      mnc="128"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Bmobile mms"\r
+      mcc="374"\r
+      mnc="128"\r
+      apn="mms"\r
+      user=""\r
+      password=""\r
+      mmsproxy="192.168.210.104"\r
+      mmsport="8080"\r
+      mmsc="http://192.168.210.104/mmrelay.app"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Bmobile internet"\r
+      mcc="374"\r
+      mnc="129"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Bmobile mms"\r
+      mcc="374"\r
+      mnc="129"\r
+      apn="mms"\r
+      user=""\r
+      password=""\r
+      mmsproxy="192.168.210.104"\r
+      mmsport="8080"\r
+      mmsc="http://192.168.210.104/mmrelay.app"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Web Digicel"\r
+      mcc="374"\r
+      mnc="13"\r
+      apn="web.digiceltt.com"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS Digicel"\r
+      mcc="374"\r
+      mnc="13"\r
+      apn="wap.digiceltt.com"\r
+      user="wap"\r
+      password="wap"\r
+      mmsproxy="172.20.6.12"\r
+      mmsport="8080"\r
+      mmsc="http://mmc.digiceltt.com/servlets/mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Web Digicel"\r
+      mcc="374"\r
+      mnc="130"\r
+      apn="web.digiceltt.com"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS Digicel"\r
+      mcc="374"\r
+      mnc="130"\r
+      apn="wap.digiceltt.com"\r
+      user="wap"\r
+      password="wap"\r
+      mmsproxy="172.20.6.12"\r
+      mmsport="8080"\r
+      mmsc="http://mmc.digiceltt.com/servlets/mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <apn carrier="Lime Internet Postpaid"\r
+      mcc="376"\r
+      mnc="35"\r
+      apn="internet"\r
+      user=""\r
+      password=""\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Lime Postpaid MMS"\r
+      mcc="376"\r
+      mnc="35"\r
+      apn="multimedia"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.20.5.34"\r
+      mmsport="8799"\r
+      mmsc="http://mmsc"\r
+      type="mms"\r
+  />\r
+\r
+\r
+<!--End(2): Latin America-->\r
+\r
+  <apn carrier="Beeline Internet"\r
+      mcc="401"\r
+      mnc="01"\r
+      apn="internet.beeline.kz"\r
+      user="@internet.beeline"\r
+      password="beeline"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Beeline MMS"\r
+      mcc="401"\r
+      mnc="01"\r
+      apn="mms.beeline.kz"\r
+      user="@mms.beeline"\r
+      password="beeline"\r
+      mmsc="http://mms.beeline.kz/mms/wapenc"\r
+      mmsproxy="172.27.6.93"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Remove apns named "Beeline WAP"  -->\r
+\r
+  <apn carrier="Kcell Internet"\r
+      mcc="401"\r
+      mnc="02"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Kcell MMS"\r
+      mcc="401"\r
+      mnc="02"\r
+      apn="mms"\r
+      mmsc="http://mms.kcell.kz/post"\r
+      mmsproxy="195.47.255.7"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Remove apns named "Kcell WAP"  -->\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change carrier name -->\r
+  <apn carrier="Tele2 Internet"\r
+      mcc="401"\r
+      mnc="77"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Change carrier name -->\r
+  <apn carrier="Tele2 MMS"\r
+      mcc="401"\r
+      mnc="77"\r
+      apn="mms"\r
+      mmsc="http://mms.neogsm.kz/mms/wapenc"\r
+      mmsproxy="10.1.26.10"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- Remove apns named "NEO WAP"  -->\r
+\r
+  <apn carrier="Vodafone MMS"\r
+      mcc="404"\r
+      mnc="01"\r
+      apn="portalnmms"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="404"\r
+      mnc="01"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="404"\r
+      mnc="01"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="404"\r
+      mnc="02"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="404"\r
+      mnc="02"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="404"\r
+      mnc="03"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="404"\r
+      mnc="03"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="404"\r
+      mnc="04"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="404"\r
+      mnc="04"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="404"\r
+      mnc="05"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="404"\r
+      mnc="05"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="404"\r
+      mnc="07"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="404"\r
+      mnc="07"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RTel MMS"\r
+      mcc="404"\r
+      mnc="09"\r
+      apn="MMS"\r
+      mmsc="http://10.239.221.47/mms/"\r
+      mmsproxy="10.239.221.7"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RTel"\r
+      mcc="404"\r
+      mnc="09"\r
+      apn="SMARTNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="404"\r
+      mnc="10"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="404"\r
+      mnc="10"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="404"\r
+      mnc="11"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="404"\r
+      mnc="11"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="404"\r
+      mnc="12"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="404"\r
+      mnc="12"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone MMS"\r
+      mcc="404"\r
+      mnc="13"\r
+      apn="portalnmms"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="404"\r
+      mnc="13"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="404"\r
+      mnc="13"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA Punjab MMS"\r
+      mcc="404"\r
+      mnc="14"\r
+      apn="spice"\r
+      mmsc="http://10.11.12.180/"\r
+      mmsproxy="10.11.12.13"\r
+      mmsport="9401"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="IDEA Punjab"\r
+      mcc="404"\r
+      mnc="14"\r
+      apn="spicegprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="404"\r
+      mnc="15"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="404"\r
+      mnc="15"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="404"\r
+      mnc="16"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="404"\r
+      mnc="16"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Aircel MMS"\r
+      mcc="404"\r
+      mnc="17"\r
+      apn="aircelmms"\r
+      mmsc="http://10.50.1.166/servlets/mms"\r
+      mmsproxy="172.17.83.69"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Aircel GPRS"\r
+      mcc="404"\r
+      mnc="17"\r
+      apn="aircelwebpost"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RTel MMS"\r
+      mcc="404"\r
+      mnc="18"\r
+      apn="MMS"\r
+      mmsc="http://10.239.221.47/mms/"\r
+      mmsproxy="10.239.221.7"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RTel"\r
+      mcc="404"\r
+      mnc="18"\r
+      apn="SMARTNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="404"\r
+      mnc="19"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="404"\r
+      mnc="19"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="404"\r
+      mnc="20"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="404"\r
+      mnc="20"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      type="default,supl,mms"\r
+  />\r
+  \r
+   <apn carrier="Vodafone Connect"\r
+      mcc="404"\r
+      mnc="206"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="404"\r
+      mnc="206"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Loop Mobile MMS"\r
+      mcc="404"\r
+      mnc="21"\r
+      apn="mizone"\r
+      password="mmsc"\r
+      mmsc="http://mms.loopmobile.in:8080"\r
+      mmsproxy="10.0.0.10"\r
+      mmsport="9401"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Loop Mobile"\r
+      mcc="404"\r
+      mnc="21"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="404"\r
+      mnc="22"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="404"\r
+      mnc="22"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="404"\r
+      mnc="24"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="404"\r
+      mnc="24"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL NE MMS"\r
+      mcc="404"\r
+      mnc="25"\r
+      apn="aircelmms"\r
+      mmsc="http://10.50.1.166/servlets/mms"\r
+      mmsproxy="172.17.83.69"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL NE"\r
+      mcc="404"\r
+      mnc="25"\r
+      apn="aircelwebpost"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="404"\r
+      mnc="27"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="404"\r
+      mnc="27"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL NE MMS"\r
+      mcc="404"\r
+      mnc="28"\r
+      apn="aircelmms"\r
+      mmsc="http://10.50.1.166/servlets/mms"\r
+      mmsproxy="172.17.83.69"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL NE"\r
+      mcc="404"\r
+      mnc="28"\r
+      apn="aircelwebpost"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="AIRCEL NE MMS"\r
+      mcc="404"\r
+      mnc="29"\r
+      apn="aircelmms"\r
+      mmsc="http://10.50.1.166/servlets/mms"\r
+      mmsproxy="172.17.83.69"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL NE"\r
+      mcc="404"\r
+      mnc="29"\r
+      apn="aircelwebpost"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="404"\r
+      mnc="30"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="404"\r
+      mnc="30"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="404"\r
+      mnc="31"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="404"\r
+      mnc="31"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL NE MMS"\r
+      mcc="404"\r
+      mnc="33"\r
+      apn="aircelmms"\r
+      mmsc="http://10.50.1.166/servlets/mms"\r
+      mmsproxy="172.17.83.69"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL NE"\r
+      mcc="404"\r
+      mnc="33"\r
+      apn="aircelwebpost"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Cellone_North MMS"\r
+      mcc="404"\r
+      mnc="34"\r
+      apn="bsnlmms"\r
+      mmsc="http://bsnlmmsc.in"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Cellone_North"\r
+      mcc="404"\r
+      mnc="34"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="AIRCEL NE MMS"\r
+      mcc="404"\r
+      mnc="35"\r
+      apn="aircelmms"\r
+      mmsc="http://10.50.1.166/servlets/mms"\r
+      mmsproxy="172.17.83.69"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL NE"\r
+      mcc="404"\r
+      mnc="35"\r
+      apn="aircelwebpost"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RTel MMS"\r
+      mcc="404"\r
+      mnc="36"\r
+      apn="MMS"\r
+      mmsc="http://10.239.221.47/mms/"\r
+      mmsproxy="10.239.221.7"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RTel"\r
+      mcc="404"\r
+      mnc="36"\r
+      apn="SMARTNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="AIRCEL NE MMS"\r
+      mcc="404"\r
+      mnc="37"\r
+      apn="aircelmms"\r
+      mmsc="http://10.50.1.166/servlets/mms"\r
+      mmsproxy="172.17.83.69"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL NE"\r
+      mcc="404"\r
+      mnc="37"\r
+      apn="aircelwebpost"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CellOne_Kolkata MMS"\r
+      mcc="404"\r
+      mnc="38"\r
+      apn="bsnlmms"\r
+      mmsc="http://bsnlmmsc.in:8514"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CellOne_Kolkata"\r
+      mcc="404"\r
+      mnc="38"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="404"\r
+      mnc="40"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="404"\r
+      mnc="40"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL TN"\r
+      mcc="404"\r
+      mnc="41"\r
+      apn="aircelgprs.po"\r
+      mmsc="http://mmsc/mmrelay.app"\r
+      mmsproxy="192.168.35.196"\r
+      mmsport="8081"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL TN"\r
+      mcc="404"\r
+      mnc="42"\r
+      apn="aircelgprs.po"\r
+      mmsc="http://mmsc/mmrelay.app"\r
+      mmsproxy="192.168.35.196"\r
+      mmsport="8081"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="404"\r
+      mnc="43"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="404"\r
+      mnc="43"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="IDEA Karnataka"\r
+      mcc="404"\r
+      mnc="44"\r
+      apn="simplyinternet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA Karnataka MMS"\r
+      mcc="404"\r
+      mnc="44"\r
+      apn="spicemms"\r
+      mmsc="http://10.200.200.3:8514"\r
+      mmsproxy="10.200.200.3"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="404"\r
+      mnc="45"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="404"\r
+      mnc="45"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="404"\r
+      mnc="46"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="404"\r
+      mnc="46"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="404"\r
+      mnc="49"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="404"\r
+      mnc="49"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RTel MMS"\r
+      mcc="404"\r
+      mnc="50"\r
+      apn="MMS"\r
+      mmsc="http://10.239.221.47/mms/"\r
+      mmsproxy="10.239.221.7"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RTel"\r
+      mcc="404"\r
+      mnc="50"\r
+      apn="SMARTNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Cellone_North MMS"\r
+      mcc="404"\r
+      mnc="51"\r
+      apn="bsnlmms"\r
+      mmsc="http://bsnlmmsc.in"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Cellone_North"\r
+      mcc="404"\r
+      mnc="51"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RTel MMS"\r
+      mcc="404"\r
+      mnc="52"\r
+      apn="MMS"\r
+      mmsc="http://10.239.221.47/mms/"\r
+      mmsproxy="10.239.221.7"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RTel"\r
+      mcc="404"\r
+      mnc="52"\r
+      apn="SMARTNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Cellone_North MMS"\r
+      mcc="404"\r
+      mnc="53"\r
+      apn="bsnlmms"\r
+      mmsc="http://bsnlmmsc.in"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Cellone_North"\r
+      mcc="404"\r
+      mnc="53"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Cellone_North MMS"\r
+      mcc="404"\r
+      mnc="54"\r
+      apn="bsnlmms"\r
+      mmsc="http://bsnlmmsc.in"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Cellone_North"\r
+      mcc="404"\r
+      mnc="54"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Cellone_North MMS"\r
+      mcc="404"\r
+      mnc="55"\r
+      apn="bsnlmms"\r
+      mmsc="http://bsnlmmsc.in"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Cellone_North"\r
+      mcc="404"\r
+      mnc="55"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="404"\r
+      mnc="56"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="404"\r
+      mnc="56"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Cellone_West MMS"\r
+      mcc="404"\r
+      mnc="57"\r
+      apn="bsnlmms"\r
+      mmsc="http://bsnlmmsc.in"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Cellone_West"\r
+      mcc="404"\r
+      mnc="57"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Cellone_West MMS"\r
+      mcc="404"\r
+      mnc="58"\r
+      apn="bsnlmms"\r
+      mmsc="http://bsnlmmsc.in"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Cellone_West"\r
+      mcc="404"\r
+      mnc="58"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Cellone_North MMS"\r
+      mcc="404"\r
+      mnc="59"\r
+      apn="bsnlmms"\r
+      mmsc="http://bsnlmmsc.in"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Cellone_North"\r
+      mcc="404"\r
+      mnc="59"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="404"\r
+      mnc="60"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="404"\r
+      mnc="60"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Cellone_North MMS"\r
+      mcc="404"\r
+      mnc="62"\r
+      apn="bsnlmms"\r
+      mmsc="http://bsnlmmsc.in"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Cellone_North"\r
+      mcc="404"\r
+      mnc="62"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CellOne_South MMS"\r
+      mcc="404"\r
+      mnc="64"\r
+      apn="bsnlmms"\r
+      password="mmsc"\r
+      mmsc="http://bsnlmmsc.in:8514"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CellOne_South"\r
+      mcc="404"\r
+      mnc="64"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Cellone_West MMS"\r
+      mcc="404"\r
+      mnc="66"\r
+      apn="bsnlmms"\r
+      mmsc="http://bsnlmmsc.in"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Cellone_West"\r
+      mcc="404"\r
+      mnc="66"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RTel MMS"\r
+      mcc="404"\r
+      mnc="67"\r
+      apn="MMS"\r
+      mmsc="http://10.239.221.47/mms/"\r
+      mmsproxy="10.239.221.7"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RTel"\r
+      mcc="404"\r
+      mnc="67"\r
+      apn="SMARTNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Dolphin_Delhi"\r
+      mcc="404"\r
+      mnc="68"\r
+      apn="gprsmtnldel"\r
+      user="mtnl"\r
+      password="mtnl123"\r
+      mmsc="http://172.16.31.136/mms/"\r
+      mmsproxy="172.16.31.10"\r
+      mmsport="80"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Dolphin_Delhi_3G"\r
+      mcc="404"\r
+      mnc="68"\r
+      apn="mtnl3g"\r
+      user="mtnl"\r
+      password="mtnl123"\r
+      mmsc="http://172.16.31.165/mms/"\r
+      mmsproxy="172.16.31.10"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Dolphin_Mumbai"\r
+      mcc="404"\r
+      mnc="69"\r
+      apn="gprsmtnlmum"\r
+      user="mtnl"\r
+      password="mtnl123"\r
+      mmsc="http://172.16.39.140/mms/"\r
+      mmsproxy="172.16.39.10"\r
+      mmsport="80"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Dolphin_Mumbai_3G"\r
+      mcc="404"\r
+      mnc="69"\r
+      apn="mtnl3g"\r
+      user="mtnl"\r
+      password="mtnl123"\r
+      mmsc="http://172.16.31.165/mms/"\r
+      mmsproxy="172.16.39.10"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="404"\r
+      mnc="70"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="404"\r
+      mnc="70"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CellOne_South MMS"\r
+      mcc="404"\r
+      mnc="71"\r
+      apn="bsnlmms"\r
+      password="mmsc"\r
+      mmsc="http://bsnlmmsc.in:8514"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CellOne_South"\r
+      mcc="404"\r
+      mnc="71"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CellOne_South MMS"\r
+      mcc="404"\r
+      mnc="72"\r
+      apn="bsnlmms"\r
+      password="mmsc"\r
+      mmsc="http://bsnlmmsc.in:8514"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CellOne_South"\r
+      mcc="404"\r
+      mnc="72"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CellOne_South MMS"\r
+      mcc="404"\r
+      mnc="73"\r
+      apn="bsnlmms"\r
+      password="mmsc"\r
+      mmsc="http://bsnlmmsc.in:8514"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CellOne_South"\r
+      mcc="404"\r
+      mnc="73"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="bsnlmms"\r
+      mcc="404"\r
+      mnc="74"\r
+      apn="bsnlmms"\r
+      mmsc="http://bsnlmmsc.in:8514"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="bsnlnet"\r
+      mcc="404"\r
+      mnc="74"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CellOne_Kolkata MMS"\r
+      mcc="404"\r
+      mnc="75"\r
+      apn="bsnlmms"\r
+      mmsc="http://bsnlmmsc.in:8514"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CellOne_Kolkata"\r
+      mcc="404"\r
+      mnc="75"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CellOne_Kolkata MMS"\r
+      mcc="404"\r
+      mnc="76"\r
+      apn="bsnlmms"\r
+      mmsc="http://bsnlmmsc.in:8514"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CellOne_Kolkata"\r
+      mcc="404"\r
+      mnc="76"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CellOne_Kolkata MMS"\r
+      mcc="404"\r
+      mnc="77"\r
+      apn="bsnlmms"\r
+      mmsc="http://bsnlmmsc.in:8514"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CellOne_Kolkata"\r
+      mcc="404"\r
+      mnc="77"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="404"\r
+      mnc="78"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="404"\r
+      mnc="78"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CellOne_South MMS"\r
+      mcc="404"\r
+      mnc="79"\r
+      apn="bsnlmms"\r
+      password="mmsc"\r
+      mmsc="http://bsnlmmsc.in:8514"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CellOne_South"\r
+      mcc="404"\r
+      mnc="79"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CellOne_South MMS"\r
+      mcc="404"\r
+      mnc="80"\r
+      apn="bsnlmms"\r
+      password="mmsc"\r
+      mmsc="http://bsnlmmsc.in:8514"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CellOne_South"\r
+      mcc="404"\r
+      mnc="80"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CellOne_Kolkata MMS"\r
+      mcc="404"\r
+      mnc="81"\r
+      apn="bsnlmms"\r
+      mmsc="http://bsnlmmsc.in:8514"\r
+      mmsproxy="10.210.10.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CellOne_Kolkata"\r
+      mcc="404"\r
+      mnc="81"\r
+      apn="bsnlnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="404"\r
+      mnc="82"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="404"\r
+      mnc="82"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RTel MMS"\r
+      mcc="404"\r
+      mnc="83"\r
+      apn="MMS"\r
+      mmsc="http://10.239.221.47/mms/"\r
+      mmsproxy="10.239.221.7"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RTel"\r
+      mcc="404"\r
+      mnc="83"\r
+      apn="SMARTNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="404"\r
+      mnc="84"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="404"\r
+      mnc="84"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RTel MMS"\r
+      mcc="404"\r
+      mnc="85"\r
+      apn="MMS"\r
+      mmsc="http://10.239.221.47/mms/"\r
+      mmsproxy="10.239.221.7"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RTel"\r
+      mcc="404"\r
+      mnc="85"\r
+      apn="SMARTNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="404"\r
+      mnc="86"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="404"\r
+      mnc="86"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="404"\r
+      mnc="87"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="404"\r
+      mnc="87"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="404"\r
+      mnc="88"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="404"\r
+      mnc="88"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="404"\r
+      mnc="89"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="404"\r
+      mnc="89"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="404"\r
+      mnc="90"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="404"\r
+      mnc="90"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL NE MMS"\r
+      mcc="404"\r
+      mnc="91"\r
+      apn="aircelmms"\r
+      mmsc="http://10.50.1.166/servlets/mms"\r
+      mmsproxy="172.17.83.69"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL NE"\r
+      mcc="404"\r
+      mnc="91"\r
+      apn="aircelwebpost"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="404"\r
+      mnc="92"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="404"\r
+      mnc="92"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="404"\r
+      mnc="93"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="404"\r
+      mnc="93"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="404"\r
+      mnc="94"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="404"\r
+      mnc="94"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="404"\r
+      mnc="95"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="404"\r
+      mnc="95"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="404"\r
+      mnc="96"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="404"\r
+      mnc="96"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="404"\r
+      mnc="97"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="404"\r
+      mnc="97"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="404"\r
+      mnc="98"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="404"\r
+      mnc="98"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="01"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="01"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="03"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="03"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="04"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="04"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="05"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="05"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="06"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="06"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="07"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="07"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="08"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="08"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="09"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="09"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="10"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="10"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="11"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="11"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="12"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="12"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="13"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="13"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="14"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="14"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="15"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="15"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="17"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="17"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="18"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="18"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="19"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="19"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="20"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="20"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="21"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="21"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="22"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="22"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM MMS"\r
+      mcc="405"\r
+      mnc="23"\r
+      apn="rcommms"\r
+      mmsc="http://mmsc.rcom.co.in/mms/"\r
+      mmsproxy="10.239.221.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Reliance RCOM"\r
+      mcc="405"\r
+      mnc="23"\r
+      apn="rcomnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="025"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="025"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="026"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="026"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="027"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="027"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="028"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="028"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="029"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="029"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="030"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="030"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="031"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="031"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="032"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="032"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="033"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="033"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="034"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="034"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="035"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="035"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="036"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="036"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="037"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="037"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="038"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="038"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="039"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="039"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="040"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="040"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="041"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="041"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="042"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="042"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="043"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="043"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="044"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="044"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="045"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="045"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="046"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="046"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO"\r
+      mcc="405"\r
+      mnc="047"\r
+      apn="TATA.DOCOMO.INTERNET"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TataDOCOMO MMS"\r
+      mcc="405"\r
+      mnc="047"\r
+      apn="TATA.DOCOMO.MMS"\r
+      mmsc="http://mmsc/"\r
+      mmsproxy="10.124.26.94"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="405"\r
+      mnc="51"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="405"\r
+      mnc="51"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="405"\r
+      mnc="52"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="405"\r
+      mnc="52"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="405"\r
+      mnc="53"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="405"\r
+      mnc="53"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="405"\r
+      mnc="54"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="405"\r
+      mnc="54"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="405"\r
+      mnc="55"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="405"\r
+      mnc="55"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Airtel"\r
+      mcc="405"\r
+      mnc="56"\r
+      apn="airtelgprs.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Airtel MMS"\r
+      mcc="405"\r
+      mnc="56"\r
+      apn="airtelmms.com"\r
+      mmsc="http://100.1.201.171:10021/mmsc"\r
+      mmsproxy="100.1.201.172"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="405"\r
+      mnc="66"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="405"\r
+      mnc="66"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="405"\r
+      mnc="67"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="405"\r
+      mnc="67"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="405"\r
+      mnc="70"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="405"\r
+      mnc="70"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone MMS"\r
+      mcc="405"\r
+      mnc="750"\r
+      apn="vodafonelivejk"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="405"\r
+      mnc="750"\r
+      apn="jkgprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="405"\r
+      mnc="750"\r
+      apn="vodafonelivejk"\r
+      proxy="10.10.1.100"\r
+      port="9411"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="405"\r
+      mnc="751"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="405"\r
+      mnc="751"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="405"\r
+      mnc="752"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="405"\r
+      mnc="752"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="405"\r
+      mnc="753"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="405"\r
+      mnc="753"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="405"\r
+      mnc="754"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="405"\r
+      mnc="754"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="405"\r
+      mnc="755"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="405"\r
+      mnc="755"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Vodafone Connect"\r
+      mcc="405"\r
+      mnc="756"\r
+      apn="www"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VodafoneLive!"\r
+      mcc="405"\r
+      mnc="756"\r
+      apn="portalnmms"\r
+      proxy="10.10.1.100"\r
+      port="9401"\r
+      mmsc="http://mms1.live.vodafone.in/mms/"\r
+      mmsproxy="10.10.1.100"\r
+      mmsport="9401"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="405"\r
+      mnc="799"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="405"\r
+      mnc="799"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL ROI"\r
+      mcc="405"\r
+      mnc="800"\r
+      apn="aircelgprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="AIRCEL ROI MMS"\r
+      mcc="405"\r
+      mnc="800"\r
+      apn="aircelmms"\r
+      mmsc="http://10.50.1.166/servlets/mms"\r
+      mmsproxy="172.17.83.69"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL South"\r
+      mcc="405"\r
+      mnc="801"\r
+      apn="aircelgprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="AIRCEL South MMS"\r
+      mcc="405"\r
+      mnc="801"\r
+      apn="aircelmms"\r
+      mmsc="http://mmsc/mmrelay.app"\r
+      mmsproxy="192.168.35.196"\r
+      mmsport="8081"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL Central"\r
+      mcc="405"\r
+      mnc="802"\r
+      apn="aircelgprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="AIRCEL Central MMS"\r
+      mcc="405"\r
+      mnc="802"\r
+      apn="aircelmms"\r
+      mmsc="http://10.50.1.166/servlets/mms"\r
+      mmsproxy="172.17.83.69"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL South"\r
+      mcc="405"\r
+      mnc="803"\r
+      apn="aircelgprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="AIRCEL South MMS"\r
+      mcc="405"\r
+      mnc="803"\r
+      apn="aircelmms"\r
+      mmsc="http://mmsc/mmrelay.app"\r
+      mmsproxy="192.168.35.196"\r
+      mmsport="8081"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL ROI"\r
+      mcc="405"\r
+      mnc="804"\r
+      apn="aircelgprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="AIRCEL ROI MMS"\r
+      mcc="405"\r
+      mnc="804"\r
+      apn="aircelmms"\r
+      mmsc="http://10.50.1.166/servlets/mms"\r
+      mmsproxy="172.17.83.69"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL ROI"\r
+      mcc="405"\r
+      mnc="805"\r
+      apn="aircelgprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="AIRCEL ROI MMS"\r
+      mcc="405"\r
+      mnc="805"\r
+      apn="aircelmms"\r
+      mmsc="http://10.50.1.166/servlets/mms"\r
+      mmsproxy="172.17.83.69"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL Central"\r
+      mcc="405"\r
+      mnc="806"\r
+      apn="aircelgprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="AIRCEL Central MMS"\r
+      mcc="405"\r
+      mnc="806"\r
+      apn="aircelmms"\r
+      mmsc="http://10.50.1.166/servlets/mms"\r
+      mmsproxy="172.17.83.69"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL Central"\r
+      mcc="405"\r
+      mnc="807"\r
+      apn="aircelgprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="AIRCEL Central MMS"\r
+      mcc="405"\r
+      mnc="807"\r
+      apn="aircelmms"\r
+      mmsc="http://10.50.1.166/servlets/mms"\r
+      mmsproxy="172.17.83.69"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL Central"\r
+      mcc="405"\r
+      mnc="808"\r
+      apn="aircelgprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="AIRCEL Central MMS"\r
+      mcc="405"\r
+      mnc="808"\r
+      apn="aircelmms"\r
+      mmsc="http://10.50.1.166/servlets/mms"\r
+      mmsproxy="172.17.83.69"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL South"\r
+      mcc="405"\r
+      mnc="809"\r
+      apn="aircelgprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="AIRCEL South MMS"\r
+      mcc="405"\r
+      mnc="809"\r
+      apn="aircelmms"\r
+      mmsc="http://mmsc/mmrelay.app"\r
+      mmsproxy="192.168.35.196"\r
+      mmsport="8081"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL ROI"\r
+      mcc="405"\r
+      mnc="810"\r
+      apn="aircelgprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="AIRCEL ROI MMS"\r
+      mcc="405"\r
+      mnc="810"\r
+      apn="aircelmms"\r
+      mmsc="http://10.50.1.166/servlets/mms"\r
+      mmsproxy="172.17.83.69"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL ROI"\r
+      mcc="405"\r
+      mnc="811"\r
+      apn="aircelgprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="AIRCEL ROI MMS"\r
+      mcc="405"\r
+      mnc="811"\r
+      apn="aircelmms"\r
+      mmsc="http://10.50.1.166/servlets/mms"\r
+      mmsproxy="172.17.83.69"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIRCEL Central"\r
+      mcc="405"\r
+      mnc="812"\r
+      apn="aircelgprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="AIRCEL Central MMS"\r
+      mcc="405"\r
+      mnc="812"\r
+      apn="aircelmms"\r
+      mmsc="http://10.50.1.166/servlets/mms"\r
+      mmsproxy="172.17.83.69"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="813"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,suplm,mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="814"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="815"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="816"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="817"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="818"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="819"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="820"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="821"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="822"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="823"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="823"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="824"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="824"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="825"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="825"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="826"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="826"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="827"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="827"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="828"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="828"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="829"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="829"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="830"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="830"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="831"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="831"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="832"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="832"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="833"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="833"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="834"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="834"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="835"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="835"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="836"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="836"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="837"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="837"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="838"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="838"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="839"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="839"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="840"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="840"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="841"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="841"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="842"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="842"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="843"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="843"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="844"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="405"\r
+      mnc="845"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="405"\r
+      mnc="845"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="405"\r
+      mnc="846"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="405"\r
+      mnc="846"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="405"\r
+      mnc="847"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="405"\r
+      mnc="847"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="405"\r
+      mnc="848"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="405"\r
+      mnc="848"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="405"\r
+      mnc="849"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="405"\r
+      mnc="849"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="405"\r
+      mnc="850"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="405"\r
+      mnc="850"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="405"\r
+      mnc="851"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="405"\r
+      mnc="851"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="405"\r
+      mnc="852"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="405"\r
+      mnc="852"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="405"\r
+      mnc="853"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="405"\r
+      mnc="853"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="875"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="876"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="877"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="878"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="879"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="880"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="STEL"\r
+      mcc="405"\r
+      mnc="881"\r
+      apn="gprs.stel.in"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="STEL"\r
+      mcc="405"\r
+      mnc="882"\r
+      apn="gprs.stel.in"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="STEL"\r
+      mcc="405"\r
+      mnc="883"\r
+      apn="gprs.stel.in"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="STEL"\r
+      mcc="405"\r
+      mnc="884"\r
+      apn="gprs.stel.in"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="STEL"\r
+      mcc="405"\r
+      mnc="885"\r
+      apn="gprs.stel.in"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="STEL"\r
+      mcc="405"\r
+      mnc="886"\r
+      apn="gprs.stel.in"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="405"\r
+      mnc="908"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="405"\r
+      mnc="908"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="405"\r
+      mnc="909"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="405"\r
+      mnc="909"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="405"\r
+      mnc="910"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="405"\r
+      mnc="910"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="IDEA"\r
+      mcc="405"\r
+      mnc="911"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="IDEA MMS"\r
+      mcc="405"\r
+      mnc="911"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+  \r
+  <apn carrier="IDEA"\r
+      mcc="404"\r
+      mnc="891"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+  \r
+  <apn carrier="IDEA MMS"\r
+      mcc="404"\r
+      mnc="891"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+  \r
+  <apn carrier="IDEA"\r
+      mcc="404"\r
+      mnc="220"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+  \r
+  <apn carrier="IDEA MMS"\r
+      mcc="404"\r
+      mnc="220"\r
+      apn="mmsc"\r
+      mmsc="http://10.4.42.21:8002/"\r
+      mmsproxy="10.4.42.15"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="925"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="926"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="927"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="928"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Uninor GPRS"\r
+      mcc="405"\r
+      mnc="929"\r
+      apn="uninor"\r
+      mmsc="http://10.58.2.120"\r
+      mmsproxy="10.58.10.59"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Videocon MMS"\r
+      mcc="405"\r
+      mnc="932"\r
+      apn="vgprs.com"\r
+      mmsc="http://10.202.4.119:10021/mmsc/"\r
+      mmsproxy="10.202.5.145"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Videocon"\r
+      mcc="405"\r
+      mnc="932"\r
+      apn="vinternet.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Mobilink WAP GPRS"\r
+      mcc="410"\r
+      mnc="01"\r
+      apn="connect.mobilinkworld.com"\r
+      user="Mobilink"\r
+      password="Mobilink"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Mobilink MMS"\r
+      mcc="410"\r
+      mnc="01"\r
+      apn="mms.mobilinkworld.com"\r
+      user="Mobilink"\r
+      password="Mobilink"\r
+      mmsc="http://mms/"\r
+      mmsproxy="172.25.20.12"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Ufone WAP"\r
+      mcc="410"\r
+      mnc="03"\r
+      apn="Ufone.internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Ufone MMS"\r
+      mcc="410"\r
+      mnc="03"\r
+      apn="Ufone.mms"\r
+      mmsc="http://www.ufonemms.com:80/"\r
+      mmsproxy="172.16.13.27"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="ZONG WAP"\r
+      mcc="410"\r
+      mnc="04"\r
+      apn="zonginternet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="ZONG MMS"\r
+      mcc="410"\r
+      mnc="04"\r
+      apn="zongmms"\r
+      mmsc="http://10.81.6.11:8080"\r
+      mmsproxy="10.81.6.33"\r
+      mmsport="8000"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Telenor WAP"\r
+      mcc="410"\r
+      mnc="06"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Telenor MMS"\r
+      mcc="410"\r
+      mnc="06"\r
+      apn="mms"\r
+      user="Telenor"\r
+      password="Telenor"\r
+      mmsc="http://mmstelenor"\r
+      mmsproxy="172.18.19.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Warid WAP"\r
+      mcc="410"\r
+      mnc="07"\r
+      apn="Wap.warid"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Warid MMS"\r
+      mcc="410"\r
+      mnc="07"\r
+      apn="mms.warid"\r
+      mmsc="http://10.4.0.132/servlets/MMS"\r
+      mmsproxy="10.4.2.1"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Alfa Internet"\r
+      mcc="415"\r
+      mnc="01"\r
+      user="mic1"\r
+      password="mic1"\r
+      apn="internet.mic1.com.lb"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Alfa MMS"\r
+      mcc="415"\r
+      mnc="01"\r
+      user="mic1"\r
+      password="mic1"\r
+      apn="mms.mic1.com.lb"\r
+      mmsc="http://mms.mic1.com.lb"\r
+      mmsproxy="192.168.23.51"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="MTC Touch GPRS"\r
+      mcc="415"\r
+      mnc="03"\r
+      apn="gprs.mtctouch.com.lb"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MTC MMS"\r
+      mcc="415"\r
+      mnc="03"\r
+      user="mtctouch"\r
+      apn="mms.mtctouch.com.lb"\r
+      mmsc="http://mms:8080/mms/"\r
+      mmsproxy="192.168.4.103"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Zain JO Internet Postpaid"\r
+      mcc="416"\r
+      mnc="01"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Zain JO Internet Prepaid"\r
+      mcc="416"\r
+      mnc="01"\r
+      apn="internetpre"\r
+      user="zain"\r
+      password="zain"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Zain JO MMS"\r
+      mcc="416"\r
+      mnc="01"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms.jo.zain.com"\r
+      mmsproxy="192.168.55.10"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="umniahinternet Postpaid"\r
+      mcc="416"\r
+      mnc="03"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="umniahmms"\r
+      mcc="416"\r
+      mnc="03"\r
+      apn="mms"\r
+      mmsc="http://mms.umniah.com"\r
+      mmsproxy="10.1.1.10"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="umniah Prepaid"\r
+      mcc="416"\r
+      mnc="03"\r
+      apn="net"\r
+      proxy="0.0.0.0"\r
+      port="80"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Orange MMS"\r
+      mcc="416"\r
+      mnc="77"\r
+      apn="mms.orange.jo"\r
+      user="mmc"\r
+      password="mmc"\r
+      mmsc="http://172.16.1.96/servlets/mms"\r
+      mmsproxy="172.16.1.2"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Orange Internet"\r
+      mcc="416"\r
+      mnc="77"\r
+      apn="net.orange.jo"\r
+      user="net"\r
+      password="net"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="ZAIN MMS"\r
+      mcc="419"\r
+      mnc="02"\r
+      apn="pps"\r
+      user="annyway"\r
+      password="online"\r
+      mmsc="http://mms.zain"\r
+      mmsproxy="176.0.0.65"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <apn carrier="ZAIN MI"\r
+      mcc="419"\r
+      mnc="02"\r
+      apn="pps"\r
+      user="pps"\r
+      password="pps"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="WATANIYA MMS"\r
+      mcc="419"\r
+      mnc="03"\r
+      apn="mms.wataniya.com"\r
+      mmsc="http://action.wataniya.com"\r
+      mmsproxy="194.126.53.64"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <apn carrier="INTERNET ACTION"\r
+      mcc="419"\r
+      mnc="03"\r
+      apn="action.wataniya.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VIVA Internet"\r
+      mcc="419"\r
+      mnc="04"\r
+      apn="VIVA"\r
+      mmsc="http://172.16.128.80:38090/was"\r
+      mmsproxy="172.16.128.228"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+\r
+  <apn carrier="JAWALNet"\r
+      mcc="420"\r
+      mnc="01"\r
+      apn="jawalnet.com.sa"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="ALJAWAL MMS"\r
+      mcc="420"\r
+      mnc="01"\r
+      apn="mms.net.sa"\r
+      mmsc="http://mms.net.sa:8002"\r
+      mmsproxy="10.1.1.1"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <apn carrier="mobily Net Prepaid"\r
+      mcc="420"\r
+      mnc="03"\r
+      apn="web2"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="mobily MMS Prepaid"\r
+      mcc="420"\r
+      mnc="03"\r
+      apn="mms2"\r
+      mmsc="http://10.3.3.133:9090/was"\r
+      mmsproxy="10.3.2.133"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <apn carrier="mobily Net Postpaid"\r
+      mcc="420"\r
+      mnc="03"\r
+      apn="web1"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="mobily MMS Postpaid"\r
+      mcc="420"\r
+      mnc="03"\r
+      apn="mms1"\r
+      mmsc="http://10.3.3.133:9090/was"\r
+      mmsproxy="10.3.2.133"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <apn carrier="zain-gprs"\r
+      mcc="420"\r
+      mnc="04"\r
+      apn="zain"\r
+      mmsc="http://10.122.200.12:8002/"\r
+      mmsproxy="10.122.200.10"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Oman Mobile MMS"\r
+      mcc="422"\r
+      mnc="02"\r
+      apn="MMS"\r
+      user="MMS"\r
+      password="MMS"\r
+      mmsc="http://mmsc.omanmobile.om:10021/mmsc"\r
+      mmsproxy="192.168.203.35"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <apn carrier="Oman Mobile Internet"\r
+      mcc="422"\r
+      mnc="02"\r
+      apn="taif"\r
+      user="taif"\r
+      password="taif"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="Nawras MMS"\r
+      mcc="422"\r
+      mnc="03"\r
+      apn="mms.nawras.com.om"\r
+      user="test"\r
+      password="test"\r
+      mmsc="http://10.128.240.16/servlets/mms"\r
+      mmsproxy="10.128.240.19"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <apn carrier="Nawras GPRS"\r
+      mcc="422"\r
+      mnc="03"\r
+      apn="isp.nawras.com.om"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Etisalat MMS"\r
+      mcc="424"\r
+      mnc="02"\r
+      apn="etisalat"\r
+      mmsc="http://mms/servlets/mms"\r
+      mmsproxy="10.12.0.32"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="DATA Package"\r
+      mcc="424"\r
+      mnc="02"\r
+      apn="etisalat.ae"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <!-- Samsung edit -->\r
+  <!-- Change APN name -->\r
+  <apn carrier="du"\r
+      mcc="424"\r
+      mnc="03"\r
+      apn="du"\r
+      mmsc="http://mms.du.ae"\r
+      mmsproxy="10.19.18.4"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <!-- Samsung edit -->\r
+  <!-- Change value -->\r
+  <apn carrier="3G Portal"\r
+      mcc="425"\r
+      mnc="01"\r
+      apn="uwap.orange.co.il"\r
+      port="8080"\r
+      mmsc="http://192.168.220.15/servlets/mms"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <!-- Samsung edit -->\r
+  <!-- Add new apn -->\r
+  <apn carrier="Internet 3G"\r
+      mcc="425"\r
+      mnc="01"\r
+      apn="modem.orange.net.il"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Cellcom Internet"\r
+      mcc="425"\r
+      mnc="02"\r
+      apn="Sphone"\r
+      type="default,supl"\r
+  />\r
+\r
+  <!-- Samsung edit -->\r
+  <!-- Change value -->\r
+  <apn carrier="Cellcom MMS"\r
+      mcc="425"\r
+      mnc="02"\r
+      apn="mms"\r
+      mmsc="http://mms.cellcom.co.il"\r
+      mmsproxy="172.31.29.38"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Multimedia Pelephone"\r
+      mcc="425"\r
+      mnc="03"\r
+      apn="mms.pelephone.net.il"\r
+      user="pcl@3g"\r
+      password="pcl"\r
+      mmsc="http://mmsu.pelephone.net.il"\r
+      mmsproxy="10.170.252.104"\r
+      mmsport="9093"\r
+      type="mms"\r
+  />\r
+\r
+  <!-- Samsung edit -->\r
+  <!-- Change value -->\r
+  <apn carrier="Sphone Pelephone"\r
+      mcc="425"\r
+      mnc="03"\r
+      apn="sphone.pelephone.net.il"\r
+      user="pcl@3g"\r
+      password="pcl"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Internet"\r
+      mcc="426"\r
+      mnc="01"\r
+      apn="internet.batelco.com"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="BAT MMS"\r
+      mcc="426"\r
+      mnc="01"\r
+      apn="mms.batelco.com"\r
+      mmsc="http://192.168.36.10/servlets/mms"\r
+      mmsproxy="192.168.1.2"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <apn carrier="Zain Internet"\r
+      mcc="426"\r
+      mnc="02"\r
+      apn="connect.mobilinkworld.com"\r
+      user="Mobilink"\r
+      password="Mobilink"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Zain MMS"\r
+      mcc="426"\r
+      mnc="02"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://172.18.83.129"\r
+      mmsproxy="172.18.85.34"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <apn carrier="VIVAGPRS"\r
+      mcc="426"\r
+      mnc="04"\r
+      apn="viva.bh"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="VIVAMMS"\r
+      mcc="426"\r
+      mnc="04"\r
+      apn="vivawap.bh"\r
+      mmsc="http://mms.viva.com.bh:38090"\r
+      mmsproxy="172.18.142.36"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <apn carrier="Qtel MMS"\r
+      mcc="427"\r
+      mnc="01"\r
+      apn="mms.qtel"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mmsr.qtelmms.qa"\r
+      mmsproxy="10.23.8.3"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <apn carrier="Qtel GPRS"\r
+      mcc="427"\r
+      mnc="01"\r
+      apn="gprs.qtel"\r
+      user="gprs"\r
+      password="gprs"\r
+      proxy="10.23.8.3"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="VFQ MMS"\r
+      mcc="427"\r
+      mnc="02"\r
+      apn="vodafone.com.qa"\r
+      mmsc="http://mms.vodafone.com.qa/mmsc"\r
+      mmsproxy="10.101.97.102"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <!-- Samsung edit -->\r
+  <!-- Delete Proxy and change access name -->\r
+  <apn carrier="VFQ Mobile Internet"\r
+      mcc="427"\r
+      mnc="02"\r
+      apn="web.vodafone.com.qa"\r
+      type="default,supl"\r
+  />\r
+\r
+  <!-- Samsung edit -->\r
+  <!-- change value -->\r
+  <apn carrier="spモード"\r
+        mcc="440"\r
+        mnc="10"\r
+        apn="spmode.ne.jp"\r
+        type="default,supl"\r
+        auth="0"\r
+    />\r
+\r
+  <!-- Samsung edit -->\r
+  <!-- Add new apn -->\r
+  <apn carrier="mopera U(スマートフォン定額)"\r
+        mcc="440"\r
+        mnc="10"\r
+        apn="mpr2.bizho.net"\r
+        type="default,supl"\r
+        auth="0"\r
+    /> \r
+\r
+  <!-- Samsung edit -->\r
+  <!-- Add new apn -->\r
+  <apn carrier="mopera U設定"\r
+        mcc="440"\r
+        mnc="10"\r
+        apn="0120.mopera.net"\r
+        type="default,supl"\r
+        auth="0"\r
+  />\r
+\r
+  <apn carrier="TestBed"\r
+      mcc="450"\r
+      mnc="01"\r
+      apn="annam.dyn"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://10.200.60.21:8088/mms"\r
+      mmsproxy="10.200.60.15"\r
+      mmsport="3128"\r
+      type="default,supl,mms,imsut"\r
+  />\r
+\r
+  <apn carrier="TestBed IMS"\r
+      mcc="450"\r
+      mnc="01"\r
+      apn="ims"\r
+      type="ims"\r
+      protocol="IPV6"\r
+      roaming_protocol="IPV6"\r
+  />\r
+\r
+  <apn carrier="SK Telecom"\r
+      mcc="450"\r
+      mnc="05"\r
+      apn="lte.sktelecom.com"\r
+      mmsc="http://omms.nate.com:9082/oma_mms"\r
+      mmsproxy="lteoma.nate.com"\r
+      mmsport="9093"\r
+      type="default,supl,dun,mms"\r
+  />\r
+\r
+   <apn carrier="SK Telecom IMS"\r
+      mcc="450"\r
+      mnc="05"\r
+      apn="ims"\r
+      type="ims"\r
+      protocol="IPV4V6"\r
+  />\r
+\r
+  <apn carrier="KT"\r
+      mcc="450"\r
+      mnc="08"\r
+      apn="lte.ktfwing.com"\r
+      mmsc="http://mmsc.ktfwing.com:9082"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+<!--LG U+ Multi-PDN Requirement -->\r
+  <apn carrier="LG U+"\r
+      mcc="450"\r
+      mnc="06"\r
+      apn="internet.lguplus.co.kr"\r
+      type="default,supl"\r
+      protocol="IPV4V6"\r
+  />\r
+\r
+  <apn carrier="LG U+ MMS"\r
+      mcc="450"\r
+      mnc="06"\r
+      apn="ims.lguplus.co.kr"\r
+      type="ims,mms"\r
+      protocol="IPV4V6"\r
+      mmsc="http://omammsc.uplus.co.kr:9084"\r
+  />\r
+\r
+  <apn carrier="LG U+ Tethering"\r
+      mcc="450"\r
+      mnc="06"\r
+      apn="tethering.lguplus.co.kr"\r
+      type="dun"\r
+      protocol="IPV4V6"\r
+  />\r
+\r
+  <apn carrier="LG U+ Roaming"\r
+      mcc="450"\r
+      mnc="06"\r
+      apn="wroaming.lguplus.co.kr"\r
+      type="default,mms,dun,supl"\r
+      protocol="IPV4V6"\r
+      mmsc="http://omammsc.uplus.co.kr:9084"\r
+      carrier_enabled = "false"\r
+  />\r
+<!--LG U+ Multi-PDN Requirement -->\r
+\r
+  <apn carrier="KCT3G"\r
+      mcc="450"\r
+      mnc="11"\r
+      apn="web.sktelecom.com"\r
+      mmsc="http://omms.nate.com:9082/oma_mms"\r
+      mmsproxy="smart.nate.com"\r
+      mmsport="9093"\r
+      type="default,supl,mms,dun"\r
+  />\r
+\r
+  <apn carrier="KCT (Roaming)"\r
+      mcc="450"\r
+      mnc="11"\r
+      apn="roaming.sktelecom.com"\r
+      server="*"\r
+      mmsc="http://omms.nate.com:9082/oma_mms"\r
+      mmsproxy="smart.nate.com"\r
+      mmsport="9093"\r
+      type="default,supl,mms,dun"\r
+  />\r
+\r
+  <apn carrier="VN MOBIFONE MMS"\r
+      mcc="452"\r
+      mnc="01"\r
+      apn="m-i090"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://203.162.21.114/mmsc"\r
+      mmsproxy="203.162.21.114"\r
+      mmsport="3130"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="VN MOBIFONE Email"\r
+      mcc="452"\r
+      mnc="01"\r
+      apn="m-wap"\r
+      user="mms"\r
+      password="mms"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vinaphone MMS"\r
+      mcc="452"\r
+      mnc="02"\r
+      apn="m3-mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms.vinaphone.com.vn"\r
+      mmsproxy="10.1.10.46"\r
+      mmsport="8000"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vinaphone Email"\r
+      mcc="452"\r
+      mnc="02"\r
+      apn="m3-world"\r
+      user="mms"\r
+      password="mms"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Viettel Email"\r
+      mcc="452"\r
+      mnc="04"\r
+      apn="v-internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Viettel MMS"\r
+      mcc="452"\r
+      mnc="04"\r
+      apn="v-mms"\r
+      mmsc="http://mms.viettelmobile.com.vn/mms/wapenc"\r
+      mmsproxy="192.168.233.10"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vietnamobile Email"\r
+      mcc="452"\r
+      mnc="05"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vietnamobile MMS"\r
+      mcc="452"\r
+      mnc="05"\r
+      apn="mms"\r
+      mmsc="http://10.10.128.58/servlets/mms"\r
+      mmsproxy="10.10.128.44"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="BEELINE Email"\r
+      mcc="452"\r
+      mnc="07"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="BEELINE MMS"\r
+      mcc="452"\r
+      mnc="07"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms"\r
+      mmsproxy="10.16.70.199"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<apn carrier="3gwap"\r
+      mcc="454"\r
+      mnc="07"\r
+      apn="3gwap"\r
+      proxy="10.0.0.172"\r
+      port="80"\r
+      type="default,supl"\r
+  />\r
+\r
+<apn carrier="CSL Data"\r
+      mcc="454"\r
+      mnc="00"\r
+      apn="hkcsl"\r
+      proxy="192.168.59.51"\r
+      port="8080"\r
+      mmsc="http://192.168.58.171:8002"\r
+      mmsproxy="192.168.59.51"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+  <apn carrier="CSL Tethering"\r
+      mcc="454"\r
+      mnc="00"\r
+      apn="internet"\r
+      type="dun"\r
+  />\r
+  <apn carrier="CSL Data"\r
+      mcc="454"\r
+      mnc="02"\r
+      apn="hkcsl"\r
+      proxy="192.168.59.51"\r
+      port="8080"\r
+      mmsc="http://192.168.58.171:8002"\r
+      mmsproxy="192.168.59.51"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="CSL Tethering"\r
+      mcc="454"\r
+      mnc="02"\r
+      apn="internet"\r
+      type="dun"\r
+  />\r
+\r
+\r
+  <apn carrier="CSL Data"\r
+      mcc="454"\r
+      mnc="10"\r
+      apn="hkcsl"\r
+      mmsc="http://192.168.58.171:8002"\r
+      mmsproxy="192.168.59.51"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="CSL Tethering"\r
+      mcc="454"\r
+      mnc="10"\r
+      apn="internet"\r
+      type="dun"\r
+  />\r
+    <apn carrier="CSL Data"\r
+      mcc="454"\r
+      mnc="18"\r
+      apn="hkcsl"\r
+      proxy="192.168.59.51"\r
+      port="8080"\r
+      mmsc="http://192.168.58.171:8002"\r
+      mmsproxy="192.168.59.51"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="CSL Tethering"\r
+      mcc="454"\r
+      mnc="18"\r
+      apn="internet"\r
+      type="dun"\r
+  />\r
+  \r
+<apn carrier="CSL LTE Data"\r
+      mcc="454"\r
+      mnc="00"\r
+      apn="mobile"\r
+      proxy="192.168.59.51"\r
+      port="8080"\r
+      mmsc="http://192.168.58.171:8002"\r
+      mmsproxy="192.168.59.51"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="CSL LTE Tethering"\r
+      mcc="454"\r
+      mnc="00"\r
+      apn="lte.internet"\r
+      type="dun"\r
+  />\r
+\r
+  <apn carrier="CSL LTE Data"\r
+      mcc="454"\r
+      mnc="02"\r
+      apn="mobile"\r
+      proxy="192.168.59.51"\r
+      port="8080"\r
+      mmsc="http://192.168.58.171:8002"\r
+      mmsproxy="192.168.59.51"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="CSL LTE Tethering"\r
+      mcc="454"\r
+      mnc="02"\r
+      apn="lte.internet"\r
+      type="dun"\r
+  />\r
+\r
+\r
+  <apn carrier="CSL LTE Data"\r
+      mcc="454"\r
+      mnc="10"\r
+      apn="mobile"\r
+      mmsc="http://192.168.58.171:8002"\r
+      mmsproxy="192.168.59.51"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="CSL LTE Tethering"\r
+      mcc="454"\r
+      mnc="10"\r
+      apn="lte.internet"\r
+      type="dun"\r
+  />\r
+    <apn carrier="CSL LTE Data"\r
+      mcc="454"\r
+      mnc="18"\r
+      apn="mobile"\r
+      proxy="192.168.59.51"\r
+      port="8080"\r
+      mmsc="http://192.168.58.171:8002"\r
+      mmsproxy="192.168.59.51"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="CSL LTE Tethering"\r
+      mcc="454"\r
+      mnc="18"\r
+      apn="lte.internet"\r
+      type="dun"\r
+  />\r
+\r
+\r
+  <apn carrier="3 LTE"\r
+      mcc="454"\r
+      mnc="03"\r
+      authtype="1"\r
+      apn="mobile.lte.three.com.hk"\r
+      mmsc="http://mms.um.three.com.hk:10021/mmsc"\r
+      mmsproxy="172.20.97.116"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="3 LTE Tethering"\r
+      mcc="454"\r
+      mnc="03"\r
+      authtype="1"\r
+      apn="share.lte.three.com.hk"\r
+      type="dun"\r
+  />\r
+  \r
+  <apn carrier="3"\r
+      mcc="454"\r
+      mnc="03"\r
+      authtype="1"\r
+      apn="mobile.three.com.hk"\r
+      mmsc="http://mms.um.three.com.hk:10021/mmsc"\r
+      mmsproxy="172.20.97.116"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="3 Tethering"\r
+      mcc="454"\r
+      mnc="03"\r
+      authtype="1"\r
+      apn="mobile.three.com.hk"\r
+      type="dun"\r
+  />\r
+  \r
+  <apn carrier="3-DB-MMS"\r
+      mcc="454"\r
+      mnc="04"\r
+      apn="mms-g.three.com.hk"\r
+      mmsc="http://10.30.15.51:10021/mmsc"\r
+      mmsproxy="10.30.15.53"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="3-DB-GPRS"\r
+      mcc="454"\r
+      mnc="04"\r
+      apn="web-g.three.com.hk"\r
+      proxy="10.30.15.53"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+  \r
+  <apn carrier="3-DB-MMS"\r
+      mcc="454"\r
+      mnc="14"\r
+      apn="mms-g.three.com.hk"\r
+      mmsc="http://10.30.15.51:10021/mmsc"\r
+      mmsproxy="10.30.15.53"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="3-DB-GPRS"\r
+      mcc="454"\r
+      mnc="14"\r
+      apn="web-g.three.com.hk"\r
+      proxy="10.30.15.53"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="SmarTone HK"\r
+      mcc="454"\r
+      mnc="06"\r
+      apn="SmarTone"\r
+      mmsc="http://mms.smartone.com/server"\r
+      mmsproxy="10.9.9.9"\r
+      mmsport="8080"\r
+      type="default,supl,mms,dun"\r
+  />\r
+    \r
+    <apn carrier="SmarTone HK"\r
+      mcc="454"\r
+      mnc="15"\r
+      apn="SmarTone"\r
+      mmsc="http://mms.smartone.com/server"\r
+      mmsproxy="10.9.9.9"\r
+      mmsport="8080"\r
+      type="default,supl,mms,dun"\r
+  />\r
+  <apn carrier="SmarTone HK"\r
+      mcc="454"\r
+      mnc="17"\r
+      apn="SmarTone"\r
+      mmsc="http://mms.smartone.com/server"\r
+      mmsproxy="10.9.9.9"\r
+      mmsport="8080"\r
+      type="default,supl,mms,dun"\r
+  />\r
+  \r
+  <apn carrier="SmarTone MAC"\r
+      mcc="455"\r
+      mnc="00"\r
+      apn="smartgprs"\r
+      proxy="10.9.9.29"\r
+      port="8080"\r
+      mmsc="http://mms.smartone.com.mo/dmog/mo"\r
+      mmsproxy="10.9.9.29"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="CMHK MMS"\r
+      mcc="454"\r
+      mnc="12"\r
+      apn="cmhk"\r
+      mmsc="http://mms.hk.chinamobile.com/mms"\r
+      mmsproxy="172.31.31.36"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CMHK DATA"\r
+      mcc="454"\r
+      mnc="12"\r
+      apn="cmhk"\r
+      type="default,supl"\r
+  />\r
+    <apn carrier="CMHK MMS"\r
+      mcc="454"\r
+      mnc="13"\r
+      apn="cmhk"\r
+      mmsc="http://mms.hk.chinamobile.com/mms"\r
+      mmsproxy="172.31.31.36"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CMHK DATA"\r
+      mcc="454"\r
+      mnc="13"\r
+      apn="cmhk"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="PCCW_GPRS"\r
+      mcc="454"\r
+      mnc="16"\r
+      apn="pccwdata"\r
+      proxy="10.131.2.8"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="PCCW_MMS"\r
+      mcc="454"\r
+      mnc="16"\r
+      apn="pccwmms"\r
+      mmsc="http://mmsc.mms.pccwmobile.com:8002/"\r
+      mmsproxy="10.131.2.8"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+    <apn carrier="PCCW 3G"\r
+      mcc="454"\r
+      mnc="19"\r
+      apn="pccw"\r
+      mmsc="http://3gmms.pccwmobile.com:8080/was"\r
+      mmsproxy="10.140.14.10"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+  \r
+  <apn carrier="CTMdata"\r
+      mcc="455"\r
+      mnc="01"\r
+      apn="ctm-mobile"\r
+      proxy="192.168.99.2"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CTM MMS"\r
+      mcc="455"\r
+      mnc="01"\r
+      apn="ctmmms"\r
+      mmsc="http://mms.wap.ctm.net:8002"\r
+      mmsproxy="192.168.99.3"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CTM Prepaid_Data"\r
+      mcc="455"\r
+      mnc="01"\r
+      apn="ctmprepaid"\r
+      proxy="192.168.99.2"\r
+      port="8080"\r
+      mmsc="http://mms.wap.ctm.net:8002"\r
+      mmsproxy="192.168.99.3"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="CTWAP"\r
+      mcc="455"\r
+      mnc="02"\r
+      apn="CTWAP"\r
+      user="ctwap@mycdma.cn"\r
+      password="vnet.mobi"\r
+      authtype="2"\r
+      proxy="10.0.0.200"\r
+      port="80"\r
+      mmsproxy="10.0.0.200"\r
+      mmsport="80"\r
+      mmsc="http://mmsc.vnet.mobi"\r
+      type="*"\r
+      ppp_digit="#777"\r
+      databearer="Packet data bearer"\r
+  />\r
+\r
+  <apn carrier="CTNET"\r
+      mcc="455"\r
+      mnc="02"\r
+      apn="CTNET"\r
+      user="ctnet@mycdma.cn"\r
+      password="vnet.mobi"\r
+      authtype="2"\r
+      proxy=""\r
+      port=""\r
+      mmsproxy=""\r
+      mmsport=""\r
+      mmsc=""\r
+      type="default,supl"\r
+      ppp_digit="#777"\r
+      databearer="Packet data bearer"\r
+  />\r
+  <apn carrier="CTWAP"\r
+      mcc="460"\r
+      mnc="11"\r
+      apn="CTWAP"\r
+      user="ctwap@mycdma.cn"\r
+      password="vnet.mobi"\r
+      authtype="2"\r
+      proxy="10.0.0.200"\r
+      port="80"\r
+      mmsproxy="10.0.0.200"\r
+      mmsport="80"\r
+      mmsc="http://mmsc.vnet.mobi"\r
+      type="*"\r
+      ppp_digit="#777"\r
+      databearer="Packet data bearer"\r
+  />\r
+\r
+  <apn carrier="CTNET"\r
+      mcc="460"\r
+      mnc="11"\r
+      apn="CTNET"\r
+      user="ctnet@mycdma.cn"\r
+      password="vnet.mobi"\r
+      authtype="2"\r
+      proxy=""\r
+      port=""\r
+      mmsproxy=""\r
+      mmsport=""\r
+      mmsc=""\r
+      type="default,supl"\r
+      ppp_digit="#777"\r
+      databearer="Packet data bearer"\r
+  />\r
+\r
+  <apn carrier="CTWAP"\r
+      mcc="460"\r
+      mnc="12"\r
+      apn="CTWAP"\r
+      user="ctwap@mycdma.cn"\r
+      password="vnet.mobi"\r
+      authtype="2"\r
+      proxy="10.0.0.200"\r
+      port="80"\r
+      mmsproxy="10.0.0.200"\r
+      mmsport="80"\r
+      mmsc="http://mmsc.vnet.mobi"\r
+      type="*"\r
+      ppp_digit="#777"\r
+      databearer="Packet data bearer"\r
+  />\r
+\r
+  <apn carrier="CTNET"\r
+      mcc="460"\r
+      mnc="12"\r
+      apn="CTNET"\r
+      user="ctnet@mycdma.cn"\r
+      password="vnet.mobi"\r
+      authtype="2"\r
+      proxy=""\r
+      port=""\r
+      mmsproxy=""\r
+      mmsport=""\r
+      mmsc=""\r
+      type="default,supl"\r
+      ppp_digit="#777"\r
+      databearer="Packet data bearer"\r
+  />\r
+\r
+  <apn carrier="CTM"\r
+      mcc="455"\r
+      mnc="04"\r
+      apn="ctm-mobile"\r
+      proxy="192.168.99.2"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CTM MMS"\r
+      mcc="455"\r
+      mnc="04"\r
+      apn="ctmmms"\r
+      mmsc="http://mms.wap.ctm.net:8002"\r
+      mmsproxy="192.168.99.3"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="3 Macau MMS"\r
+      mcc="455"\r
+      mnc="03"\r
+      apn="mms.hutchisonmacau.com"\r
+      mmsc="http://10.30.15.51:10021/mmsc"\r
+      mmsproxy="10.30.15.53"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="3 Macau"\r
+      mcc="455"\r
+      mnc="03"\r
+      apn="web-g.three.com.hk"\r
+      user="hutchison"\r
+      password="1234"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CMNET"\r
+      mcc="460"\r
+      mnc="00"\r
+      apn="cmnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CMWAP"\r
+      mcc="460"\r
+      mnc="00"\r
+      apn="cmwap"\r
+      proxy="10.0.0.172"\r
+      port="80"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CMMMS"\r
+      mcc="460"\r
+      mnc="00"\r
+      apn="cmwap"\r
+      mmsc="http://mmsc.monternet.com"\r
+      mmsproxy="10.0.0.172"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CMDM"\r
+      mcc="460"\r
+      mnc="00"\r
+      apn="cmdm"\r
+      type="cmdm"\r
+  />\r
+\r
+  <apn carrier="沃宽带用户连接互联网"\r
+      mcc="460"\r
+      mnc="01"\r
+      apn="3gnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="沃宽带用户手机上网"\r
+      mcc="460"\r
+      mnc="01"\r
+      apn="3gwap"\r
+      proxy="10.0.0.172"\r
+      port="80"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="联通彩信"\r
+      mcc="460"\r
+      mnc="01"\r
+      apn="3gwap"\r
+      mmsc="http://mmsc.myuni.com.cn"\r
+      mmsproxy="10.0.0.172"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CMNET"\r
+      mcc="460"\r
+      mnc="02"\r
+      apn="cmnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CMWAP"\r
+      mcc="460"\r
+      mnc="02"\r
+      apn="cmwap"\r
+      proxy="10.0.0.172"\r
+      port="80"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CMMMS"\r
+      mcc="460"\r
+      mnc="02"\r
+      apn="cmwap"\r
+      mmsc="http://mmsc.monternet.com"\r
+      mmsproxy="10.0.0.172"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CMDM"\r
+      mcc="460"\r
+      mnc="02"\r
+      apn="cmdm"\r
+      type="cmdm"\r
+  />\r
+\r
+  <apn carrier="CTWAP"\r
+      mcc="460"\r
+      mnc="03"\r
+      apn="CTWAP"\r
+      user="ctwap@mycdma.cn"\r
+      password="vnet.mobi"\r
+      authtype="2"\r
+      proxy="10.0.0.200"\r
+      port="80"\r
+      mmsproxy="10.0.0.200"\r
+      mmsport="80"\r
+      mmsc="http://mmsc.vnet.mobi"\r
+      type="*"\r
+      ppp_digit="#777"\r
+      databearer="Packet data bearer"\r
+  />\r
+\r
+  <apn carrier="CTNET"\r
+      mcc="460"\r
+      mnc="03"\r
+      apn="CTNET"\r
+      user="ctnet@mycdma.cn"\r
+      password="vnet.mobi"\r
+      authtype="2"\r
+      proxy=""\r
+      port=""\r
+      mmsproxy=""\r
+      mmsport=""\r
+      mmsc=""\r
+      type="default,supl"\r
+      ppp_digit="#777"\r
+      databearer="Packet data bearer"\r
+  />\r
+\r
+  <apn carrier="CMNET"\r
+      mcc="460"\r
+      mnc="07"\r
+      apn="cmnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CMWAP"\r
+      mcc="460"\r
+      mnc="07"\r
+      apn="cmwap"\r
+      proxy="10.0.0.172"\r
+      port="80"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CMMMS"\r
+      mcc="460"\r
+      mnc="07"\r
+      apn="cmwap"\r
+      mmsc="http://mmsc.monternet.com"\r
+      mmsproxy="10.0.0.172"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CMDM"\r
+      mcc="460"\r
+      mnc="07"\r
+      apn="cmdm"\r
+      type="cmdm"\r
+  />\r
+\r
+  <apn carrier="CMNET"\r
+      mcc="460"\r
+      mnc="08"\r
+      apn="cmnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CMWAP"\r
+      mcc="460"\r
+      mnc="08"\r
+      apn="cmwap"\r
+      proxy="10.0.0.172"\r
+      port="80"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CMMMS"\r
+      mcc="460"\r
+      mnc="08"\r
+      apn="cmwap"\r
+      mmsc="http://mmsc.monternet.com"\r
+      mmsproxy="10.0.0.172"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CMDM"\r
+      mcc="460"\r
+      mnc="08"\r
+      apn="cmdm"\r
+      type="cmdm"\r
+  />\r
+\r
+  <apn carrier="沃宽带用户连接互联网"\r
+      mcc="460"\r
+      mnc="09"\r
+      apn="3gnet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="沃宽带用户手机上网"\r
+      mcc="460"\r
+      mnc="09"\r
+      apn="3gwap"\r
+      proxy="10.0.0.172"\r
+      port="80"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="联通彩信"\r
+      mcc="460"\r
+      mnc="09"\r
+      apn="3gwap"\r
+      mmsc="http://mmsc.myuni.com.cn"\r
+      mmsproxy="10.0.0.172"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="FET MMS"\r
+      mcc="466"\r
+      mnc="01"\r
+      apn="fetnet01"\r
+      mmsc="http://mms"\r
+      mmsproxy="210.241.199.199"\r
+      mmsport="9201"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="FET Internet"\r
+      mcc="466"\r
+      mnc="01"\r
+      apn="internet"\r
+      proxy="210.241.199.199"\r
+      port="9201"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="KGT Internet"\r
+      mcc="466"\r
+      mnc="88"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="KGT GPRS"\r
+      mcc="466"\r
+      mnc="88"\r
+      apn="internet"\r
+      proxy="210.241.199.199"\r
+      port="9201"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="KGT MMS"\r
+      mcc="466"\r
+      mnc="88"\r
+      apn="kgtmms"\r
+      mmsc="http://mms.kgtmms.net.tw/mms/wapenc"\r
+      mmsproxy="172.28.33.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="VIBO Internet"\r
+      mcc="466"\r
+      mnc="89"\r
+      apn="vibo"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VIBO GPRS"\r
+      mcc="466"\r
+      mnc="89"\r
+      apn="vibo"\r
+      proxy="172.24.128.36"\r
+      port="8080"\r
+      mmsc="http://mms"\r
+      mmsproxy="172.24.128.36"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="VIBOONE"\r
+      mcc="466"\r
+      mnc="89"\r
+      apn="viboone"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CHT Internet"\r
+      mcc="466"\r
+      mnc="92"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CHT MMS"\r
+      mcc="466"\r
+      mnc="92"\r
+      apn="emome"\r
+      mmsc="http://mms.emome.net:8002"\r
+      mmsproxy="10.1.1.1"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TWM Internet"\r
+      mcc="466"\r
+      mnc="93"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TWM match"\r
+      mcc="466"\r
+      mnc="93"\r
+      apn="twm"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TWM MMS"\r
+      mcc="466"\r
+      mnc="93"\r
+      apn="mms"\r
+      mmsc="http://mms.catch.net.tw"\r
+      mmsproxy="10.1.1.2"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TWM Internet"\r
+      mcc="466"\r
+      mnc="97"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TWM match"\r
+      mcc="466"\r
+      mnc="97"\r
+      apn="twm"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TWM MMS"\r
+      mcc="466"\r
+      mnc="97"\r
+      apn="mms"\r
+      mmsc="http://mms.catch.net.tw"\r
+      mmsproxy="10.1.1.2"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TWM Internet"\r
+      mcc="466"\r
+      mnc="99"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TWM match"\r
+      mcc="466"\r
+      mnc="99"\r
+      apn="twm"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TWM MMS"\r
+      mcc="466"\r
+      mnc="99"\r
+      apn="mms"\r
+      mmsc="http://mms.catch.net.tw"\r
+      mmsproxy="10.1.1.2"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Maxis 3G Internet"\r
+      mcc="502"\r
+      mnc="12"\r
+      apn="unet"\r
+      user="maxis"\r
+      password="wap"\r
+      mmsc="http://172.16.74.100:10021/mmsc"\r
+      mmsproxy="202.75.133.49"\r
+      mmsport="80"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Maxis Internet"\r
+      mcc="502"\r
+      mnc="12"\r
+      apn="net"\r
+      user="maxis"\r
+      password="wap"\r
+      mmsc="http://172.16.74.100:10021/mmsc"\r
+      mmsproxy="202.75.133.49"\r
+      mmsport="80"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="DiGi MMS"\r
+      mcc="502"\r
+      mnc="16"\r
+      apn="digimms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms.digi.com.my/servlets/mms"\r
+      mmsproxy="203.92.128.160"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="DiGi Internet"\r
+      mcc="502"\r
+      mnc="16"\r
+      apn="diginet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="U Mobile Internet"\r
+      mcc="502"\r
+      mnc="18"\r
+      apn="my3g"\r
+      mmsc="http://10.30.3.11/servlets/mms"\r
+      mmsproxy="10.30.5.11"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Celcom 3G Internet"\r
+      mcc="502"\r
+      mnc="19"\r
+      apn="celcom3g"\r
+      mmsc="http://mms.celcom.net.my"\r
+      mmsproxy="10.128.1.242"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Celcom Internet"\r
+      mcc="502"\r
+      mnc="19"\r
+      apn="celcom.net.my"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Celcom MMS"\r
+      mcc="502"\r
+      mnc="19"\r
+      apn="mms.celcom.net.my"\r
+      mmsc="http://mms.celcom.net.my"\r
+      mmsproxy="10.128.1.242"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <!-- Samsung edit -->\r
+  <!-- Change telstra's apn name -->\r
+  <apn carrier="Telstra MMS"\r
+      mcc="505"\r
+      mnc="01"\r
+      apn="telstra.mms"\r
+      mmsc="http://mmsc.telstra.com:8002"\r
+      mmsproxy="10.1.1.180"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <!-- Samsung edit -->\r
+  <!-- Change telstra's apn name -->\r
+  <apn carrier="Telstra Internet"\r
+      mcc="505"\r
+      mnc="01"\r
+      apn="telstra.wap"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Optus Yes Internet"\r
+      mcc="505"\r
+      mnc="02"\r
+      apn="yesinternet"\r
+      type="default,supl,dun"\r
+  />\r
+  \r
+  <apn carrier="Optus Internet"\r
+      mcc="505"\r
+      mnc="02"\r
+      apn="internet"\r
+      type="default"\r
+  />\r
+  \r
+  <apn carrier="Optus Business Mobile Broadband"\r
+      mcc="505"\r
+      mnc="02"\r
+      apn="yesbusiness"\r
+      type="default"\r
+  />\r
+\r
+  <apn carrier="Optus MMS"\r
+      mcc="505"\r
+      mnc="02"\r
+      apn="mms"\r
+      mmsc="http://mmsc.optus.com.au:8002/"\r
+      mmsproxy="61.88.190.10"\r
+      mmsport="8070"\r
+      type="mms"\r
+  />\r
+\r
+  <!-- Samsung edit -->\r
+  <!-- delete dummy apn of Optus Internet-->\r
+\r
+\r
+  <!-- Samsung edit -->\r
+  <!-- Change apn of Voda Austrailia (50503)-->\r
+  <apn carrier="Vodafone AU"\r
+      mcc="505"\r
+      mnc="03"\r
+      apn="live.vodafone.com"\r
+      mmsc="http://pxt.vodafone.net.au/pxtsend"\r
+      mmsproxy="10.202.2.60"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <!-- Samsung edit -->\r
+  <!-- Change apn of Voda Austrailia (50506)-->\r
+  <apn carrier="Vodafone live!"  \r
+      mcc="505"\r
+      mnc="06"\r
+      apn="live.vodafone.com"\r
+      proxy="10.202.2.60"\r
+      port="8080"\r
+      mmsc="http://pxt.vodafone.net.au/pxtsend"\r
+      mmsproxy="10.202.2.60"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="VF AU PXT"\r
+      mcc="505"\r
+      mnc="07"\r
+      apn="live.vodafone.com"\r
+      mmsc="http://pxt.vodafone.net.au/pxtsend"\r
+      mmsproxy="10.202.2.60"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="VF Internet"\r
+      mcc="505"\r
+      mnc="07"\r
+      apn="vfinternet.au"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Telstra MMS"\r
+      mcc="505"\r
+      mnc="11"\r
+      apn="Telstra.mms"\r
+      mmsc="http://mmsc.telstra.com:8002"\r
+      mmsproxy="10.1.1.180"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Telstra Internet"\r
+      mcc="505"\r
+      mnc="11"\r
+      apn="Telstra.wap"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="3Internet"\r
+      mcc="505"\r
+      mnc="12"\r
+      apn="3netaccess"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="3"\r
+      mcc="505"\r
+      mnc="12"\r
+      apn="3services"\r
+      mmsc="http://mmsc.three.net.au:10021/mmsc"\r
+      mmsproxy="10.176.57.25"\r
+      mmsport="8799"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Telstra MMS"\r
+      mcc="505"\r
+      mnc="71"\r
+      apn="Telstra.mms"\r
+      mmsc="http://mmsc.telstra.com:8002"\r
+      mmsproxy="10.1.1.180"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Telstra Internet"\r
+      mcc="505"\r
+      mnc="71"\r
+      apn="Telstra.wap"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Telstra MMS"\r
+      mcc="505"\r
+      mnc="72"\r
+      apn="Telstra.mms"\r
+      mmsc="http://mmsc.telstra.com:8002"\r
+      mmsproxy="10.1.1.180"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Telstra Internet"\r
+      mcc="505"\r
+      mnc="72"\r
+      apn="Telstra.wap"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VF AU PXT"\r
+      mcc="505"\r
+      mnc="88"\r
+      apn="live.vodafone.com"\r
+      mmsc="http://pxt.vodafone.net.au/pxtsend"\r
+      mmsproxy="10.202.2.60"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="VF Internet"\r
+      mcc="505"\r
+      mnc="88"\r
+      apn="vfinternet.au"\r
+      mmsc="http://pxt.vodafone.net.au/pxtsend"\r
+      mmsproxy="10.202.2.60"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Optus Internet"\r
+      mcc="505"\r
+      mnc="90"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Optus MMS"\r
+      mcc="505"\r
+      mnc="90"\r
+      apn="mms"\r
+      mmsc="http://mmsc.optus.com.au:8002/"\r
+      mmsproxy="61.88.190.10"\r
+      mmsport="8070"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="ISAT BB INTERNET"\r
+      mcc="510"\r
+      mnc="01"\r
+      apn="indosat3g"\r
+      user="indosat"\r
+      password="indosat"\r
+      proxy="10.19.19.19"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="ISAT WAP"\r
+      mcc="510"\r
+      mnc="01"\r
+      apn="indosatgprs"\r
+      user="indosat"\r
+      password="indosat"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="ISAT MMS"\r
+      mcc="510"\r
+      mnc="01"\r
+      apn="indosatmms"\r
+      user="indosat"\r
+      password="indosat"\r
+      mmsc="http://mmsc.indosat.com"\r
+      mmsproxy="10.19.19.19"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AXISinternet"\r
+      mcc="510"\r
+      mnc="08"\r
+      apn="AXIS"\r
+      user="AXIS"\r
+      password="123456"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="AXIS MMS"\r
+      mcc="510"\r
+      mnc="08"\r
+      apn="axismms"\r
+      user="axis"\r
+      password="123456"\r
+      mmsc="http://mmsc.axis"\r
+      mmsproxy="10.8.3.8"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Telkomsel GPRS WEB"\r
+      mcc="510"\r
+      mnc="10"\r
+      apn="internet"\r
+      user="wap"\r
+      password="wap123"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TSEL MMS"\r
+      mcc="510"\r
+      mnc="10"\r
+      apn="mms"\r
+      user="wap"\r
+      password="wap123"\r
+      mmsc="http://mms.telkomsel.com"\r
+      mmsproxy="10.1.89.150"\r
+      mmsport="8000"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="XL GPRS"\r
+      mcc="510"\r
+      mnc="11"\r
+      apn="www.xlgprs.net"\r
+      user="xlgprs"\r
+      password="proxl"\r
+      mmsc="http://mmc.xl.net.id/servlets/mms"\r
+      mmsproxy="202.152.240.50"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="XL Unlimited"\r
+      mcc="510"\r
+      mnc="11"\r
+      apn="xlunlimited"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="ISAT M3 INTERNET"\r
+      mcc="510"\r
+      mnc="21"\r
+      apn="indosatgprs"\r
+      user="indosat"\r
+      password="indosat"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="ISAT BB MMS"\r
+      mcc="510"\r
+      mnc="01"\r
+      apn="indosatmms"\r
+      user="indosat"\r
+      password="indosat"\r
+      mmsc="http://mmsc.indosat.com"\r
+      mmsproxy="10.19.19.19"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="3 GPRS"\r
+      mcc="510"\r
+      mnc="89"\r
+      apn="3gprs"\r
+      user="3gprs"\r
+      password="3gprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="3 MMS"\r
+      mcc="510"\r
+      mnc="89"\r
+      apn="3mms"\r
+      user="3mms"\r
+      password="3mms"\r
+      mmsc="http://mms.three.co.id"\r
+      mmsproxy="10.4.0.10"\r
+      mmsport="3128"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="myGlobe Internet Postpaid"\r
+      mcc="515"\r
+      mnc="02"\r
+      apn="internet.globe.com.ph"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="myGlobe Internet Prepaid"\r
+      mcc="515"\r
+      mnc="02"\r
+      apn="http.globe.com.ph"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="myGlobe MMS"\r
+      mcc="515"\r
+      mnc="02"\r
+      apn="mms.globe.com.ph"\r
+      mmsc="http://192.40.100.22:10021/mmsc"\r
+      mmsproxy="203.177.42.214"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Smart Internet"\r
+      mcc="515"\r
+      mnc="03"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="SmartMMS"\r
+      mcc="515"\r
+      mnc="03"\r
+      apn="mms"\r
+      mmsc="http://10.102.61.238:8002"\r
+      mmsproxy="10.102.61.46"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="SUN INTERNET"\r
+      mcc="515"\r
+      mnc="05"\r
+      apn="minternet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="SUN MMS"\r
+      mcc="515"\r
+      mnc="05"\r
+      apn="mms"\r
+      mmsc="http://mmscenter.suncellular.com.ph"\r
+      mmsproxy="202.138.159.78"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="RED INTERNET"\r
+      mcc="515"\r
+      mnc="18"\r
+      apn="redinternet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="RED MMS"\r
+      mcc="515"\r
+      mnc="18"\r
+      apn="redmms"\r
+      mmsc="http://10.102.61.193:8002/mmsc"\r
+      mmsproxy="10.138.3.35"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="AIS Internet"\r
+      mcc="520"\r
+      mnc="01"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="AIS MMS"\r
+      mcc="520"\r
+      mnc="01"\r
+      apn="multimedia"\r
+      mmsc="http://mms.mobilelife.co.th"\r
+      mmsproxy="203.170.229.34"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="DTAC MMS"\r
+      mcc="520"\r
+      mnc="18"\r
+      apn="mms"\r
+      mmsc="http://mms.dtac.co.th:8002/"\r
+      mmsproxy="203.155.200.133"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="DTAC Internet"\r
+      mcc="520"\r
+      mnc="18"\r
+      apn="www.dtac.co.th"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="True GPRS Inet"\r
+      mcc="520"\r
+      mnc="99"\r
+      apn="internet"\r
+      user="true"\r
+      password="true"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="True GPRS MMS"\r
+      mcc="520"\r
+      mnc="99"\r
+      apn="mms"\r
+      user="true"\r
+      password="true"\r
+      mmsc="http://mms.trueworld.net:8002/"\r
+      mmsproxy="10.4.7.39"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung Edit -->\r
+<!-- Cahnge carrier's name and value -->\r
+  <apn carrier="IDEAS E-mail"\r
+      mcc="525"\r
+      mnc="01"\r
+      apn="e-ideas"\r
+      mmsc="http://mms.singtel.com:10021/mmsc"\r
+      mmsproxy="165.21.42.84"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="SingTel Ims"\r
+      mcc="525"\r
+      mnc="01"\r
+      apn="ims"\r
+      type="ims"\r
+      authtype="1"\r
+      protocol="IPV4"\r
+  />\r
+\r
+<!-- Samsung Edit -->\r
+<!-- Cahnge carrier's name and value -->\r
+  <apn carrier="IDEAS E-mail"\r
+      mcc="525"\r
+      mnc="02"\r
+      apn="e-ideas"\r
+      mmsc="http://mms.singtel.com:10021/mmsc"\r
+      mmsproxy="165.21.42.84"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="SingTel Ims"\r
+      mcc="525"\r
+      mnc="02"\r
+      apn="ims"\r
+      type="ims"\r
+      authtype="1"\r
+      protocol="IPV4"\r
+  />\r
+\r
+  <apn carrier="M1 MMS"\r
+      mcc="525"\r
+      mnc="03"\r
+      apn="miworld"\r
+      user="65"\r
+      password="user123"\r
+      mmsc="http://mmsgw:8002"\r
+      mmsproxy="172.16.14.10"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="M1 E-mail"\r
+      mcc="525"\r
+      mnc="03"\r
+      apn="sunsurf"\r
+      user="65"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Gee!3G/GPRS"\r
+      mcc="525"\r
+      mnc="05"\r
+      apn="shwap"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Gee!MMS"\r
+      mcc="525"\r
+      mnc="05"\r
+      apn="shmms"\r
+      mmsc="http://mms.starhubgee.com.sg:8002"\r
+      mmsproxy="10.12.1.80"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="VFNZ PXT"\r
+      mcc="530"\r
+      mnc="01"\r
+      apn="live.vodafone.com"\r
+      mmsc="http://pxt.vodafone.net.nz/pxtsend"\r
+      mmsproxy="172.30.38.3"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="VFNZ Internet"\r
+      mcc="530"\r
+      mnc="01"\r
+      apn="www.vodafone.net.nz"\r
+      type="default,supl"\r
+  />\r
+\r
+  <!-- Samsung edit -->\r
+  <!-- Change apn of TNZ-->\r
+  <apn carrier="TelecomDefault"\r
+      mcc="530"\r
+      mnc="05"\r
+      apn="wap.telecom.co.nz"\r
+      mmsc="http://lsmmsc.xtra.co.nz"\r
+      mmsproxy="210.55.11.73"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="2degrees Internet"\r
+      mcc="530"\r
+      mnc="24"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="2degrees MMS"\r
+      mcc="530"\r
+      mnc="24"\r
+      apn="mms"\r
+      mmsc="http://mms.2degreesmobile.net.nz:48090"\r
+      mmsproxy="118.148.1.118"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Mobinil Web"\r
+      mcc="602"\r
+      mnc="01"\r
+      apn="MobinilWeb"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Mobinil MMS"\r
+      mcc="602"\r
+      mnc="01"\r
+      apn="mobinilmms"\r
+      mmsc="http://10.7.13.24:8002/"\r
+      mmsproxy="62.241.155.45"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="VF internet"\r
+      mcc="602"\r
+      mnc="02"\r
+      apn="internet.vodafone.net"\r
+      user="internet"\r
+      password="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VF MMS"\r
+      mcc="602"\r
+      mnc="02"\r
+      apn="mms.vodafone.com.eg"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms.vodafone.com.eg/servlets/mms"\r
+      mmsproxy="163.121.178.2"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Etisalat internet"\r
+      mcc="602"\r
+      mnc="03"\r
+      apn="Etisalat"\r
+      mmsc="http://10.71.131.7:38090"\r
+      mmsproxy="10.71.130.29"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <!-- Samsung edit -->\r
+  <!-- Add Tunisia Orange APN -->\r
+  <apn carrier="weborange"\r
+      mcc="605"\r
+      mnc="01"\r
+      apn="weborange"\r
+      type="default,supl"\r
+  />\r
+\r
+  <!-- Samsung edit -->\r
+  <!-- Add Tunisia Orange APN -->\r
+  <apn carrier="Orange MMS"\r
+      mcc="605"\r
+      mnc="01"\r
+      apn="mms.otun"\r
+      mmsc="http://mms.orange.tn"\r
+      mmsproxy="10.12.1.52"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="mobinet"\r
+      mcc="605"\r
+      mnc="02"\r
+      apn="gprs.tn"\r
+      user="gprs"\r
+      password="gprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS"\r
+      mcc="605"\r
+      mnc="02"\r
+      apn="mms.tn"\r
+      user="mms@tt1"\r
+      password="mms"\r
+      mmsc="http://"\r
+      mmsproxy="192.168.0.2"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="internet Tunisiana"\r
+      mcc="605"\r
+      mnc="03"\r
+      apn="internet.tunisiana.com"\r
+      user="internet"\r
+      password="internet"\r
+      proxy="10.3.2.99"\r
+      port="80"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS Tunisiana"\r
+      mcc="605"\r
+      mnc="03"\r
+      apn="mms.tunisiana.com"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mmsc.tunisiana.com"\r
+      mmsproxy="10.3.2.100"\r
+      mmsport="80"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Zain Mobile Internet"\r
+      mcc="621"\r
+      mnc="20"\r
+      apn="internet.ng.Zain.com"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Zain MMS"\r
+      mcc="621"\r
+      mnc="20"\r
+      apn="mms.ng.zain.com"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://172.23.1.12/mms/wapenc"\r
+      mmsproxy="172.18.254.5"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="MTN GPRS"\r
+      mcc="621"\r
+      mnc="30"\r
+      apn="web.gprs.mtnnigeria.net"\r
+      user="web"\r
+      password="web"\r
+      proxy="10.199.212.2"\r
+      port="8080"\r
+      mmsc="http://10.199.212.8/servlets/mms"\r
+      mmsproxy="10.199.212.2"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="glo direct"\r
+      mcc="621"\r
+      mnc="50"\r
+      apn="glosecure"\r
+      user="gprs"\r
+      password="gprs"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="glo mms"\r
+      mcc="621"\r
+      mnc="50"\r
+      apn="glomms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms.gloworld.com/mmsc"\r
+      mmsproxy="10.100.82.4"\r
+      mmsport="9201"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Etisalat Internet"\r
+      mcc="621"\r
+      mnc="60"\r
+      apn="etisalat"\r
+      mmsc="http://10.71.170.30:38090/was"\r
+      mmsproxy="10.71.170.5"\r
+      mmsport="8080"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="SafaricomBrowse"\r
+      mcc="639"\r
+      mnc="02"\r
+      apn="Safaricom"\r
+      user="saf"\r
+      password="data"\r
+      proxy="172.22.2.38"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="SafaricomMMS"\r
+      mcc="639"\r
+      mnc="02"\r
+      apn="Safaricom"\r
+      user="saf"\r
+      password="data"\r
+      mmsc="http://mms.gprs.safaricom.com"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Zain WAP"\r
+      mcc="639"\r
+      mnc="03"\r
+      apn="wap.ke.celtel.com"\r
+      user="wap"\r
+      password="wap"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Zain MMS"\r
+      mcc="639"\r
+      mnc="03"\r
+      apn="mms.ke.celtel.com"\r
+      user="wap"\r
+      password="wap"\r
+      mmsc="http://mms.ke.celtel.com/servlets/mms"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Orange Internet"\r
+      mcc="639"\r
+      mnc="07"\r
+      apn="wap.orange.co.ke"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Orange MMS"\r
+      mcc="639"\r
+      mnc="07"\r
+      apn="mms.orange.co.ke"\r
+      mmsc="http://10.36.16.5/servlets/mms"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodacom WAP"\r
+      mcc="640"\r
+      mnc="04"\r
+      apn="Wap"\r
+      proxy="10.154.0.8"\r
+      port="9401"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vodacom MMS"\r
+      mcc="640"\r
+      mnc="04"\r
+      apn="mms"\r
+      mmsc="http://10.154.0.12/mms/"\r
+      type="mms"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The apns for Orange should be changed like below (Confirmed by operator) -->\r
+  <apn carrier="Orange World re"\r
+      mcc="647"\r
+      mnc="00"\r
+      apn="orangerun"\r
+      user="orange"\r
+      password="orange"\r
+      type="default,supl"\r
+  />\r
+\r
+<!-- Samsung edit -->\r
+<!-- The apns for Orange should be changed like below (Confirmed by operator) -->\r
+  <apn carrier="Orange MMS Runion"\r
+      mcc="647"\r
+      mnc="00"\r
+      apn="orangerun.acte"\r
+      user="orange"\r
+      password="orange"\r
+      mmsc="http://mms.orange.re"\r
+      mmsproxy="192.168.10.200"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="MMS"\r
+      mcc="647"\r
+      mnc="10"\r
+      apn="mmssfr"\r
+      user="mms"\r
+      password="mms"\r
+      mmsc="http://mms"\r
+      mmsproxy="10.0.224.145"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="GPRS SRR"\r
+      mcc="647"\r
+      mnc="10"\r
+      apn="wapsfr"\r
+      user="wap"\r
+      password="wap"\r
+      proxy="10.0.224.161"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VCL Internet GPRS"\r
+      mcc="651"\r
+      mnc="01"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VCL MMS GPRS"\r
+      mcc="651"\r
+      mnc="01"\r
+      apn="mms"\r
+      proxy="10.113.63.11"\r
+      port="8080"\r
+      mmsc="http://mmsc.vodacom4me.co.ls"\r
+      mmsproxy="10.113.63.11"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vodacom"\r
+      mcc="655"\r
+      mnc="01"\r
+      apn="internet"\r
+      proxy="196.6.128.12"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS.Vodacom"\r
+      mcc="655"\r
+      mnc="01"\r
+      apn="mms.vodacom.net"\r
+      proxy="196.6.128.13"\r
+      port="8080"\r
+      mmsc="http://mmsc.vodacom4me.co.za/"\r
+      mmsproxy="196.6.128.13"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="8.ta internet"\r
+      mcc="655"\r
+      mnc="02"\r
+      apn="internet"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="8.ta mms"\r
+      mcc="655"\r
+      mnc="02"\r
+      apn="mms"\r
+      proxy="41.151.254.162"\r
+      port="8080"\r
+      mmsc="http://mms.8ta.com:38090/was"\r
+      mmsproxy="41.151.254.162"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Smartdata"\r
+      mcc="655"\r
+      mnc="07"\r
+      apn="internet"\r
+      proxy="196.31.116.250"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Cell C MMS"\r
+      mcc="655"\r
+      mnc="07"\r
+      apn="mms"\r
+      proxy="196.31.116.250"\r
+      port="8080"\r
+      mmsc="http://mms.cmobile.co.za"\r
+      mmsproxy="196.31.116.250"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="virgin_internet"\r
+      mcc="655"\r
+      mnc="07"\r
+      apn="vdata"\r
+      proxy="196.31.116.241"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="virgin_mms"\r
+      mcc="655"\r
+      mnc="07"\r
+      apn="vmms"\r
+      proxy="196.31.116.242"\r
+      port="8080"\r
+      mmsc="http://mms.virginmobile.co.za"\r
+      mmsproxy="196.31.116.242"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="MTN MMS"\r
+      mcc="655"\r
+      mnc="10"\r
+      apn="myMTN"\r
+      user="mtnmms"\r
+      password="mtnmms"\r
+      proxy="196.11.240.241"\r
+      port="8080"\r
+      mmsc="http://mms.mtn.co.za/mms/wapenc"\r
+      mmsproxy="196.11.240.241"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="MTN Data"\r
+      mcc="655"\r
+      mnc="10"\r
+      apn="myMTN"\r
+      user="mtn"\r
+      proxy="196.11.240.251"\r
+      port="8080"\r
+      type="default,supl"\r
+  />\r
+\r
+  <!--Start(3): Latin America-->\r
+  <apn carrier="INTERNET CLARO"\r
+      mcc="704"\r
+      mnc="01"\r
+      apn="internet.ideasclaro"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS CLARO"\r
+      mcc="704"\r
+      mnc="01"\r
+      apn="mms.ideasclaro"\r
+      user=""\r
+      password=""\r
+      mmsproxy="216.230.133.66"\r
+      mmsport="8080"\r
+      mmsc="http://mms.ideasclaro.com:8002"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="BROADBAND TIGO"\r
+      mcc="704"\r
+      mnc="02"\r
+      apn="broadband.tigo.gt"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS TIGO"\r
+      mcc="704"\r
+      mnc="02"\r
+      apn="mms.tigo.gt"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.16.17.12"\r
+      mmsport="8888"\r
+      mmsc="http://mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Movistar INTERNET"\r
+      mcc="704"\r
+      mnc="03"\r
+      apn="internet.movistar.gt"\r
+      user="movistargt"\r
+      password="movistargt"\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Movistar MMS"\r
+      mcc="704"\r
+      mnc="03"\r
+      apn="mms.movistar.gt"\r
+      user="movistargt"\r
+      password="movistargt"\r
+      mmsproxy="10.12.22.1"\r
+      mmsport="80"\r
+      mmsc="http://mms.movistar.gt"\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Movistar INTERNET"\r
+      mcc="704"\r
+      mnc="030"\r
+      apn="internet.movistar.gt"\r
+      user="movistargt"\r
+      password="movistargt"\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Movistar MMS"\r
+      mcc="704"\r
+      mnc="030"\r
+      apn="mms.movistar.gt"\r
+      user="movistargt"\r
+      password="movistargt"\r
+      mmsproxy="10.12.22.1"\r
+      mmsport="80"\r
+      mmsc="http://mms.movistar.gt"\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="INTERNET CLARO"\r
+      mcc="706"\r
+      mnc="01"\r
+      apn="internet.ideasclaro"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS CLARO"\r
+      mcc="706"\r
+      mnc="01"\r
+      apn="mms.ideasclaro"\r
+      user=""\r
+      password=""\r
+      mmsproxy="216.230.133.66"\r
+      mmsport="8080"\r
+      mmsc="http://mms.ideasclaro.com:8002"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Web Digicel"\r
+      mcc="706"\r
+      mnc="02"\r
+      apn="web.digicelsv.com"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS Digicel"\r
+      mcc="706"\r
+      mnc="02"\r
+      apn="wap.digicelsv.com"\r
+      user=""\r
+      password=""\r
+      mmsproxy="172.26.5.12"\r
+      mmsport="8080"\r
+      mmsc="http://172.26.5.132/servlets/mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="INTERNET TIGO"\r
+      mcc="706"\r
+      mnc="03"\r
+      apn="internet.tigo.sv"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS TIGO"\r
+      mcc="706"\r
+      mnc="03"\r
+      apn="mms.tigo.sv"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.16.17.12"\r
+      mmsport="8888"\r
+      mmsc="http://mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Movistar INTERNET"\r
+      mcc="706"\r
+      mnc="04"\r
+      apn="internet.movistar.sv"\r
+      user="movistarsv"\r
+      password="movistarsv"\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Movistar MMS"\r
+      mcc="706"\r
+      mnc="04"\r
+      apn="mms.movistar.sv"\r
+      user="movistarsv"\r
+      password="movistarsv"\r
+      mmsproxy="10.12.20.1"\r
+      mmsport="80"\r
+      mmsc="http://mms.movistar.sv"\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Movistar INTERNET"\r
+      mcc="706"\r
+      mnc="040"\r
+      apn="internet.movistar.sv"\r
+      user="movistarsv"\r
+      password="movistarsv"\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Movistar MMS"\r
+      mcc="706"\r
+      mnc="040"\r
+      apn="mms.movistar.sv"\r
+      user="movistarsv"\r
+      password="movistarsv"\r
+      mmsproxy="10.12.20.1"\r
+      mmsport="80"\r
+      mmsc="http://mms.movistar.sv"\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Internet Claro"\r
+      mcc="708"\r
+      mnc="001"\r
+      apn="internet.ideasclaro"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS Claro"\r
+      mcc="708"\r
+      mnc="001"\r
+      apn="mms.ideasclaro"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.6.32.2"\r
+      mmsport="8080"\r
+      mmsc="http://10.6.32.27/servlets/mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="INTERNET TIGO"\r
+      mcc="708"\r
+      mnc="02"\r
+      apn="internet.tigo.hn"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS TIGO"\r
+      mcc="708"\r
+      mnc="02"\r
+      apn="mms.tigo.hn"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.16.17.12"\r
+      mmsport="8888"\r
+      mmsc="http://mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="INTERNET TIGO"\r
+      mcc="708"\r
+      mnc="020"\r
+      apn="internet.tigo.hn"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS TIGO"\r
+      mcc="708"\r
+      mnc="020"\r
+      apn="mms.tigo.hn"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.16.17.12"\r
+      mmsport="8888"\r
+      mmsc="http://mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="INTERNET"\r
+      mcc="710"\r
+      mnc="21"\r
+      apn="web.emovil"\r
+      user="webemovil"\r
+      password="webemovil"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="MMS"\r
+      mcc="710"\r
+      mnc="21"\r
+      apn="mms.emovil"\r
+      user="mmsemovil"\r
+      password="mmsemovil"\r
+      mmsproxy="10.6.32.2"\r
+      mmsport="8080"\r
+      mmsc="http://10.6.32.27/servlets/mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Movistar INTERNET"\r
+      mcc="710"\r
+      mnc="300"\r
+      apn="internet.movistar.ni"\r
+      user="movistarni"\r
+      password="movistarni"\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Movistar MMS"\r
+      mcc="710"\r
+      mnc="300"\r
+      apn="mms.movistar.ni"\r
+      user="movistarni"\r
+      password="movistarni"\r
+      mmsproxy="10.12.23.1"\r
+      mmsport="80"\r
+      mmsc="http://mms.movistar.ni"\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+\r
+\r
+  <apn carrier="INTERNET"\r
+      mcc="710"\r
+      mnc="730"\r
+      apn="web.emovil"\r
+      user="webemovil"\r
+      password="webemovil"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS"\r
+      mcc="710"\r
+      mnc="730"\r
+      apn="mms.emovil"\r
+      user="mmsemovil"\r
+      password="mmsemovil"\r
+      mmsproxy="10.6.32.2"\r
+      mmsport="8080"\r
+      mmsc="http://10.6.32.27/servlets/mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Kolbi"\r
+      mcc="712"\r
+      mnc="01"\r
+      apn="kolbi3g"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      mmsproxy="10.184.202.24"\r
+      mmsport="8080"\r
+      mmsc="http://mmsice"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Kolbi"\r
+      mcc="712"\r
+      mnc="02"\r
+      apn="kolbi3g"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      mmsproxy="10.184.202.24"\r
+      mmsport="8080"\r
+      mmsc="http://mmsice"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+ <apn carrier="INTERNET CLARO"\r
+      mcc="712"\r
+      mnc="03"\r
+      apn="internet.ideasclaro"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS CLARO"\r
+      mcc="712"\r
+      mnc="03"\r
+      apn="mms.ideasclaro"\r
+      user=""\r
+      password=""\r
+      mmsproxy="216.230.133.66"\r
+      mmsport="8080"\r
+      mmsc="http://mms.ideasclaro.com:8002"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+  \r
+  <apn carrier="Movistar INTERNET"\r
+      mcc="712"\r
+      mnc="04"\r
+      apn="internet.movistar.cr"\r
+      user="movistarcr"\r
+      password="movistarcr"\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Movistar MMS"\r
+      mcc="712"\r
+      mnc="04"\r
+      apn="mms.movistar.cr"\r
+      user="movistarcr"\r
+      password="movistarcr"\r
+      mmsproxy="10.221.79.83"\r
+      mmsport="80"\r
+      mmsc="http://mms.movistar.cr"\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Wap"\r
+      mcc="714"\r
+      mnc="01"\r
+      apn="apn01.cwpanama.com.pa"\r
+      proxy="172.25.3.5"\r
+      port="8080"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Mms"\r
+      mcc="714"\r
+      mnc="01"\r
+      apn="apn02.cwpanama.com.pa"\r
+      user=""\r
+      password=""\r
+      mmsproxy="172.25.3.5"\r
+      mmsport="8080"\r
+      mmsc="http://mms.zonamovil.com.pa"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Movistar INTERNET"\r
+      mcc="714"\r
+      mnc="020"\r
+      apn="internet.movistar.pa"\r
+      user="movistarpa"\r
+      password="movistarpa"\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Movistar MMS"\r
+      mcc="714"\r
+      mnc="020"\r
+      apn="mms.movistar.pa"\r
+      user="movistarpamms"\r
+      password="movistarpa"\r
+      mmsproxy="10.12.21.1"\r
+      mmsport="80"\r
+      mmsc="http://mms.movistar.pa"\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="WEB Claro"\r
+      mcc="714"\r
+      mnc="03"\r
+      apn="web.claro.com.pa"\r
+      user="CLAROWEB"\r
+      password="CLAROWEB"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS Claro"\r
+      mcc="714"\r
+      mnc="03"\r
+      apn="mms.claro.com.pa"\r
+      user="CLAROMMS"\r
+      password="CLAROMMS"\r
+      mmsproxy="10.240.3.129"\r
+      mmsport="8799"\r
+      mmsc="http://www.claro.com.pa/mms/"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Web Digicel"\r
+      mcc="714"\r
+      mnc="04"\r
+      apn="web.digicelpanama.com"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS Digicel"\r
+      mcc="714"\r
+      mnc="04"\r
+      apn="wap.digicelpanama.com"\r
+      user=""\r
+      password=""\r
+      mmsproxy="172.27.99.99"\r
+      mmsport="8080"\r
+      mmsc="http://mmc.digicelpanama.com/servlets/mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Movistar INTERNET"\r
+      mcc="716"\r
+      mnc="06"\r
+      apn="movistar.pe"\r
+      user="movistar@datos"\r
+      password="movistar"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Movistar MMS"\r
+      mcc="716"\r
+      mnc="06"\r
+      apn="mms.movistar.pe"\r
+      user="movistar@mms"\r
+      password="movistar"\r
+      mmsproxy="200.4.196.118"\r
+      mmsport="8080"\r
+      mmsc="http://mmsc.telefonicamovistar.com.pe:8088/mms/"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CLARO DATOS"\r
+      mcc="716"\r
+      mnc="10"\r
+      apn="claro.pe"\r
+      user="claro"\r
+      password="claro"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CLARO MMS"\r
+      mcc="716"\r
+      mnc="10"\r
+      apn="mms.claro.pe"\r
+      user="claro"\r
+      password="claro"\r
+      mmsproxy="192.168.231.30"\r
+      mmsport="80"\r
+      mmsc="http://claro/servlets/mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+ <apn carrier="Nextel WAP"\r
+      mcc="716"\r
+      mnc="17"\r
+      apn="wap.nextel.com.pe"\r
+      user=""\r
+      password=""\r
+      proxy="129.192.129.104"\r
+      port="8080"\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Nextel MMS"\r
+      mcc="716"\r
+      mnc="17"\r
+      apn="mms.nextel.com.pe"\r
+      user=""\r
+      password=""\r
+      mmsproxy="129.192.129.104"\r
+      mmsport="8080"\r
+      mmsc="http://mms.nextel.pe"\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+  \r
+  <apn carrier="Internet Nextel"\r
+      mcc="716"\r
+      mnc="17"\r
+      apn="modem.nextel.com.pe"\r
+      user=""\r
+      password=""\r
+      proxy=""\r
+      port=""\r
+      authtype="1"\r
+      type="dun"\r
+  />\r
+\r
+ <apn carrier="Movistar WAP"\r
+      mcc="722"\r
+      mnc="07"\r
+      apn="wap.gprs.unifon.com.ar"\r
+      user="wap"\r
+      password="wap"\r
+      proxy="200.5.68.10"\r
+      port="8080"\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Movistar MMS"\r
+      mcc="722"\r
+      mnc="07"\r
+      apn="mms.gprs.unifon.com.ar"\r
+      user="mms"\r
+      password="mms"\r
+      mmsproxy="200.68.32.239"\r
+      mmsport="8080"\r
+      mmsc="http://mms.movistar.com.ar"\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Claro AR"\r
+      mcc="722"\r
+      mnc="31"\r
+      apn="igprs.claro.com.ar"\r
+      user="ctigprs"\r
+      password="ctigprs999"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS GPRS AR"\r
+      mcc="722"\r
+      mnc="31"\r
+      apn="mms.ctimovil.com.ar"\r
+      user="ctimms"\r
+      password="ctimms999"\r
+      mmsproxy="170.51.255.240"\r
+      mmsport="8080"\r
+      mmsc="http://mms.ctimovil.com.ar"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Claro AR"\r
+      mcc="722"\r
+      mnc="310"\r
+      apn="igprs.claro.com.ar"\r
+      user="ctigprs"\r
+      password="ctigprs999"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="MMS GPRS AR"\r
+      mcc="722"\r
+      mnc="310"\r
+      apn="mms.ctimovil.com.ar"\r
+      user="ctimms"\r
+      password="ctimms999"\r
+      mmsproxy="170.51.255.240"\r
+      mmsport="8080"\r
+      mmsc="http://mms.ctimovil.com.ar"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Personal Datos"\r
+      mcc="722"\r
+      mnc="34"\r
+      apn="datos.personal.com"\r
+      user="datos"\r
+      password="datos"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Personal MMS"\r
+      mcc="722"\r
+      mnc="34"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsproxy="172.25.7.31"\r
+      mmsport="8080"\r
+      mmsc="http://mms.personal.com"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Personal Datos"\r
+      mcc="722"\r
+      mnc="341"\r
+      apn="datos.personal.com"\r
+      user="datos"\r
+      password="datos"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Personal MMS"\r
+      mcc="722"\r
+      mnc="341"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsproxy="172.25.7.31"\r
+      mmsport="8080"\r
+      mmsc="http://mms.personal.com"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TIM Connect"\r
+      mcc="724"\r
+      mnc="02"\r
+      apn="timbrasil.br"\r
+      user="tim"\r
+      password="tim"\r
+      mmsc="http://mms.tim.br"\r
+      mmsproxy="200.179.66.242"\r
+      mmsport="8080"\r
+      authtype="1"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="TIM Connect"\r
+      mcc="724"\r
+      mnc="03"\r
+      apn="timbrasil.br"\r
+      user="tim"\r
+      password="tim"\r
+      mmsc="http://mms.tim.br"\r
+      mmsproxy="200.179.66.242"\r
+      mmsport="8080"\r
+      authtype="1"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="TIM Connect"\r
+      mcc="724"\r
+      mnc="04"\r
+      apn="timbrasil.br"\r
+      user="tim"\r
+      password="tim"\r
+      mmsc="http://mms.tim.br"\r
+      mmsproxy="200.179.66.242"\r
+      mmsport="8080"\r
+      authtype="1"\r
+      type="default,supl,mms"\r
+  />\r
+\r
+  <apn carrier="Java Session"\r
+      mcc="724"\r
+      mnc="05"\r
+      apn="java.claro.com.br"\r
+      user="claro"\r
+      password="claro"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Claro Foto"\r
+      mcc="724"\r
+      mnc="05"\r
+      apn="mms.claro.com.br"\r
+      user="claro"\r
+      password="claro"\r
+      mmsc="http://mms.claro.com.br"\r
+      mmsproxy="200.169.126.10"\r
+      mmsport="8799"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vivo MMS"\r
+      mcc="724"\r
+      mnc="06"\r
+      apn="mms.vivo.com.br"\r
+      user="vivo"\r
+      password="vivo"\r
+      mmsc="http://termnat.vivomms.com.br:8088/mms"\r
+      mmsproxy="200.142.130.104"\r
+      mmsport="80"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vivo Internet"\r
+      mcc="724"\r
+      mnc="06"\r
+      apn="zap.vivo.com.br"\r
+      user="vivo"\r
+      password="vivo"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+<!--End(3): Latin America-->\r
+  \r
+  <apn carrier="SCTL MMS"\r
+      mcc="724"\r
+      mnc="07"\r
+      apn="mms.sercomtel.com.br"\r
+      user="sercomtel"\r
+      password="sercomtel"\r
+      mmsc="http://mms.claro.com.br"\r
+      mmsproxy="200.169.126.10"\r
+      mmsport="8799"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="SCTL GPRS"\r
+      mcc="724"\r
+      mnc="07"\r
+      apn="sercomtel.com.br"\r
+      user="sercomtel"\r
+      password="sercomtel"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+<!--Start(4): Latin America-->\r
+  <apn carrier="Vivo Internet"\r
+      mcc="724"\r
+      mnc="10"\r
+      apn="zap.vivo.com.br"\r
+      user="vivo"\r
+      password="vivo"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Vivo MMS"\r
+      mcc="724"\r
+      mnc="10"\r
+      apn="mms.vivo.com.br"\r
+      user="vivo"\r
+      password="vivo"\r
+      mmsc="http://termnat.vivomms.com.br:8088/mms"\r
+      mmsproxy="200.142.130.104"\r
+      mmsport="80"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vivo MMS"\r
+      mcc="724"\r
+      mnc="11"\r
+      apn="mms.vivo.com.br"\r
+      user="vivo"\r
+      password="vivo"\r
+      mmsc="http://termnat.vivomms.com.br:8088/mms"\r
+      mmsproxy="200.142.130.104"\r
+      mmsport="80"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Vivo Internet"\r
+      mcc="724"\r
+      mnc="11"\r
+      apn="zap.vivo.com.br"\r
+      user="vivo"\r
+      password="vivo"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="OI GPRS"\r
+      mcc="724"\r
+      mnc="16"\r
+      apn="gprs.oi.com.br"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="OI MMS"\r
+      mcc="724"\r
+      mnc="16"\r
+      apn="mmsgprs.oi.com.br"\r
+      user="oimms"\r
+      password="oimms"\r
+      mmsc="http://200.222.42.204:8002"\r
+      mmsproxy="192.168.10.50"\r
+      mmsport="3128"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+<!--End(4): Latin America-->\r
+\r
+  <apn carrier="TelemigC GPRS"\r
+      mcc="724"\r
+      mnc="19"\r
+      apn="gprs.telemigcelular.com.br"\r
+      user="celular"\r
+      password="celular"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS Telemig"\r
+      mcc="724"\r
+      mnc="19"\r
+      apn="mmsgprs.telemigcelular.com.br"\r
+      user="celular"\r
+      password="celular"\r
+      mmsc="http://mms.telemigcelular.com.br"\r
+      mmsproxy="200.192.230.142"\r
+      mmsport="8080"\r
+      type="mms"\r
+  />\r
+\r
+  <!--Start(5): Latin America-->\r
+  <apn carrier="Vivo Internet"\r
+      mcc="724"\r
+      mnc="23"\r
+      apn="zap.vivo.com.br"\r
+      user="vivo"\r
+      password="vivo"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+  <apn carrier="Vivo MMS"\r
+      mcc="724"\r
+      mnc="23"\r
+      apn="mms.vivo.com.br"\r
+      user="vivo"\r
+      password="vivo"\r
+      mmsc="http://termnat.vivomms.com.br:8088/mms"\r
+      mmsproxy="200.142.130.104"\r
+      mmsport="80"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="OI GPRS"\r
+      mcc="724"\r
+      mnc="24"\r
+      apn="gprs.oi.com.br"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="OI MMS"\r
+      mcc="724"\r
+      mnc="24"\r
+      apn="mmsgprs.oi.com.br"\r
+      user="oimms"\r
+      password="oimms"\r
+      mmsc="http://200.222.42.204:8002"\r
+      mmsproxy="192.168.10.50"\r
+      mmsport="3128"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="OI GPRS"\r
+      mcc="724"\r
+      mnc="31"\r
+      apn="gprs.oi.com.br"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="OI MMS"\r
+      mcc="724"\r
+      mnc="31"\r
+      apn="mmsgprs.oi.com.br"\r
+      user="oimms"\r
+      password="oimms"\r
+      mmsc="http://200.222.42.204:8002"\r
+      mmsproxy="192.168.10.50"\r
+      mmsport="3128"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Internet Movil"\r
+      mcc="730"\r
+      mnc="01"\r
+      apn="bam.entelpcs.cl"\r
+      proxy="10.99.0.10"\r
+      port="8080"\r
+      user="entelpcs"\r
+      password="entelpcs"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS Entel"\r
+      mcc="730"\r
+      mnc="01"\r
+      apn="mms.entelpcs.cl"\r
+      user="entelpcs"\r
+      password="entelpcs"\r
+      mmsproxy="10.99.0.10"\r
+      mmsport="8080"\r
+      mmsc="http://mmsc.entelpcs.cl"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Internet Movil"\r
+      mcc="730"\r
+      mnc="10"\r
+      apn="bam.entelpcs.cl"\r
+      proxy="10.99.0.10"\r
+      port="8080"\r
+      user="entelpcs"\r
+      password="entelpcs"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS Entel"\r
+      mcc="730"\r
+      mnc="10"\r
+      apn="mms.entelpcs.cl"\r
+      user="entelpcs"\r
+      password="entelpcs"\r
+      mmsproxy="10.99.0.10"\r
+      mmsport="8080"\r
+      mmsc="http://mmsc.entelpcs.cl"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Movistar APLICACIONES"\r
+      mcc="730"\r
+      mnc="02"\r
+      apn="wap.tmovil.cl"\r
+      proxy=""\r
+      port=""\r
+      user="wap"\r
+      password="wap"\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Movistar MMS"\r
+      mcc="730"\r
+      mnc="02"\r
+      apn="mms.tmovil.cl"\r
+      user="mms"\r
+      password="mms"\r
+      mmsproxy="172.17.8.10"\r
+      mmsport="8080"\r
+      mmsc="http://mms.movistar.cl"\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="BAM Claro"\r
+      mcc="730"\r
+      mnc="03"\r
+      apn="bam.clarochile.cl"\r
+      user="clarochile"\r
+      password="clarochile"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS Claro"\r
+      mcc="730"\r
+      mnc="03"\r
+      apn="mms.clarochile.cl"\r
+      user="clarochile"\r
+      password="clarochile"\r
+      mmsproxy="172.23.200.200"\r
+      mmsport="8080"\r
+      mmsc="http://mms.clarochile.cl"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="web"\r
+      mcc="730"\r
+      mnc="07"\r
+      apn="web.gtdmovil.cl"\r
+      user="webgtd"\r
+      password="webgtd"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+  \r
+  <apn carrier="Internet Movil"\r
+      mcc="730"\r
+      mnc="07"\r
+      apn="imovil.virginmobile.cl"\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+\r
+<apn carrier="MMS"\r
+      mcc="730"\r
+      mnc="07"\r
+      apn="mmsc.virginmobile.cl"\r
+      mmsc="http://mms.virginmobile.cl:1981/mms"\r
+      mmsproxy=""\r
+      mmsport=""\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+  \r
+  <apn carrier="Gtel"\r
+      mcc="730"\r
+      mnc="07"\r
+      apn="gtel.netline.net"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Internet"\r
+      mcc="730"\r
+      mnc="08"\r
+      apn="movil.vtr.com"\r
+      user="vtrmovil"\r
+      password="vtrmovil"\r
+      authtype="2"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Bam"\r
+      mcc="730"\r
+      mnc="08"\r
+      apn="bam.vtr.com"\r
+      user="vtr"\r
+      password="vtr"\r
+      authtype="2"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS"\r
+      mcc="730"\r
+      mnc="08"\r
+      apn="mms.vtr.com"\r
+      user="mms"\r
+      password=""\r
+      mmsc="http://192.168.94.162:19090/was"\r
+      mmsproxy="192.168.94.210"\r
+      mmsport="9028"\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="WEB Comcel 3GSM"\r
+      mcc="732"\r
+      mnc="101"\r
+      apn="internet.comcel.com.co"\r
+      user="COMCELWEB"\r
+      password="COMCELWEB"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS Comcel 3GSM"\r
+      mcc="732"\r
+      mnc="101"\r
+      apn="mms.comcel.com.co"\r
+      user="COMCELMMS"\r
+      password="COMCELMMS"\r
+      mmsproxy="198.228.90.225"\r
+      mmsport="8799"\r
+      mmsc="http://www.comcel.com.co/mms/"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TIGO WEB"\r
+      mcc="732"\r
+      mnc="103"\r
+      apn="web.colombiamovil.com.co"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TIGO Multimedia"\r
+      mcc="732"\r
+      mnc="103"\r
+      apn="mms.colombiamovil.com.co"\r
+      user="mms-cm1900"\r
+      password="mms-cm1900"\r
+      mmsproxy="190.102.206.48"\r
+      mmsport="8080"\r
+      mmsc="http://mms.ola.com.co"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TIGO WEB"\r
+      mcc="732"\r
+      mnc="111"\r
+      apn="web.colombiamovil.com.co"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="TIGO Multimedia"\r
+      mcc="732"\r
+      mnc="111"\r
+      apn="mms.colombiamovil.com.co"\r
+      user="mms-cm1900"\r
+      password="mms-cm1900"\r
+      mmsproxy="190.102.206.48"\r
+      mmsport="8080"\r
+      mmsc="http://mms.ola.com.co"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Movistar INTERNET"\r
+      mcc="732"\r
+      mnc="123"\r
+      apn="internet.movistar.com.co"\r
+      user="movistar"\r
+      password="movistar"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Movistar MMS"\r
+      mcc="732"\r
+      mnc="123"\r
+      apn="mms.movistar.com.co"\r
+      user="movistar"\r
+      password="movistar"\r
+      mmsproxy="192.168.222.7"\r
+      mmsport="9001"\r
+      mmsc="http://mms.movistar.com.co"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Digitel GSM"\r
+      mcc="734"\r
+      mnc="01"\r
+      apn="gprsweb.digitel.ve"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS"\r
+      mcc="734"\r
+      mnc="01"\r
+      apn="expresate.digitel.ve"\r
+      mmsproxy="10.99.0.10"\r
+      mmsport="8080"\r
+      mmsc="http://mms.412.com.ve/servlets/mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Digitel GSM"\r
+      mcc="734"\r
+      mnc="02"\r
+      apn="gprsweb.digitel.ve"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS"\r
+      mcc="734"\r
+      mnc="02"\r
+      apn="expresate.digitel.ve"\r
+      mmsproxy="10.99.0.10"\r
+      mmsport="8080"\r
+      mmsc="http://mms.412.com.ve/servlets/mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Digitel GSM"\r
+      mcc="734"\r
+      mnc="03"\r
+      apn="gprsweb.digitel.ve"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS"\r
+      mcc="734"\r
+      mnc="03"\r
+      apn="expresate.digitel.ve"\r
+      mmsproxy="10.99.0.10"\r
+      mmsport="8080"\r
+      mmsc="http://mms.412.com.ve/servlets/mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Movistar INTERNET"\r
+      mcc="734"\r
+      mnc="04"\r
+      apn="internet.movistar.ve"\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Movistar MMS"\r
+      mcc="734"\r
+      mnc="04"\r
+      apn="mms.movistar.ve"\r
+      mmsproxy="200.35.64.73"\r
+      mmsport="9001"\r
+      mmsc="http://mms.movistar.com.ve:8088/mms"\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Movistar WAP"\r
+      mcc="734"\r
+      mnc="04"\r
+      apn="wap.movistar.ve"\r
+      proxy="200.35.64.73"\r
+      port="9001"\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MODEM"\r
+      mcc="734"\r
+      mnc="06"\r
+      apn="int.movilnet.com.ve"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS"\r
+      mcc="734"\r
+      mnc="06"\r
+      apn="mm.movilnet.com.ve"\r
+      mmsproxy="192.168.16.12"\r
+      mmsport="8080"\r
+      mmsc="http://mms2.movilnet.com.ve/servlets/mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="VIVAINTERNET"\r
+      mcc="736"\r
+      mnc="01"\r
+      apn="internet.nuevatel.com"\r
+      user=""\r
+      password=""\r
+      proxy=""\r
+      port=""\r
+      authtype="0"\r
+      type="default,supl"\r
+  />  \r
+  \r
+  \r
+<apn carrier="VIVA3G"\r
+      mcc="736"\r
+      mnc="01"\r
+      apn="3g.nuevatel.com"\r
+      user=""\r
+      password=""\r
+      proxy=""\r
+      port=""\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+    <apn carrier="VIVAMMS"\r
+      mcc="736"\r
+      mnc="01"\r
+      apn="mms.nuevatel.com"\r
+      user=""\r
+      password=""\r
+      mmsproxy="192.168.101.004"\r
+      mmsport="3128"\r
+      mmsc="http://mmsgw.nuevatel.com:1981"\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="ENTEL4G"\r
+      mcc="736"\r
+      mnc="02"\r
+      apn="4g.entel"\r
+      user=""\r
+      password=""\r
+      proxy=""\r
+      port=""\r
+      authtype="2"\r
+      type="default,supl"\r
+  />\r
+  \r
+  <apn carrier="ENTELWAP"\r
+      mcc="736"\r
+      mnc="02"\r
+      apn="wap.movil.com.bo"\r
+      user=""\r
+      password=""\r
+      proxy="172.27.7.10"\r
+      port="8080"\r
+      authtype="2"\r
+      type="default,supl"\r
+  />\r
+  \r
+  <apn carrier="ENTEL2G"\r
+      mcc="736"\r
+      mnc="02"\r
+      apn="int.movil.com.bo"\r
+      user=""\r
+      password=""\r
+      proxy=""\r
+      port=""\r
+      authtype="2"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="ENTEL MMS"\r
+      mcc="736"\r
+      mnc="02"\r
+      apn="mms.movil.com.bo"\r
+      user=""\r
+      password=""\r
+      mmsproxy="172.27.7.10"\r
+      mmsport="8080"\r
+      mmsc="http://mms.movil.com.bo/servlets/mms"\r
+      authtype="2"\r
+      type="mms"\r
+  />\r
+\r
+   <apn carrier="INTERNETTIGO"\r
+      mcc="736"\r
+      mnc="03"\r
+      apn="internet.tigo.bo"\r
+      user=""\r
+      password=""\r
+      proxy=""\r
+      port=""\r
+      authtype="2"\r
+      type="default,supl"\r
+  />\r
+  \r
+  <apn carrier="WAPTIGO"\r
+      mcc="736"\r
+      mnc="03"\r
+      apn="wap.tigo.bo"\r
+      user=""\r
+      password=""\r
+      proxy="172.25.100.8"\r
+      port="8888"\r
+      authtype="2"\r
+      type="default,supl"\r
+  />\r
+  \r
+  <apn carrier="VIDEOTIGO"\r
+      mcc="736"\r
+      mnc="03"\r
+      apn="video.tigo.bo"\r
+      user=""\r
+      password=""\r
+      proxy=""\r
+      port=""\r
+      authtype="2"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMSTIGO"\r
+      mcc="736"\r
+      mnc="03"\r
+      apn="mms.tigo.bo"\r
+      user=""\r
+      password=""\r
+      mmsproxy="172.25.100.8"\r
+      mmsport="8888"\r
+      mmsc="http://mms"\r
+      authtype="2"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Movistar INTERNET"\r
+      mcc="740"\r
+      mnc="00"\r
+      apn="internet.movistar.com.ec"\r
+      user="movistar"\r
+      password="movistar"\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Movistar MMS"\r
+      mcc="740"\r
+      mnc="00"\r
+      apn="mms.movistar.com.ec"\r
+      user="movistar"\r
+      password="movistar"\r
+      mmsproxy="10.3.5.50"\r
+      mmsport="9001"\r
+      mmsc="http://mms.movistar.com.ec:8088/mms/"\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Claro Internet"\r
+      mcc="740"\r
+      mnc="01"\r
+      apn="internet.claro.com.ec"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS Claro"\r
+      mcc="740"\r
+      mnc="01"\r
+      apn="mms.claro.com.ec"\r
+      user="portamms"\r
+      password="portamms2003"\r
+      mmsproxy="216.250.208.94"\r
+      mmsport="8799"\r
+      mmsc="http://iesmms.porta.com.ec"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Claro Internet"\r
+      mcc="740"\r
+      mnc="010"\r
+      apn="internet.claro.com.ec"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS Claro"\r
+      mcc="740"\r
+      mnc="010"\r
+      apn="mms.claro.com.ec"\r
+      user="portamms"\r
+      password="portamms2003"\r
+      mmsproxy="216.250.208.94"\r
+      mmsport="8799"\r
+      mmsc="http://iesmms.porta.com.ec"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="CNT Internet"\r
+      mcc="740"\r
+      mnc="02"\r
+      apn="internet3gsp.alegro.net.ec"\r
+      user=""\r
+      password=""\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="CNT MMS"\r
+      mcc="740"\r
+      mnc="02"\r
+      apn="mms.alegro.net.ec"\r
+      user=""\r
+      password=""\r
+      mmsproxy="10.4.85.3"\r
+      mmsport="8080"\r
+      mmsc="http://mms.alegro.net.ec/mms/"\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="VOX INTERNET"\r
+      mcc="744"\r
+      mnc="01"\r
+      apn="vox.internet"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="VOX MMS"\r
+      mcc="744"\r
+      mnc="01"\r
+      apn="vox.mms"\r
+      user="vox"\r
+      password="vox"\r
+      mmsproxy="172.24.97.29"\r
+      mmsport="8080"\r
+      mmsc="http://mms.vox.com.py/mmsc"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Claro PY"\r
+      mcc="744"\r
+      mnc="02"\r
+      apn="igprs.claro.com.py"\r
+      user="ctigprs"\r
+      password="ctigprs999"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS GPRS PY"\r
+      mcc="744"\r
+      mnc="02"\r
+      apn="mms.ctimovil.com.py"\r
+      user="ctimms"\r
+      password="ctimms999"\r
+      mmsproxy="170.51.255.240"\r
+      mmsport="8080"\r
+      mmsc="http://mms.ctimovil.com.py"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="TIGO PY"\r
+      mcc="744"\r
+      mnc="04"\r
+      apn="internet.tigo.py"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS Tigo"\r
+      mcc="744"\r
+      mnc="04"\r
+      apn="mms.tigo.py"\r
+      user="tigo"\r
+      password="tigo"\r
+      mmsproxy="10.16.17.12"\r
+      mmsport="8888"\r
+      mmsc="http://mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Personal Datos Py"\r
+      mcc="744"\r
+      mnc="05"\r
+      apn="internet"\r
+      user="personal"\r
+      password="personal"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Personal MMS Py"\r
+      mcc="744"\r
+      mnc="05"\r
+      apn="mms"\r
+      user="mms"\r
+      password="mms"\r
+      mmsproxy="172.16.192.7"\r
+      mmsport="8080"\r
+      mmsc="http://mms"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="wapANCEL"\r
+      mcc="748"\r
+      mnc="01"\r
+      apn="wap"\r
+      proxy="200.40.246.2"\r
+      port="3128"\r
+      user=""\r
+      password=""\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="mmsANCEL"\r
+      mcc="748"\r
+      mnc="01"\r
+      apn="mms"\r
+      user=""\r
+      password=""\r
+      mmsproxy="200.40.246.2"\r
+      mmsport="3128"\r
+      mmsc="http://mmsc.mms.ancelutil.com.uy"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="gprsANCEL"\r
+      mcc="748"\r
+      mnc="01"\r
+      apn="gprs.ancel"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="prepagoANCEL"\r
+      mcc="748"\r
+      mnc="01"\r
+      apn="prepago.ancel"\r
+      user="BAM"\r
+      password="BAM"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Movistar INTERNET"\r
+      mcc="748"\r
+      mnc="07"\r
+      apn="webapn.movistar.com.uy"\r
+      user="movistar"\r
+      password="movistar"\r
+      authtype="0"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="Movistar MMS"\r
+      mcc="748"\r
+      mnc="07"\r
+      apn="apnmms.movistar.com.uy"\r
+      user="mmsuy"\r
+      password="mmsuy"\r
+      mmsproxy="10.0.2.29"\r
+      mmsport="8080"\r
+      mmsc="http://mmsc.movistar.com.uy"\r
+      authtype="0"\r
+      type="mms"\r
+  />\r
+\r
+  <apn carrier="Claro UY"\r
+      mcc="748"\r
+      mnc="10"\r
+      apn="igprs.claro.com.uy"\r
+      user="ctigprs"\r
+      password="ctigprs999"\r
+      authtype="1"\r
+      type="default,supl"\r
+  />\r
+\r
+  <apn carrier="MMS GPRS UY"\r
+      mcc="748"\r
+      mnc="10"\r
+      apn="mms.ctimovil.com.uy"\r
+      user="ctimms"\r
+      password="ctimms999"\r
+      mmsproxy="170.51.255.240"\r
+      mmsport="8080"\r
+      mmsc="http://mms.ctimovil.com.uy"\r
+      authtype="1"\r
+      type="mms"\r
+  />\r
+\r
+<!--End(5): Latin America-->\r
+   <apn carrier="Sprint"\r
+        mcc="310"\r
+        mnc="120"\r
+        apn="Sprint"\r
+        user="Sprint"\r
+        server="*"\r
+        password="*"\r
+        mmsc="http://mms.sprintpcs.com"\r
+        mmsproxy = "68.28.31.7"\r
+        mmsport = "80"\r
+        authtype="3"\r
+        type="*"\r
+   />\r
+\r
+   <apn carrier="Boost_Mobile"\r
+        mcc="311"\r
+        mnc="870"\r
+        apn="Boost_Mobile"\r
+        user="Boost_Mobile"\r
+        server="*"\r
+        password="*"\r
+        mmsc="http://mm.myboostmobile.com"\r
+        mmsproxy = "68.28.31.1"\r
+        mmsport = "80"\r
+        authtype="3"\r
+        type="*"\r
+   />\r
+\r
+   <apn carrier="Virgin Mobile"\r
+        mcc="311"\r
+        mnc="490"\r
+        apn="Virgin Mobile"\r
+        user="Virgin Mobile"\r
+        server="*"\r
+        password="*"\r
+        mmsc="http://mmsc.vmobl.com:8088/mms?"\r
+        mmsproxy = "205.239.233.136"\r
+        mmsport = "81"\r
+        authtype="3"\r
+        type="*"\r
+   />\r
+\r
+<!--End(6): Tizen platform-->\r
+   <apn carrier="GCF Lab.1"\r
+        mcc="001"\r
+        mnc="01"\r
+        apn="test"\r
+        type="default,mms"\r
+   />\r
+\r
+   <apn carrier="GCF Lab.2"\r
+        mcc="999"\r
+        mnc="99"\r
+        apn="test"\r
+        type="default,mms"\r
+   />\r
+\r
+   <apn carrier="TestBed 2"\r
+        mcc="001"\r
+        mnc="02"\r
+        apn="annam.dyn"\r
+        user="mms"\r
+        password="mms"\r
+        mmsc="http://10.200.60.21:8088/mms"\r
+        mmsproxy = "10.200.60.15"\r
+        mmsport = "3128"\r
+        authtype="0"\r
+        type="default,mms"\r
+   />\r
+\r
+   <apn carrier="TestBed 2 IMS"\r
+        mcc="001"\r
+        mnc="02"\r
+        apn="ims"\r
+       protocol="IPV6"\r
+        authtype="0"\r
+        type="ims"\r
+   />\r
+</apns>\r
old mode 100644 (file)
new mode 100755 (executable)
index 9f618cb..be82278
@@ -17,7 +17,9 @@ CREATE TABLE fast_dormancy(
        dormant_id      INTEGER PRIMARY KEY,
        network_info_id INTEGER UNIQUE,
        lcd_on_timeout INTEGER,
-       lcd_off_timeout INTEGER
+       lcd_off_timeout INTEGER,
+       lcd_on_timeout_rel8 INTEGER,
+       lcd_off_timeout_rel8 INTEGER
   );
 
 DROP TABLE IF EXISTS "max_pdp";
@@ -29,27 +31,29 @@ CREATE TABLE max_pdp(
   
 DROP TABLE IF EXISTS "pdp_profile";
 CREATE TABLE pdp_profile(
-       profile_id      INTEGER PRIMARY KEY,
-       profile_name    TEXT,
-       apn     TEXT,
-       auth_type       INTEGER,
-       auth_id TEXT,
-       auth_pwd        TEXT,
-       pdp_protocol    INTEGER,
-       proxy_ip_addr   TEXT,
-       home_url        TEXT,
-       linger_time     INTEGER,
-       traffic_class   INTEGER,
-       is_static_ip_addr       INTEGER,
-       ip_addr TEXT,
-       is_static_dns_addr      INTEGER,
-       dns_addr1       TEXT,
-       dns_addr2       TEXT,
-       network_info_id INTEGER,
-       svc_category_id INTEGER,
-       hidden  INTEGER,
-       editable        INTEGER,
-       default_internet_con    INTEGER
+       profile_id           INTEGER PRIMARY KEY,
+       profile_name         TEXT,
+       apn                  TEXT,
+       auth_type            INTEGER,
+       auth_id              TEXT,
+       auth_pwd             TEXT,
+       pdp_protocol         INTEGER,
+       proxy_ip_addr        TEXT,
+       home_url             TEXT,
+       linger_time          INTEGER,
+       traffic_class        INTEGER,
+       is_static_ip_addr    INTEGER,
+       ip_addr              TEXT,
+       is_static_dns_addr   INTEGER,
+       dns_addr1            TEXT,
+       dns_addr2            TEXT,
+       network_info_id      INTEGER,
+       svc_category_id      INTEGER,
+       hidden               INTEGER,
+       editable             INTEGER,
+       default_internet_con INTEGER,
+       user_defined         INTEGER,
+       attach_apn           INTEGER
        );
 
 DROP TABLE IF EXISTS "svc_category";
@@ -64,6 +68,1134 @@ INSERT INTO "svc_category" VALUES(2,'mms');
 INSERT INTO "svc_category" VALUES(3,'prepaid internet');
 INSERT INTO "svc_category" VALUES(4,'prepaid mms');
 INSERT INTO "svc_category" VALUES(5,'tethering');
-INSERT INTO "svc_category" VALUES(6,'user defined');
+INSERT INTO "svc_category" VALUES(6,'IMS Emergency');
+INSERT INTO "svc_category" VALUES(7,'user defined');
 
 CREATE INDEX pdp_profile_ix_1 ON pdp_profile (network_info_id);
+
+INSERT INTO fast_dormancy VALUES(0,568,-1,5,-1,-1);
+INSERT INTO fast_dormancy VALUES(1,566,-1,10,-1,-1);
+
+INSERT INTO network_info VALUES(0,"CDMA_NETWORK","00000");
+INSERT INTO network_info VALUES(1,"R5","45001");
+INSERT INTO network_info VALUES(2,"GCF1","00101");
+INSERT INTO network_info VALUES(3,"GCF2","99999");
+INSERT INTO network_info VALUES(4, "DIGICEL","36320");
+INSERT INTO network_info VALUES(5, "SETAR GSM","36301");
+INSERT INTO network_info VALUES(6, "AF AWCC","41201");
+INSERT INTO network_info VALUES(7, "Etisalat Af","41250");
+INSERT INTO network_info VALUES(8, "MTN AF","41240");
+INSERT INTO network_info VALUES(9, "ROSHAN","41220");
+INSERT INTO network_info VALUES(10, "UNITEL","63102");
+INSERT INTO network_info VALUES(11, "LIME","365840");
+INSERT INTO network_info VALUES(12, "AMC - AL","27601");
+INSERT INTO network_info VALUES(13, "EAGLE AL","27603");
+INSERT INTO network_info VALUES(14, "PLUS AL","27604");
+INSERT INTO network_info VALUES(15, "Vodafone AL","27602");
+INSERT INTO network_info VALUES(16, "MOBILAND","21303");
+INSERT INTO network_info VALUES(17, "ANT CURACAO TELECOM GSM","36269");
+INSERT INTO network_info VALUES(18, "ANT","36291");
+INSERT INTO network_info VALUES(19, "Telcell GSM","36251");
+INSERT INTO network_info VALUES(20, "Kla","36278");
+INSERT INTO network_info VALUES(21, "du","42403");
+INSERT INTO network_info VALUES(22, "ETISALAT","42402");
+INSERT INTO network_info VALUES(23, "CLARO ARGENTINA","722310");
+INSERT INTO network_info VALUES(24, "AR PERSONAL","722341");
+INSERT INTO network_info VALUES(25, "Movistar","722010");
+INSERT INTO network_info VALUES(26, "Movistar","72207");
+INSERT INTO network_info VALUES(27, "Beeline AM","28301");
+INSERT INTO network_info VALUES(28, "MTS ARM","28305");
+INSERT INTO network_info VALUES(29, "Orange AM","28310");
+INSERT INTO network_info VALUES(30, "Bluesky Communications","544110");
+INSERT INTO network_info VALUES(31, "APUA imobile","344030");
+INSERT INTO network_info VALUES(32, "Cingular","344930");
+INSERT INTO network_info VALUES(33, "LIME","344920");
+INSERT INTO network_info VALUES(34, "YES OPTUS","50502");
+INSERT INTO network_info VALUES(35, "Telstra Mobile","50501");
+INSERT INTO network_info VALUES(36, "3TELSTRA","50506");
+INSERT INTO network_info VALUES(37, "vodafone AU","50503");
+INSERT INTO network_info VALUES(38, "A1","23201");
+INSERT INTO network_info VALUES(39, "A1","23212");
+INSERT INTO network_info VALUES(40, "3 AT","23210");
+INSERT INTO network_info VALUES(41, "3 AT","23205");
+INSERT INTO network_info VALUES(42, "T-Mobile A","23203");
+INSERT INTO network_info VALUES(43, "telering","23207");
+INSERT INTO network_info VALUES(44, "AZE - AZERCELL GSM","40001");
+INSERT INTO network_info VALUES(45, "AZ Nar","40004");
+INSERT INTO network_info VALUES(46, "BAKCELL AZ","40002");
+INSERT INTO network_info VALUES(47, "BDI TEMPO-AFRICELL","64202");
+INSERT INTO network_info VALUES(48, "BDI ECONET","64201");
+INSERT INTO network_info VALUES(49, "SMART","64207");
+INSERT INTO network_info VALUES(50, "ONATEL BDI","64203");
+INSERT INTO network_info VALUES(51, "TELECEL-BDI","64282");
+INSERT INTO network_info VALUES(52, "BEL PROXIMUS","20601");
+INSERT INTO network_info VALUES(53, "BASE","20620");
+INSERT INTO network_info VALUES(54, "B mobistar","20610");
+INSERT INTO network_info VALUES(55, "BELL BENIN COMMUNICATION","61604");
+INSERT INTO network_info VALUES(56, "ETISALAT BENIN","61602");
+INSERT INTO network_info VALUES(57, "GloBenin","61605");
+INSERT INTO network_info VALUES(58, "BF Celtel","61302");
+INSERT INTO network_info VALUES(59, "Airtel","47007");
+INSERT INTO network_info VALUES(60, "Banglalink","47003");
+INSERT INTO network_info VALUES(61, "Grameenphone","47001");
+INSERT INTO network_info VALUES(62, "BGD bMobile","47004");
+INSERT INTO network_info VALUES(63, "Vivacom","28403");
+INSERT INTO network_info VALUES(64, "BG GLOBUL","28405");
+INSERT INTO network_info VALUES(65, "Mtel","28401");
+INSERT INTO network_info VALUES(66, "BATELCO","42601");
+INSERT INTO network_info VALUES(67, "VIVA BH","42604");
+INSERT INTO network_info VALUES(68, "Zain BH","42602");
+INSERT INTO network_info VALUES(69, "BaTelCell","36439");
+INSERT INTO network_info VALUES(70, "BH Mobile","21890");
+INSERT INTO network_info VALUES(71, "HT HR","21901");
+INSERT INTO network_info VALUES(72, "m:tel","21805");
+INSERT INTO network_info VALUES(73, "MTS BY","25702");
+INSERT INTO network_info VALUES(74, "BY VELCOM","25701");
+INSERT INTO network_info VALUES(75, "BTL","70267");
+INSERT INTO network_info VALUES(76, "CELLONE","350000");
+INSERT INTO network_info VALUES(77, "Cingular","350010");
+INSERT INTO network_info VALUES(78, "BOMOV","73602");
+INSERT INTO network_info VALUES(79, "VIVA","73601");
+INSERT INTO network_info VALUES(80, "Telecel Bolivia GSM","73603");
+INSERT INTO network_info VALUES(81, "Oi","72416");
+INSERT INTO network_info VALUES(82, "Algar Telecom","72434");
+INSERT INTO network_info VALUES(83, "Algar Telecom","72433");
+INSERT INTO network_info VALUES(84, "Algar Telecom","72432");
+INSERT INTO network_info VALUES(85, "Claro","72405");
+INSERT INTO network_info VALUES(86, "BRA SCTL","72415");
+INSERT INTO network_info VALUES(87, "TIM BRASIL","72402");
+INSERT INTO network_info VALUES(88, "TIM BRASIL","72403");
+INSERT INTO network_info VALUES(89, "TIM BRASIL","72404");
+INSERT INTO network_info VALUES(90, "Oi","72431");
+INSERT INTO network_info VALUES(91, "AMAZONIA","72424");
+INSERT INTO network_info VALUES(92, "VIVO","72411");
+INSERT INTO network_info VALUES(93, "VIVO","72410");
+INSERT INTO network_info VALUES(94, "VIVO","72406");
+INSERT INTO network_info VALUES(95, "VIVO","72423");
+INSERT INTO network_info VALUES(96, "LIME","342600");
+INSERT INTO network_info VALUES(97, "DIGICEL","342750");
+INSERT INTO network_info VALUES(98, "b-mobile","52802");
+INSERT INTO network_info VALUES(99, "BRU-DSTCom","52811");
+INSERT INTO network_info VALUES(100, "BT B-Mobile","40211");
+INSERT INTO network_info VALUES(101, "beMOBILE","65204");
+INSERT INTO network_info VALUES(102, "BW MASCOM","65201");
+INSERT INTO network_info VALUES(103, "Orange","65202");
+INSERT INTO network_info VALUES(104, "ETISALAT RCA","62301");
+INSERT INTO network_info VALUES(105, "NationLink","62304");
+INSERT INTO network_info VALUES(106, "Telecel","62302");
+INSERT INTO network_info VALUES(107, "Bell","302610");
+INSERT INTO network_info VALUES(108, "Eastlink","302270");
+INSERT INTO network_info VALUES(109, "DMTS GSM","302380");
+INSERT INTO network_info VALUES(110, "Execulink Telecom","302340");
+INSERT INTO network_info VALUES(111, "WIND","302490");
+INSERT INTO network_info VALUES(112, "MTS","30266");
+INSERT INTO network_info VALUES(113, "Fido","302370");
+INSERT INTO network_info VALUES(114, "CAN Rogers Wireless Inc.","302720");
+INSERT INTO network_info VALUES(115, "CANRU","302770");
+INSERT INTO network_info VALUES(116, "SaskTel","302780");
+INSERT INTO network_info VALUES(117, "TELUS","302220");
+INSERT INTO network_info VALUES(118, "FastRoam","302880");
+INSERT INTO network_info VALUES(119, "CAN TerreStar Solutions","302730");
+INSERT INTO network_info VALUES(120, "Wightman","302940");
+INSERT INTO network_info VALUES(121, "OnAir","22815");
+INSERT INTO network_info VALUES(122, "Orange CH","22803");
+INSERT INTO network_info VALUES(123, "Sunrise","22802");
+INSERT INTO network_info VALUES(124, "Swisscom","22801");
+INSERT INTO network_info VALUES(125, "CLARO CHL","73003");
+INSERT INTO network_info VALUES(126, "CL ENTEL PCS","73010");
+INSERT INTO network_info VALUES(127, "CL ENTEL PCS","73001");
+INSERT INTO network_info VALUES(128, "Nextel 3G","73009");
+INSERT INTO network_info VALUES(129, "Movistar","73007");
+INSERT INTO network_info VALUES(130, "Movistar","73002");
+INSERT INTO network_info VALUES(131, "CHL VTR","73008");
+INSERT INTO network_info VALUES(132, "CHINA  MOBILE","46000");
+INSERT INTO network_info VALUES(133, "CHN-UNICOM","46001");
+INSERT INTO network_info VALUES(134, "ETISALAT CI","61202");
+INSERT INTO network_info VALUES(135, "KoZ","61204");
+INSERT INTO network_info VALUES(136, "MTN CI","61205");
+INSERT INTO network_info VALUES(137, "Orange CI","61203");
+INSERT INTO network_info VALUES(138, "MTN CAM","62401");
+INSERT INTO network_info VALUES(139, "Orange CAM","62402");
+INSERT INTO network_info VALUES(140, "Africell RDC","63090");
+INSERT INTO network_info VALUES(141, "CELTEL DRC","63002");
+INSERT INTO network_info VALUES(142, "Orange RDC","63086");
+INSERT INTO network_info VALUES(143, "TIGO DRC","63089");
+INSERT INTO network_info VALUES(144, "VODACOM CD","63001");
+INSERT INTO network_info VALUES(145, "CD Smart","63088");
+INSERT INTO network_info VALUES(146, "AZUR COG","62902");
+INSERT INTO network_info VALUES(147, "COG MTN","62910");
+INSERT INTO network_info VALUES(148, "SCELL CD","63005");
+INSERT INTO network_info VALUES(149, "WARID RC","62907");
+INSERT INTO network_info VALUES(150, "CK KOKANET","54801");
+INSERT INTO network_info VALUES(151, "COL MOV / TIGO","732111");
+INSERT INTO network_info VALUES(152, "COL MOV / TIGO","732103");
+INSERT INTO network_info VALUES(153, "Claro","732101");
+INSERT INTO network_info VALUES(154, "Movistar","732123");
+INSERT INTO network_info VALUES(155, "HURI","65401");
+INSERT INTO network_info VALUES(156, "CPV MOVEL","62501");
+INSERT INTO network_info VALUES(157, "CPV T+","62502");
+INSERT INTO network_info VALUES(158, "CLARO CR","71203");
+INSERT INTO network_info VALUES(159, "I.C.E.","71202");
+INSERT INTO network_info VALUES(160, "I.C.E.","71201");
+INSERT INTO network_info VALUES(161, "Movistar","71204");
+INSERT INTO network_info VALUES(162, "CUBACEL","36801");
+INSERT INTO network_info VALUES(163, "LIME","346140");
+INSERT INTO network_info VALUES(164, "CYTAMOBILE-VODAFONE","28001");
+INSERT INTO network_info VALUES(165, "MTN","28010");
+INSERT INTO network_info VALUES(166, "T-Mobile CZ","23001");
+INSERT INTO network_info VALUES(167, "O2 - CZ","23002");
+INSERT INTO network_info VALUES(168, "Vodafone CZ","23003");
+INSERT INTO network_info VALUES(169, "E-Plus","26203");
+INSERT INTO network_info VALUES(170, "o2 - de","26207");
+INSERT INTO network_info VALUES(171, "o2 - de","26208");
+INSERT INTO network_info VALUES(172, "Telekom.de","26201");
+INSERT INTO network_info VALUES(173, "Vodafone.de","26202");
+INSERT INTO network_info VALUES(174, "DJ EVATIS","63801");
+INSERT INTO network_info VALUES(175, "LIME","366110");
+INSERT INTO network_info VALUES(176, "Cingular","366020");
+INSERT INTO network_info VALUES(177, "3 DK","23806");
+INSERT INTO network_info VALUES(178, "Telenor DK","23802");
+INSERT INTO network_info VALUES(179, "Telenor DK","23877");
+INSERT INTO network_info VALUES(180, "Telia DK","23820");
+INSERT INTO network_info VALUES(181, "Telia-Telenor DK","23866");
+INSERT INTO network_info VALUES(182, "CLARO DOM","37002");
+INSERT INTO network_info VALUES(183, "Orange","37001");
+INSERT INTO network_info VALUES(184, "VIVA","37004");
+INSERT INTO network_info VALUES(185, "ALG Mobilis","60301");
+INSERT INTO network_info VALUES(186, "Djezzy","60302");
+INSERT INTO network_info VALUES(187, "Ooredoo ","60303");
+INSERT INTO network_info VALUES(188, "CLARO","74001");
+INSERT INTO network_info VALUES(189, "Corporacion Nacional de Telecomunicaciones CNT E.P.","74002");
+INSERT INTO network_info VALUES(190, "Movistar","74000");
+INSERT INTO network_info VALUES(191, "EGY MobiNiL","60201");
+INSERT INTO network_info VALUES(192, "Etisalat","60203");
+INSERT INTO network_info VALUES(193, "vodafone EG","60202");
+INSERT INTO network_info VALUES(194, "Orange","21403");
+INSERT INTO network_info VALUES(195, "Movistar","21407");
+INSERT INTO network_info VALUES(196, "vodafone ES","21401");
+INSERT INTO network_info VALUES(197, "Yoigo","21404");
+INSERT INTO network_info VALUES(198, "EMT","24801");
+INSERT INTO network_info VALUES(199, "EE elisa","24802");
+INSERT INTO network_info VALUES(200, "Tele2 EE","24803");
+INSERT INTO network_info VALUES(201, "ETH-MTN","63601");
+INSERT INTO network_info VALUES(202, "FI AMT","24414");
+INSERT INTO network_info VALUES(203, "DNA","24403");
+INSERT INTO network_info VALUES(204, "DNA","24412");
+INSERT INTO network_info VALUES(205, "FI elisa","24405");
+INSERT INTO network_info VALUES(206, "FI SONERA","24491");
+INSERT INTO network_info VALUES(207, "DIGICEL","54202");
+INSERT INTO network_info VALUES(208, "FJ VODAFONE","54201");
+INSERT INTO network_info VALUES(209, "C&W FLK","750001");
+INSERT INTO network_info VALUES(210, "F-Bouygues Telecom","20820");
+INSERT INTO network_info VALUES(211, "F - Contact","20888");
+INSERT INTO network_info VALUES(212, "DIGICEL","34020");
+INSERT INTO network_info VALUES(213, "Free","20815");
+INSERT INTO network_info VALUES(214, "F-Orange","34001");
+INSERT INTO network_info VALUES(215, "Orange F","20801");
+INSERT INTO network_info VALUES(216, "F-Contact","20802");
+INSERT INTO network_info VALUES(217, "F SFR","20809");
+INSERT INTO network_info VALUES(218, "F SFR","20810");
+INSERT INTO network_info VALUES(219, "F - Contact","20813");
+INSERT INTO network_info VALUES(220, "F-VINI","54720");
+INSERT INTO network_info VALUES(221, "Foroya Tele","28801");
+INSERT INTO network_info VALUES(222, "VODAFONE FO","28802");
+INSERT INTO network_info VALUES(223, "FSM Telecom","55001");
+INSERT INTO network_info VALUES(224, "ETISALAT GAB","62802");
+INSERT INTO network_info VALUES(225, "ZAIN GA","62803");
+INSERT INTO network_info VALUES(226, "LIBERTIS","62801");
+INSERT INTO network_info VALUES(227, "AeroMobile","90114");
+INSERT INTO network_info VALUES(228, "EE","23433");
+INSERT INTO network_info VALUES(229, "EE","23432");
+INSERT INTO network_info VALUES(230, "EE","23431");
+INSERT INTO network_info VALUES(231, "EE","23430");
+INSERT INTO network_info VALUES(232, "3 UK","23420");
+INSERT INTO network_info VALUES(233, "Inmarsat","90111");
+INSERT INTO network_info VALUES(234, "JT","23450");
+INSERT INTO network_info VALUES(235, "Manx Telecom","23458");
+INSERT INTO network_info VALUES(236, "Marathon","23428");
+INSERT INTO network_info VALUES(237, "Sure","23455");
+INSERT INTO network_info VALUES(238, "PMN UK","23419");
+INSERT INTO network_info VALUES(239, "O2 - UK","23410");
+INSERT INTO network_info VALUES(240, "vodafone UK","23415");
+INSERT INTO network_info VALUES(241, "GEO-GEOCELL","28201");
+INSERT INTO network_info VALUES(242, "MAGTI-GSM-GEO","28202");
+INSERT INTO network_info VALUES(243, "BEELINE GE","28204");
+INSERT INTO network_info VALUES(244, "Airtel GH","62006");
+INSERT INTO network_info VALUES(245, "GH Vodafone","62002");
+INSERT INTO network_info VALUES(246, "GH MTN","62001");
+INSERT INTO network_info VALUES(247, "CTS","26606");
+INSERT INTO network_info VALUES(248, "Shine","26609");
+INSERT INTO network_info VALUES(249, "GIBTEL GSM","26601");
+INSERT INTO network_info VALUES(250, "GNMTN","61104");
+INSERT INTO network_info VALUES(251, "Orange GN","61101");
+INSERT INTO network_info VALUES(252, "GN LAGUI","61102");
+INSERT INTO network_info VALUES(253, "DAUPHIN","34008");
+INSERT INTO network_info VALUES(254, "AFRICELL","60702");
+INSERT INTO network_info VALUES(255, "GM COMIUM","60703");
+INSERT INTO network_info VALUES(256, "GAMCEL","60701");
+INSERT INTO network_info VALUES(257, "Qcell","60704");
+INSERT INTO network_info VALUES(258, "MTN","63202");
+INSERT INTO network_info VALUES(259, "GNQ01","62701");
+INSERT INTO network_info VALUES(260, "GNQ-Muni","62703");
+INSERT INTO network_info VALUES(261, "GR COSMOTE","20201");
+INSERT INTO network_info VALUES(262, "vodafone GR","20205");
+INSERT INTO network_info VALUES(263, "WIND GR","20209");
+INSERT INTO network_info VALUES(264, "WIND GR","20210");
+INSERT INTO network_info VALUES(265, "LIME","352110");
+INSERT INTO network_info VALUES(266, "DIGICEL","352030");
+INSERT INTO network_info VALUES(267, "TELE Greenland","29001");
+INSERT INTO network_info VALUES(268, "Comcel_GSM","70402");
+INSERT INTO network_info VALUES(269, "CLARO GTM","70401");
+INSERT INTO network_info VALUES(270, "Movistar","70403");
+INSERT INTO network_info VALUES(271, "ONLY","34002");
+INSERT INTO network_info VALUES(272, "GTA ","310140");
+INSERT INTO network_info VALUES(273, "GUY CLNK PLS","738002");
+INSERT INTO network_info VALUES(274, "DIGICEL","73801");
+INSERT INTO network_info VALUES(275, "China Mobile HK","45413");
+INSERT INTO network_info VALUES(276, "China Mobile HK","45412");
+INSERT INTO network_info VALUES(277, "CSL","45410");
+INSERT INTO network_info VALUES(278, "CSL","45402");
+INSERT INTO network_info VALUES(279, "CSL","45418");
+INSERT INTO network_info VALUES(280, "CSL","45400");
+INSERT INTO network_info VALUES(281, "PCCW-HKT","45420");
+INSERT INTO network_info VALUES(282, "PCCW-HKT","45416");
+INSERT INTO network_info VALUES(283, "PCCW-HKT","45419");
+INSERT INTO network_info VALUES(284, "3(2G)","45404");
+INSERT INTO network_info VALUES(285, "3","45403");
+INSERT INTO network_info VALUES(286, "SmarTone HK","45417");
+INSERT INTO network_info VALUES(287, "SmarTone HK","45415");
+INSERT INTO network_info VALUES(288, "SmarTone HK","45406");
+INSERT INTO network_info VALUES(289, "HND","708030");
+INSERT INTO network_info VALUES(290, "CLARO HND","708001");
+INSERT INTO network_info VALUES(291, "CELTELHND","70802");
+INSERT INTO network_info VALUES(292, "Tele2 HR","21902");
+INSERT INTO network_info VALUES(293, "HR VIP","21910");
+INSERT INTO network_info VALUES(294, "COMCEL","37201");
+INSERT INTO network_info VALUES(295, "Natcom","37203");
+INSERT INTO network_info VALUES(296, "Telekom HU","21630");
+INSERT INTO network_info VALUES(297, "Telenor HU","21601");
+INSERT INTO network_info VALUES(298, "vodafone HU","21670");
+INSERT INTO network_info VALUES(299, "ACeS","51000");
+INSERT INTO network_info VALUES(300, "IND XL","51011");
+INSERT INTO network_info VALUES(301, "3","51089");
+INSERT INTO network_info VALUES(302, "IND INDOSAT","51021");
+INSERT INTO network_info VALUES(303, "IND INDOSAT","51001");
+INSERT INTO network_info VALUES(304, "IND TELKOMSEL","51010");
+INSERT INTO network_info VALUES(305, "AXIS","51008");
+INSERT INTO network_info VALUES(306, "AIRCEL","40442");
+INSERT INTO network_info VALUES(307, "Aircel","405805");
+INSERT INTO network_info VALUES(308, "Aircel","405806");
+INSERT INTO network_info VALUES(309, "Aircel","405804");
+INSERT INTO network_info VALUES(310, "Aircel","405803");
+INSERT INTO network_info VALUES(311, "Aircel","405802");
+INSERT INTO network_info VALUES(312, "Aircel","405800");
+INSERT INTO network_info VALUES(313, "Aircel","405801");
+INSERT INTO network_info VALUES(314, "CellOne","40479");
+INSERT INTO network_info VALUES(315, "CellOne","40473");
+INSERT INTO network_info VALUES(316, "CellOne","40438");
+INSERT INTO network_info VALUES(317, "CellOne","40475");
+INSERT INTO network_info VALUES(318, "CellOne","40464");
+INSERT INTO network_info VALUES(319, "CellOne","40457");
+INSERT INTO network_info VALUES(320, "CellOne","40434");
+INSERT INTO network_info VALUES(321, "CellOne","40451");
+INSERT INTO network_info VALUES(322, "CellOne","40462");
+INSERT INTO network_info VALUES(323, "CellOne","40471");
+INSERT INTO network_info VALUES(324, "CellOne","40472");
+INSERT INTO network_info VALUES(325, "CellOne","40481");
+INSERT INTO network_info VALUES(326, "CellOne","40458");
+INSERT INTO network_info VALUES(327, "CellOne","40466");
+INSERT INTO network_info VALUES(328, "CellOne","40477");
+INSERT INTO network_info VALUES(329, "CellOne","40476");
+INSERT INTO network_info VALUES(330, "CellOne","40453");
+INSERT INTO network_info VALUES(331, "CellOne","40459");
+INSERT INTO network_info VALUES(332, "CellOne","40480");
+INSERT INTO network_info VALUES(333, "CellOne","40455");
+INSERT INTO network_info VALUES(334, "CellOne","40454");
+INSERT INTO network_info VALUES(335, "CellOne","40474");
+INSERT INTO network_info VALUES(336, "IND airtel","40551");
+INSERT INTO network_info VALUES(337, "IND airtel","40552");
+INSERT INTO network_info VALUES(338, "IND airtel","40497");
+INSERT INTO network_info VALUES(339, "IND airtel","40553");
+INSERT INTO network_info VALUES(340, "IND airtel","40449");
+INSERT INTO network_info VALUES(341, "IND airtel","40440");
+INSERT INTO network_info VALUES(342, "IND airtel","40403");
+INSERT INTO network_info VALUES(343, "IND airtel","40410");
+INSERT INTO network_info VALUES(344, "IND airtel","40431");
+INSERT INTO network_info VALUES(345, "IND airtel","40445");
+INSERT INTO network_info VALUES(346, "IND airtel","40554");
+INSERT INTO network_info VALUES(347, "IND airtel","40492");
+INSERT INTO network_info VALUES(348, "IND airtel","40402");
+INSERT INTO network_info VALUES(349, "IND airtel","40494");
+INSERT INTO network_info VALUES(350, "IND airtel","40493");
+INSERT INTO network_info VALUES(351, "IND airtel","40498");
+INSERT INTO network_info VALUES(352, "IND airtel","40495");
+INSERT INTO network_info VALUES(353, "IND airtel","40490");
+INSERT INTO network_info VALUES(354, "IND airtel","40496");
+INSERT INTO network_info VALUES(355, "IND airtel","40555");
+INSERT INTO network_info VALUES(356, "IND airtel","40556");
+INSERT INTO network_info VALUES(357, "IND airtel","40470");
+INSERT INTO network_info VALUES(358, "IND airtel","40416");
+INSERT INTO network_info VALUES(359, "IDEA","40404");
+INSERT INTO network_info VALUES(360, "IDEA","40407");
+INSERT INTO network_info VALUES(361, "IDEA","405799");
+INSERT INTO network_info VALUES(362, "IDEA","405845");
+INSERT INTO network_info VALUES(363, "IDEA","40444");
+INSERT INTO network_info VALUES(364, "IDEA","405846");
+INSERT INTO network_info VALUES(365, "IDEA","40456");
+INSERT INTO network_info VALUES(366, "IDEA","40489");
+INSERT INTO network_info VALUES(367, "IDEA","40570");
+INSERT INTO network_info VALUES(368, "IDEA","40482");
+INSERT INTO network_info VALUES(369, "IDEA","40487");
+INSERT INTO network_info VALUES(370, "IDEA","40424");
+INSERT INTO network_info VALUES(371, "IDEA","405848");
+INSERT INTO network_info VALUES(372, "IDEA","40419");
+INSERT INTO network_info VALUES(373, "IDEA","405850");
+INSERT INTO network_info VALUES(374, "IDEA","405852");
+INSERT INTO network_info VALUES(375, "IDEA","405853");
+INSERT INTO network_info VALUES(376, "IDEA","40412");
+INSERT INTO network_info VALUES(377, "IDEA","40422");
+INSERT INTO network_info VALUES(378, "IDEA","40414");
+INSERT INTO network_info VALUES(379, "IDEA","405849");
+INSERT INTO network_info VALUES(380, "IDEA","40478");
+INSERT INTO network_info VALUES(381, "IN-DOLPHIN","40468");
+INSERT INTO network_info VALUES(382, "IN-DOLPHIN","40469");
+INSERT INTO network_info VALUES(383, "Reliance","40436");
+INSERT INTO network_info VALUES(384, "Reliance","40418");
+INSERT INTO network_info VALUES(385, "Reliance","40409");
+INSERT INTO network_info VALUES(386, "Reliance","40452");
+INSERT INTO network_info VALUES(387, "Reliance","40450");
+INSERT INTO network_info VALUES(388, "Reliance","40467");
+INSERT INTO network_info VALUES(389, "Reliance","40485");
+INSERT INTO network_info VALUES(390, "Reliance","40483");
+INSERT INTO network_info VALUES(391, "Reliance","40509");
+INSERT INTO network_info VALUES(392, "Reliance","40513");
+INSERT INTO network_info VALUES(393, "Reliance","40507");
+INSERT INTO network_info VALUES(394, "Reliance","40515");
+INSERT INTO network_info VALUES(395, "Reliance","40511");
+INSERT INTO network_info VALUES(396, "Reliance","40505");
+INSERT INTO network_info VALUES(397, "Reliance","40520");
+INSERT INTO network_info VALUES(398, "Reliance","40518");
+INSERT INTO network_info VALUES(399, "Reliance","40519");
+INSERT INTO network_info VALUES(400, "Reliance","40501");
+INSERT INTO network_info VALUES(401, "Reliance","40521");
+INSERT INTO network_info VALUES(402, "Reliance","40506");
+INSERT INTO network_info VALUES(403, "Reliance","40510");
+INSERT INTO network_info VALUES(404, "Reliance","40522");
+INSERT INTO network_info VALUES(405, "IND-JIO","405859");
+INSERT INTO network_info VALUES(406, "IND-JIO","405860");
+INSERT INTO network_info VALUES(407, "IND-JIO","405861");
+INSERT INTO network_info VALUES(408, "IND-JIO","405858");
+INSERT INTO network_info VALUES(409, "IND-JIO","405854");
+INSERT INTO network_info VALUES(410, "IND-JIO","405862");
+INSERT INTO network_info VALUES(411, "IND-JIO","405855");
+INSERT INTO network_info VALUES(412, "IND-JIO","405856");
+INSERT INTO network_info VALUES(413, "IND-JIO","405857");
+INSERT INTO network_info VALUES(414, "IND-JIO","405866");
+INSERT INTO network_info VALUES(415, "IND-JIO","405870");
+INSERT INTO network_info VALUES(416, "IND-JIO","405871");
+INSERT INTO network_info VALUES(417, "IND-JIO","405872");
+INSERT INTO network_info VALUES(418, "IND-JIO","405874");
+INSERT INTO network_info VALUES(419, "IND-JIO","405869");
+INSERT INTO network_info VALUES(420, "IND-JIO","405868");
+INSERT INTO network_info VALUES(421, "IND-JIO","405864");
+INSERT INTO network_info VALUES(422, "IND-JIO","405865");
+INSERT INTO network_info VALUES(423, "IND-JIO","405840");
+INSERT INTO network_info VALUES(424, "IND-JIO","405867");
+INSERT INTO network_info VALUES(425, "IND-JIO","405863");
+INSERT INTO network_info VALUES(426, "IND-JIO","405873");
+INSERT INTO network_info VALUES(427, "TATA DOCOMO","405034");
+INSERT INTO network_info VALUES(428, "TATA DOCOMO","405031");
+INSERT INTO network_info VALUES(429, "TATA DOCOMO","405030");
+INSERT INTO network_info VALUES(430, "TATA DOCOMO","405035");
+INSERT INTO network_info VALUES(431, "TATA DOCOMO","405036");
+INSERT INTO network_info VALUES(432, "TATA DOCOMO","405042");
+INSERT INTO network_info VALUES(433, "TATA DOCOMO","405041");
+INSERT INTO network_info VALUES(434, "TATA DOCOMO","405038");
+INSERT INTO network_info VALUES(435, "TATA DOCOMO","405029");
+INSERT INTO network_info VALUES(436, "TATA DOCOMO","405032");
+INSERT INTO network_info VALUES(437, "TATA DOCOMO","405046");
+INSERT INTO network_info VALUES(438, "TATA DOCOMO","405027");
+INSERT INTO network_info VALUES(439, "TATA DOCOMO","405044");
+INSERT INTO network_info VALUES(440, "TATA DOCOMO","405043");
+INSERT INTO network_info VALUES(441, "TATA DOCOMO","405047");
+INSERT INTO network_info VALUES(442, "TATA DOCOMO","405045");
+INSERT INTO network_info VALUES(443, "TATA DOCOMO","405025");
+INSERT INTO network_info VALUES(444, "TATA DOCOMO","405037");
+INSERT INTO network_info VALUES(445, "TATA DOCOMO","405039");
+INSERT INTO network_info VALUES(446, "IN UNITECH","405818");
+INSERT INTO network_info VALUES(447, "IN UNITECH","405879");
+INSERT INTO network_info VALUES(448, "IN UNITECH","405817");
+INSERT INTO network_info VALUES(449, "IN UNITECH","405819");
+INSERT INTO network_info VALUES(450, "IN UNITECH","405816");
+INSERT INTO network_info VALUES(451, "IN UNITECH","405822");
+INSERT INTO network_info VALUES(452, "IN UNITECH","405875");
+INSERT INTO network_info VALUES(453, "IN UNITECH","405820");
+INSERT INTO network_info VALUES(454, "IN UNITECH","405815");
+INSERT INTO network_info VALUES(455, "IN UNITECH","405821");
+INSERT INTO network_info VALUES(456, "IN UNITECH","405876");
+INSERT INTO network_info VALUES(457, "IN UNITECH","405928");
+INSERT INTO network_info VALUES(458, "IN UNITECH","405929");
+INSERT INTO network_info VALUES(459, "IN UNITECH","405927");
+INSERT INTO network_info VALUES(460, "IN UNITECH","405926");
+INSERT INTO network_info VALUES(461, "IN UNITECH","405880");
+INSERT INTO network_info VALUES(462, "IN UNITECH","405925");
+INSERT INTO network_info VALUES(463, "IN UNITECH","405878");
+INSERT INTO network_info VALUES(464, "IN UNITECH","405877");
+INSERT INTO network_info VALUES(465, "IN UNITECH","405813");
+INSERT INTO network_info VALUES(466, "IN UNITECH","405814");
+INSERT INTO network_info VALUES(467, "IN UNITECH","405844");
+INSERT INTO network_info VALUES(468, "VIDEOCON","405829");
+INSERT INTO network_info VALUES(469, "VIDEOCON","405825");
+INSERT INTO network_info VALUES(470, "VIDEOCON","405828");
+INSERT INTO network_info VALUES(471, "VIDEOCON","405838");
+INSERT INTO network_info VALUES(472, "VIDEOCON","405839");
+INSERT INTO network_info VALUES(473, "VIDEOCON","405824");
+INSERT INTO network_info VALUES(474, "VIDEOCON","405841");
+INSERT INTO network_info VALUES(475, "VIDEOCON","405842");
+INSERT INTO network_info VALUES(476, "VIDEOCON","405843");
+INSERT INTO network_info VALUES(477, "VIDEOCON","405837");
+INSERT INTO network_info VALUES(478, "VIDEOCON","405836");
+INSERT INTO network_info VALUES(479, "VIDEOCON","405832");
+INSERT INTO network_info VALUES(480, "VIDEOCON","405831");
+INSERT INTO network_info VALUES(481, "VIDEOCON","405833");
+INSERT INTO network_info VALUES(482, "VIDEOCON","405834");
+INSERT INTO network_info VALUES(483, "VIDEOCON","405835");
+INSERT INTO network_info VALUES(484, "VIDEOCON","405830");
+INSERT INTO network_info VALUES(485, "VIDEOCON","405827");
+INSERT INTO network_info VALUES(486, "VIDEOCON","405823");
+INSERT INTO network_info VALUES(487, "Vodafone IN","40413");
+INSERT INTO network_info VALUES(488, "Vodafone IN","40484");
+INSERT INTO network_info VALUES(489, "Vodafone IN","40411");
+INSERT INTO network_info VALUES(490, "Vodafone IN","40405");
+INSERT INTO network_info VALUES(491, "Vodafone IN","40401");
+INSERT INTO network_info VALUES(492, "Vodafone IN","40486");
+INSERT INTO network_info VALUES(493, "Vodafone IN","40446");
+INSERT INTO network_info VALUES(494, "Vodafone IN","404030");
+INSERT INTO network_info VALUES(495, "Vodafone IN","40427");
+INSERT INTO network_info VALUES(496, "Vodafone IN","40420");
+INSERT INTO network_info VALUES(497, "Vodafone IN","40488");
+INSERT INTO network_info VALUES(498, "Vodafone IN","40460");
+INSERT INTO network_info VALUES(499, "Vodafone IN","40443");
+INSERT INTO network_info VALUES(500, "Vodafone IN","40415");
+INSERT INTO network_info VALUES(501, "Vodafone IN","40566");
+INSERT INTO network_info VALUES(502, "Vodafone IN","40567");
+INSERT INTO network_info VALUES(503, "Vodafone IN","405751");
+INSERT INTO network_info VALUES(504, "Vodafone IN","405752");
+INSERT INTO network_info VALUES(505, "Vodafone IN","405754");
+INSERT INTO network_info VALUES(506, "Vodafone IN","405750");
+INSERT INTO network_info VALUES(507, "Vodafone IN","405756");
+INSERT INTO network_info VALUES(508, "Vodafone IN","405755");
+INSERT INTO network_info VALUES(509, "Vodafone IN","405753");
+INSERT INTO network_info VALUES(510, "3 IRL","27205");
+INSERT INTO network_info VALUES(511, "IRL - METEOR","27203");
+INSERT INTO network_info VALUES(512, "O2-IRL","27202");
+INSERT INTO network_info VALUES(513, "vodafone IE","27201");
+INSERT INTO network_info VALUES(514, "MTN Irancell","43235");
+INSERT INTO network_info VALUES(515, "IR KISH","43214");
+INSERT INTO network_info VALUES(516, "IR-TCI","43211");
+INSERT INTO network_info VALUES(517, "Iran Taliya","43232");
+INSERT INTO network_info VALUES(518, "IRN 20","43220");
+INSERT INTO network_info VALUES(519, "ASIACELL","41805");
+INSERT INTO network_info VALUES(520, "IRAQNA","41830");
+INSERT INTO network_info VALUES(521, "zain IQ","41820");
+INSERT INTO network_info VALUES(522, "KOREK","41840");
+INSERT INTO network_info VALUES(523, "Vodafone","27402");
+INSERT INTO network_info VALUES(524, "Viking","27404");
+INSERT INTO network_info VALUES(525, "NOVA IS","27411");
+INSERT INTO network_info VALUES(526, "On-waves","27408");
+INSERT INTO network_info VALUES(527, "Siminn","27401");
+INSERT INTO network_info VALUES(528, "Siminn","27412");
+INSERT INTO network_info VALUES(529, "Cellcom IL ","42502");
+INSERT INTO network_info VALUES(530, "IL Pelephone","42503");
+INSERT INTO network_info VALUES(531, "3 ITA","22299");
+INSERT INTO network_info VALUES(532, "I TIM","22201");
+INSERT INTO network_info VALUES(533, "TIM@sea","90126");
+INSERT INTO network_info VALUES(534, "vodafone IT","22210");
+INSERT INTO network_info VALUES(535, "I WIND","22288");
+INSERT INTO network_info VALUES(536, "LIME","338180");
+INSERT INTO network_info VALUES(537, "DIGICEL","338050");
+INSERT INTO network_info VALUES(538, "Airtel-Vodafone","23403");
+INSERT INTO network_info VALUES(539, "Zain JO","41601");
+INSERT INTO network_info VALUES(540, "Orange","41677");
+INSERT INTO network_info VALUES(541, "UMNIAH","41603");
+INSERT INTO network_info VALUES(542, "KDDI","44050");
+INSERT INTO network_info VALUES(543, "JP DOCOMO","44010");
+INSERT INTO network_info VALUES(544, "SoftBank","44020");
+INSERT INTO network_info VALUES(545, "EMOBILE","44000");
+INSERT INTO network_info VALUES(546, "ALTEL","40107");
+INSERT INTO network_info VALUES(547, "Beeline KZ","40101");
+INSERT INTO network_info VALUES(548, "KZ KCELL","40102");
+INSERT INTO network_info VALUES(549, "Tele2","40177");
+INSERT INTO network_info VALUES(550, "Airtel Networks Kenya Ltd","63903");
+INSERT INTO network_info VALUES(551, "Safaricom","63902");
+INSERT INTO network_info VALUES(552, "GSM Telkom","63907");
+INSERT INTO network_info VALUES(553, "MEGACOM","43705");
+INSERT INTO network_info VALUES(554, "O!","43709");
+INSERT INTO network_info VALUES(555, "Cellcard","45601");
+INSERT INTO network_info VALUES(556, "CADCOMMS","45604");
+INSERT INTO network_info VALUES(557, "SMART","45606");
+INSERT INTO network_info VALUES(558, "SMART","45605");
+INSERT INTO network_info VALUES(559, "Mfone","45618");
+INSERT INTO network_info VALUES(560, "Beeline KH","45609");
+INSERT INTO network_info VALUES(561, "Metfone","45608");
+INSERT INTO network_info VALUES(562, "KL-Frigate","54509");
+INSERT INTO network_info VALUES(563, "LIME","356110");
+INSERT INTO network_info VALUES(564, "Koryolink","46705");
+INSERT INTO network_info VALUES(565, "KT","45002");
+INSERT INTO network_info VALUES(566, "KT","45008");
+INSERT INTO network_info VALUES(567, "KOR LG Uplus","45006");
+INSERT INTO network_info VALUES(568, "KOR SK Telecom","45005");
+INSERT INTO network_info VALUES(569, "KT Viva","41904");
+INSERT INTO network_info VALUES(570, "Zain KW","41902");
+INSERT INTO network_info VALUES(571, "KT WATANIYA","41903");
+INSERT INTO network_info VALUES(572, "ETL MOBILE NETWORK","45702");
+INSERT INTO network_info VALUES(573, "","45701");
+INSERT INTO network_info VALUES(574, "Unitel","45703");
+INSERT INTO network_info VALUES(575, "TIGO LAO","45708");
+INSERT INTO network_info VALUES(576, "alfa","41501");
+INSERT INTO network_info VALUES(577, "LBN OGERO Mobile","41505");
+INSERT INTO network_info VALUES(578, "Celcom GSM","61807");
+INSERT INTO network_info VALUES(579, "LBR Lonestar Cell","61801");
+INSERT INTO network_info VALUES(580, "Novafone 4G","61804");
+INSERT INTO network_info VALUES(581, "Al Madar","60601");
+INSERT INTO network_info VALUES(582, "Libyana","60600");
+INSERT INTO network_info VALUES(583, "LIME","358110");
+INSERT INTO network_info VALUES(584, "DIGICEL","358050");
+INSERT INTO network_info VALUES(585, "FL1","29505");
+INSERT INTO network_info VALUES(586, "Orange FL","29502");
+INSERT INTO network_info VALUES(587, "SwisscomFL","29501");
+INSERT INTO network_info VALUES(588, "SRI AIRTEL","41305");
+INSERT INTO network_info VALUES(589, "Hutch","41308");
+INSERT INTO network_info VALUES(590, "LS-ETL","65102");
+INSERT INTO network_info VALUES(591, "OMNITEL LT","24601");
+INSERT INTO network_info VALUES(592, "LT BITE GSM","24602");
+INSERT INTO network_info VALUES(593, "Tele2 LT","24603");
+INSERT INTO network_info VALUES(594, "L Orange-LU","27099");
+INSERT INTO network_info VALUES(595, "L LUXGSM","27001");
+INSERT INTO network_info VALUES(596, "L TANGO","27077");
+INSERT INTO network_info VALUES(597, "LV LMT","24701");
+INSERT INTO network_info VALUES(598, "BITE LV","24705");
+INSERT INTO network_info VALUES(599, "Tele2 LV","24702");
+INSERT INTO network_info VALUES(600, "CTM","45504");
+INSERT INTO network_info VALUES(601, "CTM","45501");
+INSERT INTO network_info VALUES(602, "3 Macau","45503");
+INSERT INTO network_info VALUES(603, "SmarTone MAC","45500");
+INSERT INTO network_info VALUES(604, "CHIPPIE","34003");
+INSERT INTO network_info VALUES(605, "vala","21201");
+INSERT INTO network_info VALUES(606, "Monaco","21210");
+INSERT INTO network_info VALUES(607, "UNITE","25905");
+INSERT INTO network_info VALUES(608, "MD MOLDCELL","25902");
+INSERT INTO network_info VALUES(609, "Orange MD","25901");
+INSERT INTO network_info VALUES(610, "ZAIN MG","64601");
+INSERT INTO network_info VALUES(611, "Orange MG","64602");
+INSERT INTO network_info VALUES(612, "TELMA","64604");
+INSERT INTO network_info VALUES(613, "DHIRAAGU","47201");
+INSERT INTO network_info VALUES(614, "Ooredoo Maldives PVT LTD","47202");
+INSERT INTO network_info VALUES(615, "Iusacell 4G","334050");
+INSERT INTO network_info VALUES(616, "Iusacell 4G","33450");
+INSERT INTO network_info VALUES(617, "Nextel 3G","334090");
+INSERT INTO network_info VALUES(618, "movistar","33403");
+INSERT INTO network_info VALUES(619, "TELCEL","334020");
+INSERT INTO network_info VALUES(620, "ONE MK","29402");
+INSERT INTO network_info VALUES(621, "T-Mobile MK","29401");
+INSERT INTO network_info VALUES(622, "Vip MKD","29403");
+INSERT INTO network_info VALUES(623, "MALITEL ML","61001");
+INSERT INTO network_info VALUES(624, "ORANGE ML","61002");
+INSERT INTO network_info VALUES(625, "Telecoms Malta","27877");
+INSERT INTO network_info VALUES(626, "go mobile","27821");
+INSERT INTO network_info VALUES(627, "vodafone MT","27801");
+INSERT INTO network_info VALUES(628, "MM 900","41401");
+INSERT INTO network_info VALUES(629, "Ooredoo ","41405");
+INSERT INTO network_info VALUES(630, "Telekom.me","29702");
+INSERT INTO network_info VALUES(631, "Telenor","29701");
+INSERT INTO network_info VALUES(632, "GMOBILE_MN","42806");
+INSERT INTO network_info VALUES(633, "MN MobiCom","42899");
+INSERT INTO network_info VALUES(634, "Skytel MN","42801");
+INSERT INTO network_info VALUES(635, "MONGOLIA UNITEL LLC","42888");
+INSERT INTO network_info VALUES(636, "MOR IAM","60401");
+INSERT INTO network_info VALUES(637, "MOR MEDITEL","60400");
+INSERT INTO network_info VALUES(638, "MOZ - mCel","64301");
+INSERT INTO network_info VALUES(639, "MOVITEL","64303");
+INSERT INTO network_info VALUES(640, "VodaCom-MZ","64304");
+INSERT INTO network_info VALUES(641, "MR Expresso","60902");
+INSERT INTO network_info VALUES(642, "MR MATTEL","60901");
+INSERT INTO network_info VALUES(643, "MAURITEL","60910");
+INSERT INTO network_info VALUES(644, "CELLPLUS-MRU","61701");
+INSERT INTO network_info VALUES(645, "EMTEL-MRU","61710");
+INSERT INTO network_info VALUES(646, "LIME","354860");
+INSERT INTO network_info VALUES(647, "MTML","61703");
+INSERT INTO network_info VALUES(648, "CELTEL MW","65010");
+INSERT INTO network_info VALUES(649, "TNM","65001");
+INSERT INTO network_info VALUES(650, "MY CELCOM","50219");
+INSERT INTO network_info VALUES(651, "MY CELCOM 3G","50213");
+INSERT INTO network_info VALUES(652, "DiGi","50216");
+INSERT INTO network_info VALUES(653, "MY MAXIS","50212");
+INSERT INTO network_info VALUES(654, "U MOBILE","50218");
+INSERT INTO network_info VALUES(655, "inwi","60402");
+INSERT INTO network_info VALUES(656, "MTC NAMIBIA","64901");
+INSERT INTO network_info VALUES(657, "tnmobile","64903");
+INSERT INTO network_info VALUES(658, "NCL MOBILIS","54601");
+INSERT INTO network_info VALUES(659, "CELTEL","61402");
+INSERT INTO network_info VALUES(660, "Orange NE","61404");
+INSERT INTO network_info VALUES(661, "ETISALAT NER","61403");
+INSERT INTO network_info VALUES(662, "Norfolk Telecom","50510");
+INSERT INTO network_info VALUES(663, "AirtelNG","62120");
+INSERT INTO network_info VALUES(664, "Etisalat Nigeria","62160");
+INSERT INTO network_info VALUES(665, "Glo NG","62150");
+INSERT INTO network_info VALUES(666, "MTN - NG","62130");
+INSERT INTO network_info VALUES(667, "CLARO NIC","71021");
+INSERT INTO network_info VALUES(668, "CLARO NIC","71073");
+INSERT INTO network_info VALUES(669, "MOVISTARNI","710300");
+INSERT INTO network_info VALUES(670, "NL KPN","20408");
+INSERT INTO network_info VALUES(671, "NL Telfort","20412");
+INSERT INTO network_info VALUES(672, "T-Mobile NL","20416");
+INSERT INTO network_info VALUES(673, "vodafone NL","20404");
+INSERT INTO network_info VALUES(674, "Mobile Norway","24205");
+INSERT INTO network_info VALUES(675, "Mobile Norway","24204");
+INSERT INTO network_info VALUES(676, "N Telenor","24201");
+INSERT INTO network_info VALUES(677, "N NetCom","24202");
+INSERT INTO network_info VALUES(678, "Ncell","42902");
+INSERT INTO network_info VALUES(679, "Telecom NZ","53005");
+INSERT INTO network_info VALUES(680, "2degrees","53024");
+INSERT INTO network_info VALUES(681, "vodafone NZ","53001");
+INSERT INTO network_info VALUES(682, "OMAN MOBILE","42202");
+INSERT INTO network_info VALUES(683, "nawras","42203");
+INSERT INTO network_info VALUES(684, "ZONG","41004");
+INSERT INTO network_info VALUES(685, "Mobilink","41001");
+INSERT INTO network_info VALUES(686, "PK-UFONE","41003");
+INSERT INTO network_info VALUES(687, "Telenor PK","41006");
+INSERT INTO network_info VALUES(688, "WaridTel","41007");
+INSERT INTO network_info VALUES(689, "+Movil - C&W PAN","71401");
+INSERT INTO network_info VALUES(690, "CLARO PA","71403");
+INSERT INTO network_info VALUES(691, "DIGICEL","71404");
+INSERT INTO network_info VALUES(692, "Movistar","714020");
+INSERT INTO network_info VALUES(693, "CLARO PER","71610");
+INSERT INTO network_info VALUES(694, "PERN3","71617");
+INSERT INTO network_info VALUES(695, "MOVISTAR","71606");
+INSERT INTO network_info VALUES(696, "Viettel Peru","71615");
+INSERT INTO network_info VALUES(697, "ACeS","51511");
+INSERT INTO network_info VALUES(698, "PH Sun Cellular","51505");
+INSERT INTO network_info VALUES(699, "Globe Telecom-PH","51502");
+INSERT INTO network_info VALUES(700, "SMART","51503");
+INSERT INTO network_info VALUES(701, "PLWPMC","55280");
+INSERT INTO network_info VALUES(702, "PalauCel","55201");
+INSERT INTO network_info VALUES(703, "bmobile","53701");
+INSERT INTO network_info VALUES(704, "DIGICEL","53703");
+INSERT INTO network_info VALUES(705, "Play","26006");
+INSERT INTO network_info VALUES(706, "Orange PL","26003");
+INSERT INTO network_info VALUES(707, "Plus","26001");
+INSERT INTO network_info VALUES(708, "T-Mobile.pl","26002");
+INSERT INTO network_info VALUES(709, "Open Mob PRI","330120");
+INSERT INTO network_info VALUES(710, "PR Claro","330110");
+INSERT INTO network_info VALUES(711, "MEO","26806");
+INSERT INTO network_info VALUES(712, "P OPTIMUS","26803");
+INSERT INTO network_info VALUES(713, "vodafone P","26801");
+INSERT INTO network_info VALUES(714, "CLARO PY","74402");
+INSERT INTO network_info VALUES(715, "HOLA PARAGUAY S.A.","74401");
+INSERT INTO network_info VALUES(716, "PY Personal","74405");
+INSERT INTO network_info VALUES(717, "TIGO PY","74404");
+INSERT INTO network_info VALUES(718, "JAWWAL-PALESTINE","42505");
+INSERT INTO network_info VALUES(719, "WATANIYA-PALESTINE","42506");
+INSERT INTO network_info VALUES(720, "Vodafone PF","54715");
+INSERT INTO network_info VALUES(721, "Ooredoo","42701");
+INSERT INTO network_info VALUES(722, "vodafone","42702");
+INSERT INTO network_info VALUES(723, "ONLY","64702");
+INSERT INTO network_info VALUES(724, "Orange re","64700");
+INSERT INTO network_info VALUES(725, "SFR REUNION","64710");
+INSERT INTO network_info VALUES(726, "MH-NTA","55101");
+INSERT INTO network_info VALUES(727, "RO COSMOTE","22603");
+INSERT INTO network_info VALUES(728, "RO ORANGE","22610");
+INSERT INTO network_info VALUES(729, "RO Digi.Mobil","22605");
+INSERT INTO network_info VALUES(730, "RO Vodafone RO","22601");
+INSERT INTO network_info VALUES(731, "Orensot","25011");
+INSERT INTO network_info VALUES(732, "ROSTELECOM","25012");
+INSERT INTO network_info VALUES(733, "RUS INDIGO","25019");
+INSERT INTO network_info VALUES(734, "MOTIV","25035");
+INSERT INTO network_info VALUES(735, "MegaFon RUS","25002");
+INSERT INTO network_info VALUES(736, "MTS-RUS","25001");
+INSERT INTO network_info VALUES(737, "ROSTELECOM","25003");
+INSERT INTO network_info VALUES(738, "ROSTELECOM","25038");
+INSERT INTO network_info VALUES(739, "ROSTELECOM","25017");
+INSERT INTO network_info VALUES(740, "ROSTELECOM","25039");
+INSERT INTO network_info VALUES(741, "Beeline","25099");
+INSERT INTO network_info VALUES(742, "NTC","25016");
+INSERT INTO network_info VALUES(743, "RUS 07","25007");
+INSERT INTO network_info VALUES(744, "RUS 15","25015");
+INSERT INTO network_info VALUES(745, "TELE2 RU","25020");
+INSERT INTO network_info VALUES(746, "ROSTELECOM","25005");
+INSERT INTO network_info VALUES(747, "KODOTEL","25037");
+INSERT INTO network_info VALUES(748, "RWAAR","63514");
+INSERT INTO network_info VALUES(749, "TIGO RWANDA","63513");
+INSERT INTO network_info VALUES(750, "Mobily-KSA","42003");
+INSERT INTO network_info VALUES(751, "Zain SA","42004");
+INSERT INTO network_info VALUES(752, "STC","42001");
+INSERT INTO network_info VALUES(753, "MTN","63402");
+INSERT INTO network_info VALUES(754, "ZAIN SS","65906");
+INSERT INTO network_info VALUES(755, "Zain SDN","63401");
+INSERT INTO network_info VALUES(756, "SN-SENTEL SG","60802");
+INSERT INTO network_info VALUES(757, "SN ALIZE","60801");
+INSERT INTO network_info VALUES(758, "SEN expresso","60803");
+INSERT INTO network_info VALUES(759, "SEZ AIRTEL","63310");
+INSERT INTO network_info VALUES(760, "SGP-M1","52503");
+INSERT INTO network_info VALUES(761, "SingTel","52501");
+INSERT INTO network_info VALUES(762, "SingTel","52502");
+INSERT INTO network_info VALUES(763, "SGP Call Zone","52507");
+INSERT INTO network_info VALUES(764, "STARHUB","52505");
+INSERT INTO network_info VALUES(765, "bmobile","54002");
+INSERT INTO network_info VALUES(766, "SI BREEZE","54001");
+INSERT INTO network_info VALUES(767, "CELTEL SL","61901");
+INSERT INTO network_info VALUES(768, "Africell","61905");
+INSERT INTO network_info VALUES(769, "CLARO SLV","70601");
+INSERT INTO network_info VALUES(770, "Digicel","70602");
+INSERT INTO network_info VALUES(771, "movistar","70604");
+INSERT INTO network_info VALUES(772, "TELEMOVIL","70603");
+INSERT INTO network_info VALUES(773, "SMT","29201");
+INSERT INTO network_info VALUES(774, "Som Golis","63730");
+INSERT INTO network_info VALUES(775, "SOMAFONE","63704");
+INSERT INTO network_info VALUES(776, "Somnet TELECOM Inc","63720");
+INSERT INTO network_info VALUES(777, "SOMTEL","63771");
+INSERT INTO network_info VALUES(778, "SO Telesom","63701");
+INSERT INTO network_info VALUES(779, "SPM AMERIS","30801");
+INSERT INTO network_info VALUES(780, "mt:s","22003");
+INSERT INTO network_info VALUES(781, "Telenor SRB","22001");
+INSERT INTO network_info VALUES(782, "Vip SRB","22005");
+INSERT INTO network_info VALUES(783, "SRI DIALOG","41302");
+INSERT INTO network_info VALUES(784, "SRI Etisalat","41303");
+INSERT INTO network_info VALUES(785, "Mobitel","41301");
+INSERT INTO network_info VALUES(786, "Gemtel","65903");
+INSERT INTO network_info VALUES(787, "MTN","65902");
+INSERT INTO network_info VALUES(788, "Vivacell","65904");
+INSERT INTO network_info VALUES(789, "STP CSTmovel","62601");
+INSERT INTO network_info VALUES(790, "DIGICEL","74603");
+INSERT INTO network_info VALUES(791, "UNIQA","74604");
+INSERT INTO network_info VALUES(792, "SR.TELESUR.GSM","74602");
+INSERT INTO network_info VALUES(793, "Orange SK","23101");
+INSERT INTO network_info VALUES(794, "Telekom SK","23102");
+INSERT INTO network_info VALUES(795, "O2 - SK","23106");
+INSERT INTO network_info VALUES(796, "Si.mobil","29340");
+INSERT INTO network_info VALUES(797, "T-2","29364");
+INSERT INTO network_info VALUES(798, "MOBITEL","29341");
+INSERT INTO network_info VALUES(799, "SI TUSMOBIL","29370");
+INSERT INTO network_info VALUES(800, "3 SE","24002");
+INSERT INTO network_info VALUES(801, "Tele2","24007");
+INSERT INTO network_info VALUES(802, "Telenor SE","24008");
+INSERT INTO network_info VALUES(803, "SWEDEN","24004");
+INSERT INTO network_info VALUES(804, "Sweden Mobile","24024");
+INSERT INTO network_info VALUES(805, "TELIA S","24001");
+INSERT INTO network_info VALUES(806, "Sweden 3G","24005");
+INSERT INTO network_info VALUES(807, "Swazi-MTN","65310");
+INSERT INTO network_info VALUES(808, "C&W SEY","63301");
+INSERT INTO network_info VALUES(809, "MTN","41702");
+INSERT INTO network_info VALUES(810, "SYRIATEL","41701");
+INSERT INTO network_info VALUES(811, "LIME","376350");
+INSERT INTO network_info VALUES(812, "IslandCom TCI","376360");
+INSERT INTO network_info VALUES(813, "CELTEL TCD","62201");
+INSERT INTO network_info VALUES(814, "Tigo TD","62203");
+INSERT INTO network_info VALUES(815, "SALAM","62207");
+INSERT INTO network_info VALUES(816, "ETISALAT TOGO","61503");
+INSERT INTO network_info VALUES(817, "TG-TOGO CELL","61501");
+INSERT INTO network_info VALUES(818, "ACeS","52020");
+INSERT INTO network_info VALUES(819, "TH GSM","52001");
+INSERT INTO network_info VALUES(820, "AIS 3G","52003");
+INSERT INTO network_info VALUES(821, "TH 3G+","52000");
+INSERT INTO network_info VALUES(822, "dtac TriNet","52005");
+INSERT INTO network_info VALUES(823, "TH GSM 1800","52023");
+INSERT INTO network_info VALUES(824, "TRUE 3G+","52004");
+INSERT INTO network_info VALUES(825, "TOT3G","52015");
+INSERT INTO network_info VALUES(826, "TH-DTAC","52018");
+INSERT INTO network_info VALUES(827, "TRUE","52099");
+INSERT INTO network_info VALUES(828, "Babilon-M","43604");
+INSERT INTO network_info VALUES(829, "TCELL","43602");
+INSERT INTO network_info VALUES(830, "TCELL","43601");
+INSERT INTO network_info VALUES(831, "MegaFon TJK","43603");
+INSERT INTO network_info VALUES(832, "BEELINE TJ","43605");
+INSERT INTO network_info VALUES(833, "TM CELL","43802");
+INSERT INTO network_info VALUES(834, "MTS TM","43801");
+INSERT INTO network_info VALUES(835, "TLS-TT","51402");
+INSERT INTO network_info VALUES(836, "Digicel  Tonga","53988");
+INSERT INTO network_info VALUES(837, "U-CALL","53901");
+INSERT INTO network_info VALUES(838, "TSTT","37412");
+INSERT INTO network_info VALUES(839, "Orange","60501");
+INSERT INTO network_info VALUES(840, "TUNISIANA","60503");
+INSERT INTO network_info VALUES(841, "TUNISIE TELECOM","60502");
+INSERT INTO network_info VALUES(842, "AVEA","28603");
+INSERT INTO network_info VALUES(843, "TR TURKCELL","28601");
+INSERT INTO network_info VALUES(844, "VODAFONE TR","28602");
+INSERT INTO network_info VALUES(845, "ACeS","46668");
+INSERT INTO network_info VALUES(846, "Chunghwa Telecom","46692");
+INSERT INTO network_info VALUES(847, "Far EasTone","46601");
+INSERT INTO network_info VALUES(848, "KGT-Online","46688");
+INSERT INTO network_info VALUES(849, "TWN MOBITAI","46693");
+INSERT INTO network_info VALUES(850, "TW Mobile","46697");
+INSERT INTO network_info VALUES(851, "VIBO","46689");
+INSERT INTO network_info VALUES(852, "celtel","64005");
+INSERT INTO network_info VALUES(853, "TIGO - TZ","64002");
+INSERT INTO network_info VALUES(854, "VodaCom","64004");
+INSERT INTO network_info VALUES(855, "ZANTEL-TZ","64003");
+INSERT INTO network_info VALUES(856, "UG CelTel","64101");
+INSERT INTO network_info VALUES(857, "MTN-UGANDA","64110");
+INSERT INTO network_info VALUES(858, "ORANGE UGANDA","64114");
+INSERT INTO network_info VALUES(859, "Uganda Telecom","64111");
+INSERT INTO network_info VALUES(860, "WaridTel","64122");
+INSERT INTO network_info VALUES(861, "life:)","25506");
+INSERT INTO network_info VALUES(862, "UA-GT","25505");
+INSERT INTO network_info VALUES(863, "Beeline UA","25502");
+INSERT INTO network_info VALUES(864, "UA-KYIVSTAR","25503");
+INSERT INTO network_info VALUES(865, "MTS UKR","25501");
+INSERT INTO network_info VALUES(866, "TriMob","25507");
+INSERT INTO network_info VALUES(867, "CLARO URUGUAY","74810");
+INSERT INTO network_info VALUES(868, "Antel","74801");
+INSERT INTO network_info VALUES(869, "Movistar","74807");
+INSERT INTO network_info VALUES(870, "AT&T","310280");
+INSERT INTO network_info VALUES(871, "AT&T","310030");
+INSERT INTO network_info VALUES(872, "AT&T","310380");
+INSERT INTO network_info VALUES(873, "AT&T","310170");
+INSERT INTO network_info VALUES(874, "AT&T","310150");
+INSERT INTO network_info VALUES(875, "AT&T","310410");
+INSERT INTO network_info VALUES(876, "USAACSI","310880");
+INSERT INTO network_info VALUES(877, "USA AE Airadigm","310640");
+INSERT INTO network_info VALUES(878, "USA ASTAC","310710");
+INSERT INTO network_info VALUES(879, "USAWC","310180");
+INSERT INTO network_info VALUES(880, "MOSAIC","311500");
+INSERT INTO network_info VALUES(881, "USAC1ECI","311190");
+INSERT INTO network_info VALUES(882, "USA AmeriLink","310630");
+INSERT INTO network_info VALUES(883, "Cinti Bell","310420");
+INSERT INTO network_info VALUES(884, "CLEAR","311940");
+INSERT INTO network_info VALUES(885, "USA - Commnet","311040");
+INSERT INTO network_info VALUES(886, "USACWCI","311240");
+INSERT INTO network_info VALUES(887, "Corr Wireless","310080");
+INSERT INTO network_info VALUES(888, "USA DOCOMO PACIFIC","310470");
+INSERT INTO network_info VALUES(889, "US PLATEAU","310100");
+INSERT INTO network_info VALUES(890, "IT&E","310032");
+INSERT INTO network_info VALUES(891, "Indigo","311030");
+INSERT INTO network_info VALUES(892, "Iowa Wireless USA","310770");
+INSERT INTO network_info VALUES(893, "Iowa Wireless USA","310530");
+INSERT INTO network_info VALUES(894, "Jasper","310650");
+INSERT INTO network_info VALUES(895, "US","310870");
+INSERT INTO network_info VALUES(896, "Limitless Mobile USA","310690");
+INSERT INTO network_info VALUES(897, "USASXLP","311090");
+INSERT INTO network_info VALUES(898, "Chinook","310570");
+INSERT INTO network_info VALUES(899, "BTW","311330");
+INSERT INTO network_info VALUES(900, "NEP Wireless","310290");
+INSERT INTO network_info VALUES(901, "USANW","311530");
+INSERT INTO network_info VALUES(902, "USACL","312260");
+INSERT INTO network_info VALUES(903, "USA1L","310460");
+INSERT INTO network_info VALUES(904, "SRT Wireless","312230");
+INSERT INTO network_info VALUES(905, "Cell One of NE Colorado","310450");
+INSERT INTO network_info VALUES(906, "Northeast Wireless","311710");
+INSERT INTO network_info VALUES(907, "USA OTZ","310740");
+INSERT INTO network_info VALUES(908, "Pine Cellular","311080");
+INSERT INTO network_info VALUES(909, "USA Proximiti","311730");
+INSERT INTO network_info VALUES(910, "USA Proximiti","311540");
+INSERT INTO network_info VALUES(911, "Sagebrush","312480");
+INSERT INTO network_info VALUES(912, "USA - CellularOne","310320");
+INSERT INTO network_info VALUES(913, "Sprint","310120");
+INSERT INTO network_info VALUES(914, "T-Mobile","310660");
+INSERT INTO network_info VALUES(915, "T-Mobile","310800");
+INSERT INTO network_info VALUES(916, "T-Mobile","310310");
+INSERT INTO network_info VALUES(917, "SunCom","310490");
+INSERT INTO network_info VALUES(918, "T-Mobile","310260");
+INSERT INTO network_info VALUES(919, "T-Mobile","310580");
+INSERT INTO network_info VALUES(920, "T-Mobile","310270");
+INSERT INTO network_info VALUES(921, "T-Mobile","310210");
+INSERT INTO network_info VALUES(922, "T-Mobile","310200");
+INSERT INTO network_info VALUES(923, "T-Mobile","310250");
+INSERT INTO network_info VALUES(924, "T-Mobile","310220");
+INSERT INTO network_info VALUES(925, "T-Mobile","310160");
+INSERT INTO network_info VALUES(926, "T-Mobile","310230");
+INSERT INTO network_info VALUES(927, "T-Mobile","310240");
+INSERT INTO network_info VALUES(928, "telna Mobile","310840");
+INSERT INTO network_info VALUES(929, "ACS","31050");
+INSERT INTO network_info VALUES(930, "USA Dutch Harbor","310190");
+INSERT INTO network_info VALUES(931, "GCI","311370");
+INSERT INTO network_info VALUES(932, "US - Union Telephone","310020");
+INSERT INTO network_info VALUES(933, "U.S.Cellular","310730");
+INSERT INTO network_info VALUES(934, "U.S.Cellular","311580");
+INSERT INTO network_info VALUES(935, "CoverageCo","312060");
+INSERT INTO network_info VALUES(936, "Verizon","310890");
+INSERT INTO network_info VALUES(937, "Verizon","310590");
+INSERT INTO network_info VALUES(938, "Verizon","311480");
+INSERT INTO network_info VALUES(939, "USA  iCAN","310400");
+INSERT INTO network_info VALUES(940, "WestLink","310340");
+INSERT INTO network_info VALUES(941, "Wilkes USA","311150");
+INSERT INTO network_info VALUES(942, "BigSkyUS","310300");
+INSERT INTO network_info VALUES(943, "UZB MTS","43407");
+INSERT INTO network_info VALUES(944, "UZB Ucell","43405");
+INSERT INTO network_info VALUES(945, "Beeline UZ","43404");
+INSERT INTO network_info VALUES(946, "LIME","360110");
+INSERT INTO network_info VALUES(947, "DIGICEL","360070");
+INSERT INTO network_info VALUES(948, "DIGITEL GSM","73402");
+INSERT INTO network_info VALUES(949, "movistar","73404");
+INSERT INTO network_info VALUES(950, "VE_MOVILNET","73406");
+INSERT INTO network_info VALUES(951, "LIME","348170");
+INSERT INTO network_info VALUES(952, "CCT Boatphone","348570");
+INSERT INTO network_info VALUES(953, "Gmobile","45207");
+INSERT INTO network_info VALUES(954, "VN Vietnamobile","45205");
+INSERT INTO network_info VALUES(955, "VN VINAPHONE","45202");
+INSERT INTO network_info VALUES(956, "VIETTEL","45204");
+INSERT INTO network_info VALUES(957, "Digicel","54105");
+INSERT INTO network_info VALUES(958, "VUT SMILE","54101");
+INSERT INTO network_info VALUES(959, "Bluesky","54927");
+INSERT INTO network_info VALUES(960, "DIGICEL","54900");
+INSERT INTO network_info VALUES(961, "MTN","42102");
+INSERT INTO network_info VALUES(962, "Y-Telecom","42104");
+INSERT INTO network_info VALUES(963, "SabaFon","42101");
+INSERT INTO network_info VALUES(964, "Cell C","65507");
+INSERT INTO network_info VALUES(965, "MTN-SA","65510");
+INSERT INTO network_info VALUES(966, "TelkomSA","65502");
+INSERT INTO network_info VALUES(967, "VodaCom-SA","65501");
+INSERT INTO network_info VALUES(968, "ZM CELTEL","64501");
+INSERT INTO network_info VALUES(969, "MTN ZM","64502");
+INSERT INTO network_info VALUES(970, "ZW ECONET","64804");
+INSERT INTO network_info VALUES(971, "ZW NET*ONE","64801");
+INSERT INTO network_info VALUES(972, "TELECEL ZW","64803");
+INSERT INTO "network_info" VALUES(973,'PLMN_20420','20420');
+INSERT INTO "network_info" VALUES(974,'PLMN_20605','20605');
+INSERT INTO "network_info" VALUES(975,'PLMN_21406','21406');
+INSERT INTO "network_info" VALUES(976,'PLMN_63104','63104');
+INSERT INTO "network_info" VALUES(977,'PLMN_21408','21408');
+INSERT INTO "network_info" VALUES(978,'PLMN_21416','21416');
+INSERT INTO "network_info" VALUES(979,'PLMN_21803','21803');
+INSERT INTO "network_info" VALUES(980,'PLMN_22002','22002');
+INSERT INTO "network_info" VALUES(981,'PLMN_22004','22004');
+INSERT INTO "network_info" VALUES(982,'PLMN_22606','22606');
+INSERT INTO "network_info" VALUES(983,'PLMN_23211','23211');
+INSERT INTO "network_info" VALUES(984,'PLMN_23401','23401');
+INSERT INTO "network_info" VALUES(985,'PLMN_23402','23402');
+INSERT INTO "network_info" VALUES(986,'PLMN_23411','23411');
+INSERT INTO "network_info" VALUES(987,'PLMN_23434','23434');
+INSERT INTO "network_info" VALUES(988,'PLMN_23486','23486');
+INSERT INTO "network_info" VALUES(989,'PLMN_23801','23801');
+INSERT INTO "network_info" VALUES(990,'PLMN_240017','240017');
+INSERT INTO "network_info" VALUES(991,'PLMN_24006','24006');
+INSERT INTO "network_info" VALUES(992,'PLMN_24009','24009');
+INSERT INTO "network_info" VALUES(993,'PLMN_24010','24010');
+INSERT INTO "network_info" VALUES(994,'PLMN_24404','24404');
+INSERT INTO "network_info" VALUES(995,'PLMN_24410','24410');
+INSERT INTO "network_info" VALUES(996,'PLMN_24413','24413');
+INSERT INTO "network_info" VALUES(997,'PLMN_24421','24421');
+INSERT INTO "network_info" VALUES(998,'PLMN_27211','27211');
+INSERT INTO "network_info" VALUES(999,'PLMN_302221','302221');
+INSERT INTO "network_info" VALUES(1000,'PLMN_302320','302320');
+INSERT INTO "network_info" VALUES(1001,'PLMN_302500','302500');
+INSERT INTO "network_info" VALUES(1002,'PLMN_302660','302660');
+INSERT INTO "network_info" VALUES(1003,'PLMN_310090','310090');
+INSERT INTO "network_info" VALUES(1004,'PLMN_310130','310130');
+INSERT INTO "network_info" VALUES(1005,'PLMN_310390','310390');
+INSERT INTO "network_info" VALUES(1006,'PLMN_310480','310480');
+INSERT INTO "network_info" VALUES(1007,'PLMN_310560','310560');
+INSERT INTO "network_info" VALUES(1008,'PLMN_310610','310610');
+INSERT INTO "network_info" VALUES(1009,'PLMN_310910','310910');
+INSERT INTO "network_info" VALUES(1010,'PLMN_311210','311210');
+INSERT INTO "network_info" VALUES(1011,'PLMN_334030','334030');
+INSERT INTO "network_info" VALUES(1012,'PLMN_33818','33818');
+INSERT INTO "network_info" VALUES(1013,'PLMN_338070','338070');
+INSERT INTO "network_info" VALUES(1014,'PLMN_34260','34260');
+INSERT INTO "network_info" VALUES(1015,'PLMN_34492','34492');
+INSERT INTO "network_info" VALUES(1016,'PLMN_34614','34614');
+INSERT INTO "network_info" VALUES(1017,'PLMN_34817','34817');
+INSERT INTO "network_info" VALUES(1018,'PLMN_35211','35211');
+INSERT INTO "network_info" VALUES(1019,'PLMN_35486','35486');
+INSERT INTO "network_info" VALUES(1020,'PLMN_35611','35611');
+INSERT INTO "network_info" VALUES(1021,'PLMN_35811','35811');
+INSERT INTO "network_info" VALUES(1022,'PLMN_36011','36011');
+INSERT INTO "network_info" VALUES(1023,'PLMN_36302','36302');
+INSERT INTO "network_info" VALUES(1024,'PLMN_363020','363020');
+INSERT INTO "network_info" VALUES(1025,'PLMN_36584','36584');
+INSERT INTO "network_info" VALUES(1026,'PLMN_36611','36611');
+INSERT INTO "network_info" VALUES(1027,'PLMN_374120','374120');
+INSERT INTO "network_info" VALUES(1028,'PLMN_374121','374121');
+INSERT INTO "network_info" VALUES(1029,'PLMN_374122','374122');
+INSERT INTO "network_info" VALUES(1030,'PLMN_374123','374123');
+INSERT INTO "network_info" VALUES(1031,'PLMN_374124','374124');
+INSERT INTO "network_info" VALUES(1032,'PLMN_374125','374125');
+INSERT INTO "network_info" VALUES(1033,'PLMN_374126','374126');
+INSERT INTO "network_info" VALUES(1034,'PLMN_374127','374127');
+INSERT INTO "network_info" VALUES(1035,'PLMN_374128','374128');
+INSERT INTO "network_info" VALUES(1036,'PLMN_374129','374129');
+INSERT INTO "network_info" VALUES(1037,'PLMN_37413','37413');
+INSERT INTO "network_info" VALUES(1038,'PLMN_374130','374130');
+INSERT INTO "network_info" VALUES(1039,'PLMN_37635','37635');
+INSERT INTO "network_info" VALUES(1040,'PLMN_40417','40417');
+INSERT INTO "network_info" VALUES(1041,'PLMN_404206','404206');
+INSERT INTO "network_info" VALUES(1042,'PLMN_40421','40421');
+INSERT INTO "network_info" VALUES(1043,'PLMN_40425','40425');
+INSERT INTO "network_info" VALUES(1044,'PLMN_40428','40428');
+INSERT INTO "network_info" VALUES(1045,'PLMN_40429','40429');
+INSERT INTO "network_info" VALUES(1046,'PLMN_40430','40430');
+INSERT INTO "network_info" VALUES(1047,'PLMN_40433','40433');
+INSERT INTO "network_info" VALUES(1048,'PLMN_40435','40435');
+INSERT INTO "network_info" VALUES(1049,'PLMN_40437','40437');
+INSERT INTO "network_info" VALUES(1050,'PLMN_40441','40441');
+INSERT INTO "network_info" VALUES(1051,'PLMN_40491','40491');
+INSERT INTO "network_info" VALUES(1052,'PLMN_40503','40503');
+INSERT INTO "network_info" VALUES(1053,'PLMN_40504','40504');
+INSERT INTO "network_info" VALUES(1054,'PLMN_40508','40508');
+INSERT INTO "network_info" VALUES(1055,'PLMN_40512','40512');
+INSERT INTO "network_info" VALUES(1056,'PLMN_40514','40514');
+INSERT INTO "network_info" VALUES(1057,'PLMN_40517','40517');
+INSERT INTO "network_info" VALUES(1058,'PLMN_40523','40523');
+INSERT INTO "network_info" VALUES(1059,'PLMN_405026','405026');
+INSERT INTO "network_info" VALUES(1060,'PLMN_405028','405028');
+INSERT INTO "network_info" VALUES(1061,'PLMN_405033','405033');
+INSERT INTO "network_info" VALUES(1062,'PLMN_405040','405040');
+INSERT INTO "network_info" VALUES(1063,'PLMN_405807','405807');
+INSERT INTO "network_info" VALUES(1064,'PLMN_405808','405808');
+INSERT INTO "network_info" VALUES(1065,'PLMN_405809','405809');
+INSERT INTO "network_info" VALUES(1066,'PLMN_405810','405810');
+INSERT INTO "network_info" VALUES(1067,'PLMN_405811','405811');
+INSERT INTO "network_info" VALUES(1068,'PLMN_405812','405812');
+INSERT INTO "network_info" VALUES(1069,'PLMN_405826','405826');
+INSERT INTO "network_info" VALUES(1070,'PLMN_405847','405847');
+INSERT INTO "network_info" VALUES(1071,'PLMN_405851','405851');
+INSERT INTO "network_info" VALUES(1072,'PLMN_405881','405881');
+INSERT INTO "network_info" VALUES(1073,'PLMN_405882','405882');
+INSERT INTO "network_info" VALUES(1074,'PLMN_405883','405883');
+INSERT INTO "network_info" VALUES(1075,'PLMN_405884','405884');
+INSERT INTO "network_info" VALUES(1076,'PLMN_405885','405885');
+INSERT INTO "network_info" VALUES(1077,'PLMN_405886','405886');
+INSERT INTO "network_info" VALUES(1078,'PLMN_405908','405908');
+INSERT INTO "network_info" VALUES(1079,'PLMN_405909','405909');
+INSERT INTO "network_info" VALUES(1080,'PLMN_405910','405910');
+INSERT INTO "network_info" VALUES(1081,'PLMN_405911','405911');
+INSERT INTO "network_info" VALUES(1082,'PLMN_404891','404891');
+INSERT INTO "network_info" VALUES(1083,'PLMN_404220','404220');
+INSERT INTO "network_info" VALUES(1084,'PLMN_405932','405932');
+INSERT INTO "network_info" VALUES(1085,'PLMN_41503','41503');
+INSERT INTO "network_info" VALUES(1086,'PLMN_42501','42501');
+INSERT INTO "network_info" VALUES(1087,'PLMN_45011','45011');
+INSERT INTO "network_info" VALUES(1088,'PLMN_45201','45201');
+INSERT INTO "network_info" VALUES(1089,'PLMN_45407','45407');
+INSERT INTO "network_info" VALUES(1090,'PLMN_45414','45414');
+INSERT INTO "network_info" VALUES(1091,'PLMN_45502','45502');
+INSERT INTO "network_info" VALUES(1092,'PLMN_46011','46011');
+INSERT INTO "network_info" VALUES(1093,'PLMN_46012','46012');
+INSERT INTO "network_info" VALUES(1094,'PLMN_46002','46002');
+INSERT INTO "network_info" VALUES(1095,'PLMN_46003','46003');
+INSERT INTO "network_info" VALUES(1096,'PLMN_46007','46007');
+INSERT INTO "network_info" VALUES(1097,'PLMN_46008','46008');
+INSERT INTO "network_info" VALUES(1098,'PLMN_46009','46009');
+INSERT INTO "network_info" VALUES(1099,'PLMN_46699','46699');
+INSERT INTO "network_info" VALUES(1100,'PLMN_50507','50507');
+INSERT INTO "network_info" VALUES(1101,'PLMN_50511','50511');
+INSERT INTO "network_info" VALUES(1102,'PLMN_50512','50512');
+INSERT INTO "network_info" VALUES(1103,'PLMN_50571','50571');
+INSERT INTO "network_info" VALUES(1104,'PLMN_50572','50572');
+INSERT INTO "network_info" VALUES(1105,'PLMN_50588','50588');
+INSERT INTO "network_info" VALUES(1106,'PLMN_50590','50590');
+INSERT INTO "network_info" VALUES(1107,'PLMN_51518','51518');
+INSERT INTO "network_info" VALUES(1108,'PLMN_65101','65101');
+INSERT INTO "network_info" VALUES(1109,'PLMN_704030','704030');
+INSERT INTO "network_info" VALUES(1110,'PLMN_706040','706040');
+INSERT INTO "network_info" VALUES(1111,'PLMN_708020','708020');
+INSERT INTO "network_info" VALUES(1112,'PLMN_710730','710730');
+INSERT INTO "network_info" VALUES(1113,'PLMN_72231','72231');
+INSERT INTO "network_info" VALUES(1114,'PLMN_72234','72234');
+INSERT INTO "network_info" VALUES(1115,'PLMN_72407','72407');
+INSERT INTO "network_info" VALUES(1116,'PLMN_72419','72419');
+INSERT INTO "network_info" VALUES(1117,'PLMN_73401','73401');
+INSERT INTO "network_info" VALUES(1118,'PLMN_73403','73403');
+INSERT INTO "network_info" VALUES(1119,'PLMN_740010','740010');
+INSERT INTO "network_info" VALUES(1120,'PLMN_311870','311870');
+INSERT INTO "network_info" VALUES(1121,'PLMN_311490','311490');
+INSERT INTO network_info VALUES(1122,"GCF3","00102");
index 94043cc..3844a63 100644 (file)
@@ -27,18 +27,6 @@ INSERT INTO "network_info" (network_info_id, network_name, mccmnc) VALUES (26, '
 INSERT INTO "network_info" (network_info_id, network_name, mccmnc) VALUES (27, 'Tizen', '11111');
 INSERT INTO "network_info" (network_info_id, network_name, mccmnc) VALUES (28, 'T Mobile UK', '23430');
 INSERT INTO "network_info" (network_info_id, network_name, mccmnc) VALUES (29, 'T Mobile PL', '26002');
-INSERT INTO "network_info" (network_info_id, network_name, mccmnc) VALUES (30, 'F-Bouygues Telecom', '20820');
-INSERT INTO "network_info" (network_info_id, network_name, mccmnc) VALUES (31, 'China Mobile', '46000');
-INSERT INTO "network_info" (network_info_id, network_name, mccmnc) VALUES (32, 'China Mobile', '46002');
-INSERT INTO "network_info" (network_info_id, network_name, mccmnc) VALUES (33, 'China Telecom', '46003');
-INSERT INTO "network_info" (network_info_id, network_name, mccmnc) VALUES (34, 'China Telecom', '46005');
-INSERT INTO "network_info" (network_info_id, network_name, mccmnc) VALUES (35, 'China Unicom', '46006');
-INSERT INTO "network_info" (network_info_id, network_name, mccmnc) VALUES (36, 'China Mobile', '46007');
-INSERT INTO "network_info" (network_info_id, network_name, mccmnc) VALUES (37, 'China Tietong', '46020');
-INSERT INTO "network_info" (network_info_id, network_name, mccmnc) VALUES (38, 'Elisa FI', '24405');
-INSERT INTO "network_info" (network_info_id, network_name, mccmnc) VALUES (39, 'DNA', '24412');
-INSERT INTO "network_info" (network_info_id, network_name, mccmnc) VALUES (40, 'Saunalahti', '24421');
-INSERT INTO "network_info" (network_info_id, network_name, mccmnc) VALUES (41, 'Sonera', '24491');
 
 INSERT INTO "max_pdp"(network_info_id, max_pdp_3g) VALUES(1, 2);
 INSERT INTO "max_pdp"(network_info_id, max_pdp_3g) VALUES(2, 3);
@@ -67,7 +55,7 @@ INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, au
 INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(23, 'Airtel MMS','airtelmms.com',0,NULL,NULL,1,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',0,0,0,NULL,0,NULL,NULL,10,2, 0, 1, 0);
 INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(24, 'Vodafone India 3G','www',0,NULL,NULL,1,NULL,'http://www.vodafone.in',0,0,0,NULL,0,NULL,NULL,11,1,0,1,1);
 INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(25, 'Vodadone India MMS','portalnmms',0,NULL,NULL,1,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',0,0,0,NULL,0,NULL,NULL,11,2, 0, 1, 0);
-INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(26, 'China Unicom 3G','3gnet',0,NULL,NULL,1,NULL,'http://www.wo.com.cn',0,0,0,NULL,0,NULL,NULL,12,1,0,1,1);
+INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(26, 'China Unicom 3G','uninet',0,NULL,NULL,1,NULL,'http://www.wo.com.cn',0,0,0,NULL,0,NULL,NULL,12,1,0,1,1);
 INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(27, 'China Unicom MMS','3gwap',0,NULL,NULL,1,'10.0.0.172:80','http://mmsc.myuni.com.cn',0,0,0,NULL,0,NULL,NULL,12,2, 0, 1, 0);
 INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(28, 'BSNL 3G India','gprssouth.cellone.in',0,'ppp','ppp123',1,NULL,'http://www.bsnl.co.in',300,0,0,NULL,0,NULL,NULL,13,1,0,1,1);
 INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(29, 'BSNL India MMS','bsnlmms',0,NULL,NULL,1,'10.210.10.11:8080','http://bsnlmmsc.in:8514',0,0,0,NULL,0,NULL,NULL,13,2, 0, 1, 0);
@@ -83,7 +71,7 @@ INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, au
 INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(39, 'O2 MMS','internet',0,NULL,NULL,1,'82.113.100.5:8080','http://10.81.0.7:8002',300,0,0,NULL,0,NULL,NULL,18,2, 0, 1, 0);
 INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(40, 'SKT Internet','web.sktelecom.com',0,NULL,NULL,1,NULL,NULL,300,0,0,NULL,0,NULL,NULL,19,1,0,1,1);
 INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(41, 'SKT MMS','web.sktelecom.com',0,NULL,NULL,0,'220.103.230.150:9093','http://omms.nate.com:9082/oma_mms',300, 0,0,NULL,0,NULL,NULL,19,2, 0, 1, 0);
-INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(42, 'SFR Internet','push',1,NULL,NULL,1,NULL,NULL,300,0,0,NULL,0,NULL,NULL,20,1,0,1,1);
+INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(42, 'SFR Internet','sl2sfr',1,NULL,NULL,1,NULL,NULL,300,0,0,NULL,0,NULL,NULL,20,1,0,1,1);
 INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(43, 'SFR MMS','mmssfr',1,NULL,NULL,1,'10.151.0.1:8080','http://mms1',300,0,0,NULL,0,NULL,NULL,20,2, 0, 1, 0);
 INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(44, 'T Mobile Internet','internet.t-mobile',1,'t-mobile','tm',1,NULL,NULL,150,0,0,NULL,0,NULL,NULL,21,1,0,1,1);
 INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(45, 'T Mobile MMS','internet.t-mobile',1,'t-mobile','tm',1,'172.28.23.131:8008','http://mms.t-mobile.de/servlets/mms',150,0,0,NULL,0,NULL,NULL,21,2, 0, 1, 0);
@@ -103,19 +91,5 @@ INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, au
 INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(59, 'T Mobile MMS','general.t-mobile.uk',1,'user','tm',1,'149.254.201.135:8080','http://mmsc.t-mobile.co.uk:8002',300, 0,0,NULL,0,NULL,NULL,28,2, 0, 1, 0);
 INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(60, 'T Mobile Internet','internet',0,NULL,NULL,1,NULL,NULL,300, 0,0,NULL,0,NULL,NULL,29,1,0,1,1);
 INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(61, 'T Mobile MMS','mms',0,NULL,NULL,1,'213.158.194.226:8080','http://mms/servlets/mms',300, 0,0,NULL,0,NULL,NULL,29,2, 0, 1, 0);
-INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(62, 'Bouygues Internet',NULL,0,NULL,NULL,1,NULL,NULL,300,0,0,NULL,0,NULL,NULL,30,1,0,1,1);
-INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(63, 'Bouygues MMS','mms.bouygtel.com',1,NULL,NULL,1,'62.201.129.226:8080','http://mms.bouyguestelecom.fr/mms/wapenc',300,0,0,NULL,0,NULL,NULL,30,2, 0, 1, 0);
-INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(64, 'China Mobile GPRS','cmnet',0,NULL,NULL,1,NULL,NULL,300,0,0,NULL,0,NULL,NULL,31,1,0,1,1);
-INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(65, 'China Mobile MMS','cmwap',1,NULL,NULL,1,'10.0.0.172:80','http://mmsc.monternet.com',300,0,0,NULL,0,NULL,NULL,31,2, 0, 1, 0);
-INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(66, 'China Mobile GPRS','cmnet',0,NULL,NULL,1,NULL,NULL,300,0,0,NULL,0,NULL,NULL,32,1,0,1,1);
-INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(67, 'China Mobile MMS','cmwap',1,NULL,NULL,1,'10.0.0.172:80','http://mmsc.monternet.com',300,0,0,NULL,0,NULL,NULL,32,2, 0, 1, 0);
-INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(68, 'China Mobile GPRS','cmnet',0,NULL,NULL,1,NULL,NULL,300,0,0,NULL,0,NULL,NULL,36,1,0,1,1);
-INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(69, 'China Mobile MMS','cmwap',1,NULL,NULL,1,'10.0.0.172:80','http://mmsc.monternet.com',300,0,0,NULL,0,NULL,NULL,36,2, 0, 1, 0);
-INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(70, 'Elisa FI Internet','internet',0,NULL,NULL,1,NULL,NULL,300,0,0,NULL,0,NULL,NULL,38,1,0,1,1);
-INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(71, 'Elisa FI MMS','mms',0,NULL,NULL,1,'213.161.41.57:80','http://mms.elisa.fi',300,0,0,NULL,0,NULL,NULL,38,1,0,1,0);
-INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(72, 'DNA INTERNET','internet',0,NULL,NULL,1,NULL,NULL,300,0,0,NULL,0,NULL,NULL,39,1,0,1,1);
-INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(73, 'DNA MMS','mms',1,'dna','mms',1,'10.1.1.2:8080','http://mmsc.dnafinland.fi',300,0,0,NULL,0,NULL,NULL,39,1,0,1,0);
-INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(74, 'Saunalahti Internet','internet.saunalahti',0,NULL,NULL,1,NULL,NULL,300,0,0,NULL,0,NULL,NULL,40,1,0,1,1);
-INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(75, 'Saunalahti MMS','mms.saunalahti.fi',0,NULL,NULL,1,'62.142.4.197:8080','http://mms.saunalahti.fi:8002',300,0,0,NULL,0,NULL,NULL,40,1,0,1,0);
-INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(76, 'Sonera Internet','internet',0,NULL,NULL,1,NULL,NULL,300,0,0,NULL,0,NULL,NULL,41,1,0,1,1);
-INSERT INTO "pdp_profile" (profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, pdp_protocol,proxy_ip_addr,home_url,linger_time, traffic_class,is_static_ip_addr,ip_addr,is_static_dns_addr,dns_addr1,dns_addr2,network_info_id,svc_category_id, hidden, editable, default_internet_con)       VALUES(77, 'Sonera MMS','wap.sonera.net',0,NULL,NULL,1,'195.156.25.33:8080','http://mms.sonera.fi:8002',300,0,0,NULL,0,NULL,NULL,41,1,0,1,0);
+
+
diff --git a/resources/dnet_db_init.sql b/resources/dnet_db_init.sql
new file mode 100755 (executable)
index 0000000..5cba6e1
--- /dev/null
@@ -0,0 +1,1606 @@
+INSERT INTO "pdp_profile" VALUES(1,'Cosmote Wireless Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,261,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(2,'Cosmote Mms','mms',0,NULL,NULL,2,'10.10.10.20:8080','http://mmsc.cosmote.gr:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,261,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(3,'Vf Mobile Internet','internet.vodafone.gr',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,262,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(4,'Vf MMS','mms.vodafone.net',0,'user','pass',2,'213.249.19.49:5080','http://mms.vodafone.gr',300,NULL,NULL,NULL,NULL,NULL,NULL,262,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(5,'Q-Telecom MMS GPRS','q-mms.myq.gr',0,NULL,NULL,2,'192.168.80.134:8080','http://mms.myq.gr',300,NULL,NULL,NULL,NULL,NULL,NULL,263,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(6,'Wind Internet','gint.b-online.gr',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,264,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(7,'Wind MMS','mnet.b-online.gr',0,NULL,NULL,2,'192.168.200.11:9401','http://192.168.200.95/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,264,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(8,'CTNET','CTNET',0,'ctnet@mycdma.cn','vnet.mobi',2,':',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,673,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(9,'Vodafone NL','live.vodafone.com',0,'vodafone','vodafone',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,673,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(10,'Vodafone NL','live.vodafone.com',0,'vodafone','vodafone',2,'192.168.251.150:8799','http://mmsc.mms.vodafone.nl',300,NULL,NULL,NULL,NULL,NULL,NULL,673,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(11,'KPN Internet','portalmmm.nl',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,670,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(12,'KPN Internet','portalmmm.nl',0,NULL,NULL,2,'10.10.100.20:5080','http://mp.mobiel.kpn/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,670,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(13,'Telfort Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,671,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(14,'Telfort Internet','internet',0,NULL,NULL,2,'193.113.200.195:8080','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,671,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(15,'T-Mobile Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,672,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(16,'T-Mobile MMS','mms',0,'tmobilemms','tmobilemms',2,'10.10.10.11:8080','http://t-mobilemms',300,NULL,NULL,NULL,NULL,NULL,NULL,672,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(17,'Rabo Mobiel','rabo.plus',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,973,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(18,'Proximus MMS','event.proximus.be',0,'mms','mms',2,'10.55.14.75:8080','http://mmsc.proximus.be/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,52,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(19,'Proximus Internet','internet.proximus.be',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,52,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(20,'Telenet Internet','telenetwap.be',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,52,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(21,'Telenet MMS','mms.be',0,NULL,NULL,2,'195.130.149.100:80','http://mmsc.telenet.be',300,NULL,NULL,NULL,NULL,NULL,NULL,52,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(22,'Telenet','telenetwap.be',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,974,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(23,'Telenet MMS','mms.be',0,NULL,NULL,2,'195.130.149.100:80','http://mmsc.telenet.be',300,NULL,NULL,NULL,NULL,NULL,NULL,974,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(24,'Mobistar MMS','mms.be',0,NULL,NULL,2,'212.65.63.143:8080','http://mmsc.mobistar.be',300,NULL,NULL,NULL,NULL,NULL,NULL,54,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(25,'Mobistar','mworld.be',0,'mobistar','mobistar',2,'212.65.63.143:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,54,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(26,'Base','gprs.base.be',0,'base','base',2,'172.31.198.37:5080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,53,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(27,'BASE MMS','mms.base.be',0,'base','base',2,'217.72.235.1:8080','http://mmsc.base.be',300,NULL,NULL,NULL,NULL,NULL,NULL,53,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(28,'Orange World','orange',0,'orange','orange',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,215,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(29,'Orange MMS','orange.acte',0,'orange','orange',2,'192.168.10.200:8080','http://mms.orange.fr',300,NULL,NULL,NULL,NULL,NULL,NULL,215,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(30,'Orange Entreprise','orange-mib',0,'orange','orange',2,'172.16.2.8:8000',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,215,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(31,'Orange Internet','orange.fr',0,'orange','orange',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,215,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(32,'Orange Internet Entreprise','internet-entreprise',0,'orange','orange',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,215,5,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(33,'SFR webphone','sl2sfr',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,218,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(34,'SFR Mobile','wapsfr',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,218,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(35,'SFR Option Modem','websfr',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,218,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(36,'MMS','mmssfr',0,NULL,NULL,2,'10.151.0.1:8080','http://mms1',300,NULL,NULL,NULL,NULL,NULL,NULL,218,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(37,'Bouygues Telecom','mmsbouygtel.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,210,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(38,'Bouygues Telecom','mmsbouygtel.com',0,NULL,NULL,2,'62.201.129.226:8080','http://mms.bouyguestelecom.fr/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,210,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(39,'NRJWEB','fnetnrj',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,218,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(40,'NRJMMS','mmsnrj',0,NULL,NULL,2,'10.143.156.5:8080','http://mmsnrj',300,NULL,NULL,NULL,NULL,NULL,NULL,218,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(41,'Auchan WAP','wap65',0,NULL,NULL,2,'192.168.21.8:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,218,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(42,'Auchan MMS','mms65',0,NULL,NULL,2,'10.143.156.8:8080','http://mms65',300,NULL,NULL,NULL,NULL,NULL,NULL,218,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(43,'WAP Simplicime','wapdebitel',0,NULL,NULL,2,'192.168.21.3:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,218,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(44,'MMS Simplicime','mmsdebitel',0,NULL,NULL,2,'10.143.156.3:8080','http://mmsdebitel',300,NULL,NULL,NULL,NULL,NULL,NULL,218,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(45,'WAP LeclercMobile','wap66',0,NULL,NULL,2,'192.168.21.9:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,218,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(46,'MMS LeclercMobile','mms66',0,NULL,NULL,2,'10.143.156.9:8080','http://mms66',300,NULL,NULL,NULL,NULL,NULL,NULL,218,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(47,'Coriolis WAP','wapcoriolis',0,NULL,NULL,2,'192.168.21.6:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,218,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(48,'Coriolis MMS','mmscoriolis',0,NULL,NULL,2,'10.143.156.6:8080','http://mmscoriolis',300,NULL,NULL,NULL,NULL,NULL,NULL,218,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(49,'Keyyo Mobile Internet','internet68',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,218,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(50,'Keyyo Mobile MMS','mms68',0,NULL,NULL,2,'10.143.156.11:8080','http://mms68',300,NULL,NULL,NULL,NULL,NULL,NULL,218,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(51,'WEB La Poste Mobile','wapdebitel',0,NULL,NULL,2,'192.168.21.3:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,218,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(52,'MMS La Poste Mobile','mmsdebitel',0,NULL,NULL,2,'10.143.156.3:8080','http://mmsdebitel',300,NULL,NULL,NULL,NULL,NULL,NULL,218,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(53,'Free','free',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,213,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(54,'Free MMS','mmsfree',0,NULL,NULL,2,NULL,'http://mms.free.fr',300,NULL,NULL,NULL,NULL,NULL,NULL,213,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(55,'INTERNET','airtelwap.es',0,'wap@wap','wap125',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,196,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(56,'MMS VODAFONE','mms.vodafone.net',0,'wap@wap','wap125',2,'212.73.32.10:80','http://mmsc.vodafone.es/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,196,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(57,'Orange Internet Mvil','orangeworld',0,'orange','orange',2,'10.132.61.10:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,194,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(58,'Orange Internet PC','internet',0,'orange','orange',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,194,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(59,'Orange MMS','orangemms',0,'orange','orange',2,'172.22.188.25:8080','http://mms.orange.es',300,NULL,NULL,NULL,NULL,NULL,NULL,194,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(60,'Yoigo Navegador','internet',0,NULL,NULL,2,'10.8.0.36:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,197,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(61,'Yoigo MMS','mms',0,NULL,NULL,2,'193.209.134.141:80','http://mmss/',300,NULL,NULL,NULL,NULL,NULL,NULL,197,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(62,'INTERNET GPRS','airtelnet.es',0,'vodafone','vodafone',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,975,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(63,'Euskaltel MMS','euskaltelmms.euskaltel.mobi',0,'MMS','EUSKALTEL',2,'172.16.18.74:8080','http://mms.euskaltel.mobi',300,NULL,NULL,NULL,NULL,NULL,NULL,975,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(64,'Euskaltel Internet','internet.euskaltel.mobi',0,'CLIENTE','EUSKALTEL',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,975,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(65,'Internet R','internet.mundo-r.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,975,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(66,'TeleCable Internet','internet.telecable.es',0,'telecable','telecable',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,975,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(67,'MMS R','euskaltelmms.euskaltel.mobi',0,NULL,NULL,2,'10.0.157.169:8080','http://mms.mundo-r.com',300,NULL,NULL,NULL,NULL,NULL,NULL,975,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(68,'TeleCable MMS','mms.telecable.es',0,'telecable','telecable',2,'212.89.0.84:8080','http://mms.telecable.es/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,975,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(69,'MMS Vodafone','mms.vodafone.net',0,'wap@wap','wap125',2,'212.73.32.10:80','http://mmsc.vodafone.es/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,975,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(70,'Movistar MMS','telefonica.es',0,'telefonica','telefonica',2,'10.138.255.5:8080','http://mms.movistar.com',300,NULL,NULL,NULL,NULL,NULL,NULL,195,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(71,'Movistar','telefonica.es',0,'telefonica','telefonica',2,'10.138.255.133:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,195,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(72,'Conexin compartida','movistar.es',0,'MOVISTAR','MOVISTAR',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,195,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(73,'Movistar MMS','telefonica.es',0,'telefonica','telefonica',2,'10.138.255.5:8080','http://mms.movistar.com',300,NULL,NULL,NULL,NULL,NULL,NULL,976,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(74,'Movistar','telefonica.es',0,'telefonica','telefonica',2,'10.138.255.133:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,976,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(75,'Conexin compartida','movistar.es',0,'MOVISTAR','MOVISTAR',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,976,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(76,'Euskaltel MMS','euskaltelmms.euskaltel.mobi',0,'MMS','EUSKALTEL',2,'172.16.18.74:8080','http://mms.euskaltel.mobi',300,NULL,NULL,NULL,NULL,NULL,NULL,977,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(77,'Euskaltel Internet','internet.euskaltel.mobi',0,'CLIENTE','EUSKALTEL',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,977,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(78,'TeleCable Internet','internet.telecable.es',0,'telecable','telecable',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,978,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(79,'TeleCable MMS','mms.telecable.es',0,'telecable','telecable',2,'212.89.0.84:8080','http://mms.telecable.es/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,978,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(80,'Telenor MMS','mms',0,NULL,NULL,2,'84.225.255.1:8080','http://mmsc.telenor.hu/',300,NULL,NULL,NULL,NULL,NULL,NULL,297,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(81,'Telenor Online','online',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,297,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(82,'T-Mobile MMS','mms',0,'mms','mms',2,'212.51.126.10:8080','http://mms.t-mobile.hu/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,296,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(83,'Web','wnw',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,296,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(84,'VF internet','internet.vodafone.net',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,298,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(85,'Vodafone MMS','mms.vodafone.net',0,NULL,NULL,2,'80.244.97.2:8080','http://mms.vodafone.hu/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,298,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(86,'VMAX Internet','vitamax.internet.vodafone.net',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,298,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(87,'HT Eronet','wap.eronet.ba',0,NULL,NULL,2,'010.012.003.010:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,979,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(88,'Ht Eronet MMS','mms.eronet.ba',0,NULL,NULL,2,'010.012.003.011:8080','http://mms.gprs.eronet.ba/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,979,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(89,'m:web Standard','3g1',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,72,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(90,'m:tel FREND','mtelfrend',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,72,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(91,'FREND Surfaj','mtelfrend',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,72,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(92,'m:web 100 MB','3g2',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,72,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(93,'m:web 500 MB','3g3',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,72,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(94,'m:web 1GB','3g4',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,72,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(95,'mtelmms','mtelmms',0,NULL,NULL,2,'192.168.61.11:80','http://mmsc.mtel.ba/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,72,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(96,'Bh Mobile','active.bhmobile.ba',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,70,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(97,'BHMobileMMS','mms.bhmobile.ba',0,NULL,NULL,2,'195.222.056.041:8080','http://mms.bhmobile.ba/cmmsc/post',300,NULL,NULL,NULL,NULL,NULL,NULL,70,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(98,'T-Mobile MMS','mms.htgprs',0,NULL,NULL,2,'10.12.0.4:8080','http://mms.t-mobile.hr/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,71,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(99,'T-Mobile','web.htgprs',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,71,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(100,'Tele2','internet.tele2.hr',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,292,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(101,'Tele2','internet.tele2.hr',0,NULL,NULL,2,'193.12.40.66:8080','http://mmsc.tele2.hr',300,NULL,NULL,NULL,NULL,NULL,NULL,292,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(102,'Broadband','data.vip.hr',0,'38591','38591',2,'212.91.99.91:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,293,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(103,'VIP.mms','mms.vipnet.hr',0,'38591','38591',2,'212.91.99.91:8080','http://mms.vipnet.hr/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,293,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(104,'Telenor WAP','internet',0,'telenor','gprs',2,'217.65.192.33:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,781,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(105,'Telenor MMS','mms',0,NULL,NULL,2,'217.65.192.33:8080','http://mms.telenor.rs/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,781,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(106,'Telenor MNE internet','internet',0,'gprs','gprs',2,'192.168.246.5:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,980,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(107,'Telenor MNE mms','mms',0,'mms','mms',2,'192.168.246.5:8080','http://mm.vor.telenor.me',300,NULL,NULL,NULL,NULL,NULL,NULL,980,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(108,'mt:s wap','gprswap',0,'mts','064',2,'172.17.88.198:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,780,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(109,'mt:s mms','mms',0,'mts','064',2,'172.17.85.131:8080','http://mms.mts064.telekom.rs/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,780,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(110,'T-Mobile MMS','mms',0,'38267','38267',2,'10.0.5.19:8080','http://192.168.180.100/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,981,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(111,'T-Mobile Internet','tmcg-wnw',0,'38267','38267',2,'10.0.5.19:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,981,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(112,'Vip GPRS','vipmobile',0,'vipmobile','vipmobile',2,'212.15.182.82:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,782,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(113,'Vip MMS','vipmobile.mms',0,'vipmobile','vipmobile',2,'212.15.182.82:8080','http://mmsc.vipmobile.rs',300,NULL,NULL,NULL,NULL,NULL,NULL,782,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(114,'TIM WAP','wap.tim.it',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,532,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(115,'TIM WEB','ibox.tim.it',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,532,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(116,'TIM MMS','unico.tim.it',0,NULL,NULL,2,'213.230.130.89:80','http://mms.tim.it/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,532,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(117,'MMS Vodafone','mms.vodafone.it',0,NULL,NULL,2,'10.128.224.10:80','http://mms.vodafone.it/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,534,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(118,'Acc. Internet da cell','mobile.vodafone.it',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,534,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(119,'Tethering Internet','web.omnitel.it',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,534,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(120,'WIND WEB','internet.wind',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,535,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(121,'WIND BIZ WEB','internet.wind.biz',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,535,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(122,'WIND MMS','mms.wind',0,NULL,NULL,2,'212.245.244.100:8080','http://mms.wind.it',300,NULL,NULL,NULL,NULL,NULL,NULL,535,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(123,'3','tre.it',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,531,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(124,'3','tre.it',0,NULL,NULL,2,'62.13.171.3:8799','http://10.216.59.240:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,531,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(125,'Fastweb WEB','apn.fastweb.it',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,531,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(126,'Fastweb WEB','apn.fastweb.it',0,NULL,NULL,2,'10.0.65.9:8080','http://mms.fastweb.it/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,531,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(127,'Vodafone live!','live.vodafone.com',0,'live','vodafone',2,'193.230.161.231:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,730,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(128,'Vodafone live! PRE','live.pre.vodafone.com',0,'live','vodafone',2,'193.230.161.231:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,730,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(129,'Vodafone MMS','mms.vodafone.ro',0,'mms','vodafone',2,'193.230.161.231:8080','http://multimedia/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,730,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(130,'Vodafone MMS PRE','mms.pre.vodafone.ro',0,'mms','vodafone',2,'193.230.161.231:8080','http://multimedia/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,730,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(131,'Cosmote Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,727,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(132,'Cosmote MMS','mms',0,'mms','mms',2,'10.252.1.62:8080','http://mmsc1.mms.cosmote.ro:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,727,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(133,'web''n''walk','wnw',0,'wnw','wnw',2,'10.252.1.62:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,727,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(134,'Cosmote MMS','mms',0,'mms','mms',2,'10.252.1.62:8080','http://mmsc1.mms.cosmote.ro:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,982,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(135,'web''n''walk','wnw',0,'wnw','wnw',2,'10.252.1.62:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,982,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(136,'Orange MMS','mms',0,'mms','mms',2,'62.217.247.252:8799','http://wap.mms.orange.ro:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,728,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(137,'Orange Internet','net',0,NULL,NULL,2,':',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,728,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(138,'Swisscom MMS','event.swisscom.ch',0,NULL,NULL,2,'192.168.210.2:8080','http://mms.natel.ch:8079',300,NULL,NULL,NULL,NULL,NULL,NULL,124,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(139,'Swisscom Services','gprs.swisscom.ch',0,NULL,NULL,2,'192.168.210.1:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,124,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(140,'Sunrise live','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,123,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(141,'Sunrise MMS','mms.sunrise.ch',0,NULL,NULL,2,'212.35.34.75:8080','http://mmsc.sunrise.ch',300,NULL,NULL,NULL,NULL,NULL,NULL,123,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(142,'Orange Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,122,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(143,'Orange MMS','mms',0,NULL,NULL,2,'192.168.151.2:8080','http://192.168.151.3:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,122,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(144,'T-Mobile CZ','internet.t-mobile.cz',0,'wap','wap',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,166,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(145,'T-Mobile MMS','mms.t-mobile.cz',0,'mms','mms',2,'10.0.0.10:80','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,166,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(146,'O2 internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,167,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(147,'O2 MMS','mms',0,NULL,NULL,2,'160.218.160.218:8080','http://mms.o2active.cz:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,167,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(148,'GPRS Web','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,168,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(149,'Vodafone MMS','mms',0,'mms','mms',2,'10.11.10.111:80','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,168,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(150,'Orange SK','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,793,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(151,'Orange SK MMS','mms',0,'wap','wap',2,'213.151.208.145:8799','http://imms.orange.sk',300,NULL,NULL,NULL,NULL,NULL,NULL,793,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(152,'Orange World','orangewap',0,'wap','wap',2,'213.151.208.156:8799',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,793,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(153,'T-Mobile internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,794,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(154,'T-Mobile MMS','mms',0,'mms','mms',2,'192.168.1.1:8080','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,794,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(155,'O2 internet','o2internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,795,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(156,'O2 MMS','o2mms',0,NULL,NULL,2,'10.97.1.11:8080','http://mms.o2world.sk:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,795,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(157,'A1','a1.net',0,'ppp@a1plus.at','ppp',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,38,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(158,'aonMobil','aon.at',0,'mobil@aon.at','ppp',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,38,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(159,'A1 MMS','free.a1.net',0,'ppp@a1plus.at','ppp',2,'194.48.124.71:8001','http://mmsc.a1.net',300,NULL,NULL,NULL,NULL,NULL,NULL,38,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(160,'aonMobil MMS','mms.aon.at',0,'mobil@aon.at','ppp',2,'194.48.124.134:8001','http://mmsc.aon.at',300,NULL,NULL,NULL,NULL,NULL,NULL,38,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(161,'T-Mobile Internet','gprsinternet',0,'t-mobile','tm',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,42,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(162,'T-Mobile MMS','gprsmms',0,'t-mobile','tm',2,'10.12.0.20:80','http://mmsc.t-mobile.at/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,42,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(163,'Orange MMS','orange.mms',0,'mms','mms',2,'194.24.128.118:8080','http://mmsc.orange.at/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,41,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(164,'Orange Smartphone','orange.smartphone',0,'web','web',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,41,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(165,'tele.ring mms','mms',0,'wap@telering.at','wap',2,'212.95.31.50:80','http://relay.mms.telering.at',300,NULL,NULL,NULL,NULL,NULL,NULL,43,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(166,'tele.ring web','web',0,'web@telering.at','web',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,43,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(167,'Planet3','drei.at',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,40,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(168,'Planet3','drei.at',0,NULL,NULL,2,'213.94.78.133:8799','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,40,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(169,'data.bob','bob.at',0,'data@bob.at','ppp',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,983,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(170,'data.bob MMS','mms.bob.at',0,'data@bob.at','ppp',2,'194.48.124.7:8001','http://mmsc.bob.at',300,NULL,NULL,NULL,NULL,NULL,NULL,983,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(171,'YESSS! GPRS','web.yesss.at',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,39,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(172,'UBIQUISYS','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,984,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(173,'UBIQUISYS','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,984,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(174,'O2 MOBILE WEB','mobile.o2.co.uk',0,'O2web','O2web',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,985,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(175,'O2 MMS Prepay','payandgo.o2.co.uk',0,'payandgo','password',2,'82.132.254.1:8080','http://mmsc.mms.o2.co.uk:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,985,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(176,'O2 MMS Postpay','wap.o2.co.uk',0,'o2wap','password',2,'82.132.254.1:8080','http://mmsc.mms.o2.co.uk:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,985,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(177,'O2 Mobile Web','mobile.o2.co.uk',0,'o2web','password',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,239,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(178,'O2 MMS','wap.o2.co.uk',0,'o2wap','password',2,'82.132.254.1:8080','http://mmsc.mms.o2.co.uk:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,239,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(179,'O2 PREPAY','payandgo.o2.co.uk',0,'payandgo','password',2,'193.113.200.195:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,239,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(180,'O2 PREPAY','payandgo.o2.co.uk',0,'payandgo','password',2,'82.132.254.1:8080','http://mmsc.mms.o2.co.uk:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,239,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(181,'TESCO Mobile','prepay.tesco-mobile.com',0,'tescowap','password',2,'193.113.200.195:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,239,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(182,'TESCO Mobile','prepay.tesco-mobile.com',0,'tescowap','password',2,'193.113.200.195:8080','http://mmsc.mms.o2.co.uk:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,239,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(183,'O2 MOBILE WEB','mobile.o2.co.uk',0,'O2web','O2web',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,986,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(184,'O2 MMS Prepay','payandgo.o2.co.uk',0,'payandgo','password',2,'82.132.254.1:8080','http://mmsc.mms.o2.co.uk:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,986,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(185,'O2 MMS Postpay','wap.o2.co.uk',0,'o2wap','password',2,'82.132.254.1:8080','http://mmsc.mms.o2.co.uk:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,986,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(186,'O2 MOBILE WEB','mobile.o2.co.uk',0,'O2web','O2web',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,986,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(187,'O2 MMS Prepay','payandgo.o2.co.uk',0,'payandgo','password',2,'82.132.254.1:8080','http://mmsc.mms.02.co.uk:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,986,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(188,'O2 MMS Postpay','wap.o2.co.uk',0,'o2wap','password',2,'82.132.254.1:8080','http://mmsc.mms.02.co.uk:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,986,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(189,'Vodafone Contract Internet','wap.vodafone.co.uk',0,'wap','wap',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,240,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(190,'Vodafone Contract Internet','wap.vodafone.co.uk',0,'wap','wap',2,'212.183.137.12:8799','http://mms.vodafone.co.uk/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,240,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(191,'Vodafone PAYG Internet','pp.vodafone.co.uk',0,'wap','wap',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,240,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(192,'Vodafone PAYG Internet','pp.vodafone.co.uk',0,'wap','wap',2,'212.183.137.12:8799','http://mms.vodafone.co.uk/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,240,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(193,'BT Mobile Internet','btmobile.bt.com',0,'bt','bt',2,'212.183.137.12:8799',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,240,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(194,'BT Mobile Internet','btmobile.bt.com',0,'bt','bt',2,'212.183.137.12:8799','http://mms.bt.com/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,240,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(195,'Asda WAP','asdamobiles.co.uk',0,'wap','wap',2,'212.183.137.12:8799',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,240,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(196,'Asda WAP','asdamobiles.co.uk',0,'wap','wap',2,'212.183.137.12:8799','http://mms.asdamobiles.co.uk/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,240,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(197,'Talkmob Internet','talkmobile.co.uk',0,'wap','wap',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,240,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(198,'Talkmob Internet','talkmobile.co.uk',0,'wap','wap',2,'212.183.137.12:8799','http://mms.talkmobile.co.uk/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,240,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(199,'Talkmob PAYG Int','payg.talkmobile.co.uk',0,'wap','wap',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,240,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(200,'Talkmob PAYG Int','payg.talkmobile.co.uk',0,'wap','wap',2,'212.183.137.12:8799','http://mms.talkmobile.co.uk/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,240,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(201,'3','three.co.uk',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,232,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(202,'3','three.co.uk',0,NULL,NULL,2,'mms.three.co.uk:8799','http://mms.um.three.co.uk:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,232,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(203,'T-Mobile Internet','general.t-mobile.uk',0,'t-mobile','tm',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,231,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(204,'T-Mobile Internet','general.t-mobile.uk',0,'t-mobile','tm',2,'149.254.201.135:8080','http://mmsc.t-mobile.co.uk:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,231,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(205,'T-Mobile Ims','ims',0,NULL,NULL,5,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,231,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(206,'Virgin Media Mobile Internet','goto.virginmobile.uk',0,'user',NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,231,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(207,'Virgin Media Mobile Internet','goto.virginmobile.uk',0,'user',NULL,2,'193.30.166.2:8080','http://mms.virginmobile.co.uk:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,231,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(208,'T-Mobile Internet','general.t-mobile.uk',0,'t-mobile','tm',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,230,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(209,'T-Mobile Internet','general.t-mobile.uk',0,'t-mobile','tm',2,'149.254.201.135:8080','http://mmsc.t-mobile.co.uk:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,230,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(210,'T-Mobile Ims','ims',0,NULL,NULL,5,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,230,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(211,'T-Mobile Internet','general.t-mobile.uk',0,'t-mobile','tm',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,229,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(212,'T-Mobile Internet','general.t-mobile.uk',0,'t-mobile','tm',2,'149.254.201.135:8080','http://mmsc.t-mobile.co.uk:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,229,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(213,'T-Mobile Ims','ims',0,NULL,NULL,5,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,229,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(214,'Orange Internet','everywhere',0,'eesecure','secure',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,228,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(215,'Orange Ims','ims',0,NULL,NULL,5,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,228,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(216,'Orange MMS','eezone',0,'eesecure','secure',2,'192.168.224.10:8080','http://mms.orange.co.uk/',300,NULL,NULL,NULL,NULL,NULL,NULL,228,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(217,'Orange internet','everywhere',0,'eesecure','secure',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,987,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(218,'Orange MMS','eezone',0,'eesecure','secure',2,'192.168.224.10:8080','http://mms.orange.co.uk/',300,NULL,NULL,NULL,NULL,NULL,NULL,987,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(219,'Jersey Telecom','mms',0,'mms','mms',2,'212.9.19.199:3130','http://mms.surfmail.com/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,234,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(220,'pepperWEB (Jersey)','pepper',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,234,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(221,'C&W Guernsey Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,237,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(222,'Sure Picture Messaging','mms',0,NULL,NULL,2,'10.0.3.101:80','http://mmsc.gprs.cw.com/',300,NULL,NULL,NULL,NULL,NULL,NULL,237,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(223,'3G HSDPA','3gpronto',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,235,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(224,'Manx Telecom Contract MMS','mms.manxpronto.net',0,'mms','mms',2,'195.10.99.46:8080','http://mms.manxpronto.net:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,235,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(225,'Manx Telecom Prepay MMS','mms.prontogo.net',0,'mmsgo','mmsgo',2,'195.10.99.41:8080','http://mms.manxpronto.net:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,235,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(226,'Manx Telecom Contract WEB','web.manxpronto.net',0,'gprs','gprs',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,235,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(227,'Orange internet','orangeinternet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,988,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(228,'Orange MMS','orangemms',0,NULL,NULL,2,'192.168.224.10:8080','http://mms.orange.co.uk/',300,NULL,NULL,NULL,NULL,NULL,NULL,988,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(229,'Orange Ims','ims',0,NULL,NULL,5,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,988,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(230,'TDC','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,989,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(231,'TDC Song WAP','internet.no',0,NULL,NULL,2,'194.182.251.15:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,989,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(232,'TDC MMS','mms',0,NULL,NULL,2,'194.182.251.15:8080','http://mmsc.tdc.dk:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,989,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(233,'TDC Song MMS','mms.no',0,NULL,NULL,2,'194.182.251.15:8080','http://mms.tdcmobil.no:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,989,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(234,'TDC WAP','wap',0,NULL,NULL,2,'194.182.251.15:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,989,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(235,'Telmore Wap','wap',0,NULL,NULL,2,'194.182.251.15:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,989,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(236,'Telmore MMS','mms',0,NULL,NULL,2,'194.182.251.15:8080','htp://192.168.241.114:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,989,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(237,'Telenor Internet','Internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,178,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(238,'Telenor MMS','telenor',0,NULL,NULL,2,'212.88.64.8:8080','http://mms.telenor.dk',300,NULL,NULL,NULL,NULL,NULL,NULL,178,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(239,'3','data.tre.dk',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,177,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(240,'3','data.tre.dk',0,NULL,NULL,2,'mmsproxy.3.dk:8799','http://mms.3.dk/',300,NULL,NULL,NULL,NULL,NULL,NULL,177,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(241,'MMS','mmssp',0,NULL,NULL,2,'193.209.134.131:8080','http://mms.telia.dk',300,NULL,NULL,NULL,NULL,NULL,NULL,180,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(242,'Internet','websp',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,180,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(243,'Telia Internet','www.internet.mtelia.dk',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,180,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(244,'Telia MMS','www.mms.mtelia.dk',0,NULL,NULL,2,'193.209.134.131:8080','http://mms.telia.dk',300,NULL,NULL,NULL,NULL,NULL,NULL,180,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(245,'Telenor Internet','Internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,179,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(246,'Telenor MMS','telenor',0,NULL,NULL,2,'212.88.64.8:8080','http://mms.telenor.dk',300,NULL,NULL,NULL,NULL,NULL,NULL,179,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(247,'Telia Internet','online.telia.se',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,805,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(248,'Telia SE MMS','mms.telia.se',0,NULL,NULL,2,'193.209.134.132:80','http://mmss/',300,NULL,NULL,NULL,NULL,NULL,NULL,805,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(249,'Halebop Internet','halebop.telia.se',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,990,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(250,'Halebop MMS','mms.telia.se',0,'mms','telia',2,'193.209.134.132:9201','http://mmss',300,NULL,NULL,NULL,NULL,NULL,NULL,990,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(251,'3','data.tre.se',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,800,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(252,'3','data.tre.se',0,NULL,NULL,2,'mmsproxy.tre.se:8799','http://mms.tre.se',300,NULL,NULL,NULL,NULL,NULL,NULL,800,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(253,'Telenor Mobilsurf','services.telenor.se',0,NULL,NULL,2,'172.30.253.241:8799',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,803,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(254,'Telenor Mobilsurf','services.telenor.se',0,NULL,NULL,2,'172.30.253.241:8799','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,803,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(255,'Telenor Mobilsurf','services.telenor.se',0,NULL,NULL,2,'173.30.253.241:8799',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,991,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(256,'Telenor Mobilsurf','services.telenor.se',0,NULL,NULL,2,'173.30.253.241:8799','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,991,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(257,'Tele2','4g.tele2.se',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,801,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(258,'Tele2','4g.tele2.se',0,NULL,NULL,2,'130.244.202.030:8080','http://mmsc.tele2.se',300,NULL,NULL,NULL,NULL,NULL,NULL,801,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(259,'Telenor Mobilsurf','services.telenor.se',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,802,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(260,'Telenor Mobilsurf','services.telenor.se',0,NULL,NULL,2,'172.30.253.241:8799','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,802,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(261,'TelenorMobilsurf','services.telenor.se',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,992,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(262,'TelenorMobilsurf','services.telenor.se',0,NULL,NULL,2,'173.30.253.241:8799','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,992,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(263,'Spring data','data.springmobil.se',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,993,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(264,'Spring MMS','mms.springmobil.se',0,NULL,NULL,2,'213.88.184.37:8080','http://mms.springmobil.se',300,NULL,NULL,NULL,NULL,NULL,NULL,993,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(265,'Ventelo Internett','internet.ventelo.no',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,676,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(266,'Ventelo MMS','mms.ventelo.no',0,'ventelo','1111',2,'10.10.10.11:8080','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,676,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(267,'Telenor','telenor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,676,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(268,'Telenor','telenor',0,NULL,NULL,2,'10.10.10.11:8080','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,676,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(269,'NetCom MMS','mms.netcom.no',0,NULL,NULL,2,'212.169.66.4:8080','http://mm/',300,NULL,NULL,NULL,NULL,NULL,NULL,677,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(270,'NetCom Internett','wap',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,677,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(271,'Tele2 Internett','internet.tele2.no',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,675,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(272,'Tele2 MMS','internet.tele2.no ',0,NULL,NULL,2,'193.12.40.14:8080','http://mmsc.tele2.no',300,NULL,NULL,NULL,NULL,NULL,NULL,675,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(273,'NwN Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,674,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(274,'NwN MMS','mms',0,NULL,NULL,2,'188.149.250.10:80','http://mms.nwn.no',300,NULL,NULL,NULL,NULL,NULL,NULL,674,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(275,'DNA Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,203,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(276,'DNA MMS','mms',0,NULL,NULL,2,'10.1.1.2:8080','http://mmsc.dnafinland.fi/',300,NULL,NULL,NULL,NULL,NULL,NULL,203,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(277,'DNA Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,994,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(278,'DNA MMS','mms',0,'dna','mms',2,'10.1.1.2:8080','http://mmsc.dnafinland.fi/',300,NULL,NULL,NULL,NULL,NULL,NULL,994,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(279,'Elisa Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,205,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(280,'Elisa MMS','mms',0,NULL,NULL,2,'213.161.41.57:80','http://mms.elisa.fi',300,NULL,NULL,NULL,NULL,NULL,NULL,205,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(281,'TDC Internet','internet.song.fi',0,'song@internet','songnet',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,995,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(282,'TDC MMS','mms.song.fi',0,NULL,NULL,2,'213.161.41.58:80','http://mms.song.fi',300,NULL,NULL,NULL,NULL,NULL,NULL,995,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(283,'DNA Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,204,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(284,'DNA MMS','mms',0,NULL,NULL,2,'10.1.1.2:8080','http://mmsc.dnafinland.fi/',300,NULL,NULL,NULL,NULL,NULL,NULL,204,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(285,'DNA Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,996,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(286,'DNA MMS','mms',0,'dna','mms',2,'10.1.1.2:8080','http://mmsc.dnafinland.fi/',300,NULL,NULL,NULL,NULL,NULL,NULL,996,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(287,'Saunalahti Internet','internet.saunalahti',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,997,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(288,'Saunalahti MMS','mms.saunalahti.fi',0,NULL,NULL,2,'62.142.4.197:8080','http://mms.saunalahti.fi:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,997,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(289,'SONERA Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,206,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(290,'SONERA MMS','wap.sonera.net',0,NULL,NULL,2,'195.156.25.33:80','http://mms.sonera.fi:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,206,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(291,'Omnitel MMS','gprs.mms.lt',0,'mms','mms',2,'194.176.32.149:8080','http://mms.omnitel.net:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,591,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(292,'Omnitel Internet','omnitel',0,'omni','omni',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,591,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(293,'Bite LT MMS','mms',0,'mms@mms','mms',2,'192.168.150.2:8080','http://mmsc/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,592,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(294,'Bite LT WAP','wap',0,NULL,NULL,2,'213.226.131.133:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,592,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(295,'Tele2 Internet LT','internet.tele2.lt',0,'wap','wap',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,593,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(296,'Tele2 MMS LT','mms.tele2.lt',0,'wap','wap',2,'193.12.40.29:8080','http://mmsc.tele2.lt/',300,NULL,NULL,NULL,NULL,NULL,NULL,593,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(297,'LMT Internet','internet.lmt.lv',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,597,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(298,'LMT MMS','mms.lmt.lv',0,NULL,NULL,2,'212.93.97.201:80','http://mmsc.lmt.lv/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,597,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(299,'Tele2 LV Internet','internet.tele2.lv',0,'wap','wap',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,599,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(300,'Tele2 LV MMS','mms.tele2.lv',0,'wap','wap',2,'193.12.40.38:8080','http://mmsc.tele2.lv/',300,NULL,NULL,NULL,NULL,NULL,NULL,599,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(301,'Bite LV Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,598,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(302,'Bite LV MMS','mms',0,'mms@mms','mms',2,'192.168.150.2:8080','http://mmsc/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,598,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(303,'Bite LV WAP','wap',0,NULL,NULL,2,'213.226.131.133:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,598,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(304,'EMT Internet','internet.emt.ee',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,198,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(305,'EMT MMS','mms.emt.ee',0,NULL,NULL,2,'217.71.32.82:8080','http://mms.emt.ee/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,198,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(306,'EMT WAP','wap.emt.ee',0,NULL,NULL,2,'217.71.32.236:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,198,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(307,'Elisa Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,199,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(308,'Elisa MMS','mms',0,NULL,NULL,2,'194.204.2.6:8000','http://194.204.2.10',300,NULL,NULL,NULL,NULL,NULL,NULL,199,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(309,'Elisa WAP','wap',0,NULL,NULL,2,'194.204.2.6:8000',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,199,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(310,'Tele2 Internet','internet.tele2.ee',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,200,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(311,'Tele2 MMS','mms.tele2.ee',0,NULL,NULL,2,'193.12.40.6:8080','http://mmsc.tele2.ee',300,NULL,NULL,NULL,NULL,NULL,NULL,200,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(312,'MTS Internet','internet.mts.ru',0,'mts','mts',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,736,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(313,'MTS MMS','mms.mts.ru',0,'mts','mts',2,'192.168.192.192:9201','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,736,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(314,'Megafon Internet','internet',0,'gdata','gdata',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,735,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(315,'Megafon MMS','mms',0,'mms','mms',2,'10.10.10.10:8080','http://mmsc:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,735,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(316,'Beeline Internet','internet.beeline.ru',0,'beeline','beeline',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,741,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(317,'Beeline MMS','mms.beeline.ru',0,'beeline','beeline',2,'192.168.94.23:8080','http://mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,741,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(318,'TELE2 Internet','internet.tele2.ru',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,745,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(319,'TELE2 MMS','mms.tele2.ru',0,NULL,NULL,2,'193.12.40.65:8080','http://mmsc.tele2.ru',300,NULL,NULL,NULL,NULL,NULL,NULL,745,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(320,'Jeans MMS','mms.jeans.ua',0,NULL,NULL,2,'192.168.10.10:8080','http://mmsc:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,865,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(321,'MTS MMS','mms',0,NULL,NULL,2,'192.168.10.10:8080','http://mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,865,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(322,'MTS-internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,865,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(323,'Beeline-internet','internet.beeline.ua',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,863,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(324,'Beeline MMS','mms.beeline.ua',0,NULL,NULL,2,'172.29.18.192:8080','http://mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,863,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(325,'Djuice MMS','mms.djuice.com.ua',0,'djuice','mms',2,'10.10.10.10:8080','http://mms.kyivstar.net',300,NULL,NULL,NULL,NULL,NULL,NULL,864,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(326,'Kyivstar MMS','mms.kyivstar.net',0,'mms','mms',2,'10.10.10.10:8080','http://mms.kyivstar.net',300,NULL,NULL,NULL,NULL,NULL,NULL,864,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(327,'Kyivstar Internet','www.kyivstar.net',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,864,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(328,'life:) internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,861,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(329,'life:) MMS','mms',0,NULL,NULL,2,'212.58.162.230:8080','http://mms.life.com.ua/cmmsc/post',300,NULL,NULL,NULL,NULL,NULL,NULL,861,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(330,'Utel Internet','3g.utel.ua',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,866,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(331,'Utel Internet','3g.utel.ua',0,NULL,NULL,2,'10.212.3.148:8080','http://10.212.1.4/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,866,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(332,'Plus Internet','plus',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,707,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(333,'Plus MMS','mms',0,NULL,NULL,2,'212.2.96.16:8080','http://mms.plusgsm.pl:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,707,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(334,'T-mobile.pl','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,708,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(335,'T-mobile.pl','mms',0,NULL,NULL,2,'213.158.194.226:8080','http://mms/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,708,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(336,'heyahinternet','heyah.pl',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,708,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(337,'heyahmms','heyahmms',0,NULL,NULL,2,'213.158.194.226:8080','http://mms.heyah.pl/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,708,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(338,'Internet','internet',0,'internet','internet',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,706,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(339,'MMS Orange','mms',0,'mms','mms',2,'192.168.6.104:8080','http://mms.orange.pl',300,NULL,NULL,NULL,NULL,NULL,NULL,706,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(340,'P4 Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,705,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(341,'P4 MMS','mms',0,NULL,NULL,2,'10.10.25.5:8080','http://10.10.28.164/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,705,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(342,'T-Mobile Internet','internet.telekom',0,'telekom','telekom',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,172,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(343,'T-Mobile Internet','internet.telekom',0,'telekom','telekom',2,'172.28.23.131:8008','http://mms.t-mobile.de/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,172,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(344,'Vodafone MMS','event.vodafone.de',0,'VDF2','MMS',2,'139.7.29.17:80','http://139.7.24.1/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,173,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(345,'Vodafone Internet','web.vodafone.de',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,173,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(346,'E-Plus Internet','internet.eplus.de',0,'eplus','internet',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,169,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(347,'E-Plus MMS','mms.eplus.de',0,'mms','eplus',2,'212.23.97.153:5080','http://mms/eplus/',300,NULL,NULL,NULL,NULL,NULL,NULL,169,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(348,'o2 Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,170,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(349,'o2 Internet','internet',0,NULL,NULL,2,'82.113.100.5:8080','http://10.81.0.7:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,170,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(350,'O2 Ims','ims',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,170,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(351,'o2 WEB debitel','internet.debitel',0,'freenet',NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,170,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(352,'debitel-02 MMS','wap.debitel.de',0,'debitel','mms',2,'193.168.128.127:8080','http://10.81.0.7:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,170,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(353,'o2 Internet Prepaid','pinternet.interkom.de',0,NULL,NULL,2,'82.113.100.6:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,170,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(354,'o2 Internet Prepaid','pinternet.interkom.de',0,NULL,NULL,2,'82.113.100.6:8080','http://10.81.0.7:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,170,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(355,'Vodafone Net2','net2.vodafone.pt',0,'vodafone','vodafone',2,'iproxy.vodafone.pt:80',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,713,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(356,'Vodafone Net2','net2.vodafone.pt',0,'vodafone','vodafone',2,'iproxy.vodafone.pt:80','http://mms.vodafone.pt/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,713,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(357,'Optimus Internet','umts',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,712,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(358,'Optimus MMS','mms',0,NULL,NULL,2,'62.169.66.1:8799','http://mmsc:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,712,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(359,'tmn internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,711,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(360,'mms tmn','mmsc.tmn.pt',0,'tmn','tmnnet',2,'10.111.2.16:8080','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,711,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(361,'LUXGSM MMS','mms.pt.lu',0,'mms','mms',2,'194.154.192.88:8080','http://mmsc.pt.lu',300,NULL,NULL,NULL,NULL,NULL,NULL,595,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(362,'LUXGSM WAP','wap.pt.lu',0,'wap','wap',2,'194.154.192.98:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,595,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(363,'Tango WAP','internet',0,'tango','tango',2,'130.244.196.90:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,596,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(364,'Tango MMS','mms',0,'tango','tango',2,'212.66.75.3:8080','http://mms.tango.lu',300,NULL,NULL,NULL,NULL,NULL,NULL,596,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(365,'Vox Mobile','vox.lu',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,594,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(366,'Vox Mobile','vox.lu',0,NULL,NULL,2,'212.88.139.44:8080','http://mms.vox.lu',300,NULL,NULL,NULL,NULL,NULL,NULL,594,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(367,'Vodafone IE','live.vodafone.com',0,NULL,NULL,2,'10.24.59.100:80',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,513,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(368,'Vodafone IE-MMS','mms.vodafone.net',0,NULL,NULL,2,'10.24.59.200:80','http://www.vodafone.ie/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,513,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(369,'O2 Ireland','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,512,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(370,'O2 Ireland','internet',0,NULL,NULL,2,'62.40.32.40:8080','http://mmsc.mms.o2.ie:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,512,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(371,'Meteor Data','data.mymeteor.ie',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,511,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(372,'Meteor MMS','mms.mymeteor.ie',0,'my','wap',2,'10.85.85.85:8799','http://mms.mymeteor.ie',300,NULL,NULL,NULL,NULL,NULL,NULL,511,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(373,'3 Ireland','3ireland.ie',0,'user',NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,510,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(374,'3 Ireland','3ireland.ie',0,'user',NULL,2,'217.171.129.2:8799','http://mms.um.3ireland.ie:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,510,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(375,'Tesco Mobile Internet','tescomobile.liffeytelecom.com',0,NULL,NULL,2,'10.1.11.19:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,998,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(376,'Tesco Mobile Internet','tescomobile.liffeytelecom.com',0,NULL,NULL,2,'10.1.11.19:8080','http://10.1.11.68/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,998,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(377,'Siminn Internet','internet',0,NULL,NULL,2,'213.167.138.200:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,527,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(378,'Siminn MMS','mms.simi.is',0,NULL,NULL,2,'213.167.138.200:8080','http://mms.simi.is/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,527,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(379,'Vodafone Internet','gprs.is',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,523,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(380,'Vodafone MMS','mms.gprs.is',0,NULL,NULL,2,'10.22.0.10:8080','http://mmsc.vodafone.is',300,NULL,NULL,NULL,NULL,NULL,NULL,523,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(381,'MMS Nova','mms.nova.is',0,NULL,NULL,2,'10.10.2.60:8080','http://mmsc.nova.is',300,NULL,NULL,NULL,NULL,NULL,NULL,525,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(382,'Net Nova','net.nova.is',0,NULL,NULL,2,'10.10.2.60:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,525,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(383,'Vodafone MT','internet',0,'internet','internet',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,627,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(384,'Vodafone MT-MMS','mms.vodafone.com.mt',0,NULL,NULL,2,'10.12.0.3:8080','http://mms.vodafone.com.mt/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,627,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(385,'CYTA','cytamobile',0,'user','pass',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,164,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(386,'CYTA','cytamobile',0,'user','pass',2,'212.31.96.161:8080','http://mmsc.cyta.com.cy',300,NULL,NULL,NULL,NULL,NULL,NULL,164,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(387,'MTN MMS','mms',0,'mms','mms',2,'172.24.97.1:3130','http://mms.mtn.com.cy/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,165,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(388,'MTN Wap','wap',0,'wap','wap',2,'172.24.97.3:3130',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,165,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(389,'M-Tel','wap-gprs.mtel.bg',0,NULL,NULL,2,'213.226.006.065:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,65,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(390,'M-Tel MMS','mms-gprs.mtel.bg',0,'mtel','mtel',2,'10.150.0.33:8080','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,65,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(391,'Vivacom WAP','wap.vivacom.bg',0,'wap','wap',2,'192.168.123.123:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,63,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(392,'Vivacom MMS','mms.vivacom.bg',0,'mms','mms',2,'192.168.123.123:8080','http://mmsc.vivacom.bg',300,NULL,NULL,NULL,NULL,NULL,NULL,63,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(393,'GPRS GLOBUL','globul',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,64,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(394,'GLOBUL MMS GPRS','mms.globul.bg',0,'mms',NULL,2,'192.168.87.11:8004','http://mmsc1.mms.globul.bg:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,64,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(395,'Turkcell Internet','internet',0,'gprs','gprs',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,843,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(396,'Turkcell MMS','mms',0,'mms','mms',2,'212.252.169.217:8080','http://mms.turkcell.com.tr/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,843,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(397,'Vodafone Internet','internet',0,'vodafone','vodafone',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,844,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(398,'Vodafone MMS','mms',0,NULL,NULL,2,'217.31.233.18:9401','http://217.31.233.18:6001/MM1Servlet',300,NULL,NULL,NULL,NULL,NULL,NULL,844,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(399,'Avea Internet','internet',0,'wap','wap',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,842,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(400,'Avea MMS','mms',0,'mms','mms',2,'213.161.151.201:8080','http://mms.avea.com.tr/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,842,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(401,'Tele Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,267,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(402,'Tele MMS','mms',0,NULL,NULL,2,'10.112.222.37:8080','http://mms.tele.gl/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,267,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(403,'Vodafone live!','internet.simobil.si',0,'simobil','internet',2,'80.95.224.17:9201',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,796,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(404,'Si.mobil MMS','mms.simobil.si',0,'simobil','internet',2,'80.95.224.46:9201','http://mmc',300,NULL,NULL,NULL,NULL,NULL,NULL,796,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(405,'Planet','internet',0,'mobitel','internet',2,'213.229.249.40:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,798,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(406,'Mobitel MMS','internet',0,'mobitel','internet',2,'213.229.249.40:8080','http://mms.mobitel.si/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,798,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(407,'T-Mobile MK Internet','internet',0,'internet','t-mobile',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,621,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(408,'T-Mobile MK MMS','mms',0,'mms','mms',2,'62.162.155.227:8080','http://mms.t-mobile.com.mk',300,NULL,NULL,NULL,NULL,NULL,NULL,621,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(409,'Cosmofon','Internet',0,'Internet','Internet',2,'http://wap.planet.mk:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,620,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(410,'Cosmofon MMS','mms',0,NULL,NULL,2,'10.010.010.020:8080','http://195.167.65.220:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,620,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(411,'Internet','vipoperator',0,'vipoperator','vipoperator',2,'78.40.0.1:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,622,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(412,'MMS','vipoperator.mms',0,'vipoperator','vipoperator',2,'78.40.0.1:8080','http://mmsc.vipoperator.com.mk',300,NULL,NULL,NULL,NULL,NULL,NULL,622,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(413,'T-Mobile MMS','mms',0,'38267','38267',2,'10.0.5.19:8080','http://192.168.180.100/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,630,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(414,'T-Mobile Internet','tmcg-wnw',0,'38267','38267',2,'10.0.5.19:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,630,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(415,'TELUS ISP','isp.telus.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,117,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(416,'TELUS SP','sp.telus.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,117,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(417,'TELUS SP','sp.telus.com',0,NULL,NULL,2,'74.49.0.18:80','http://aliasredirect.net/proxy/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,117,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(418,'Koodo SP','sp.koodo.com',0,NULL,NULL,2,'74.49.0.18:80',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,117,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(419,'Koodo SP','sp.koodo.com',0,NULL,NULL,2,'74.49.0.18:80','http://aliasredirect.net/proxy/koodo/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,117,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(420,'Tethered Mobile Internet','isp.mb.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,117,5,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(421,'Mobile Internet','sp.mb.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,117,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(422,'Mobile Internet','sp.mb.com',0,NULL,NULL,2,'74.49.0.18:80','http://aliasredirect.net/proxy/mb/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,117,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(423,'Tethered Mobile Internet','isp.mb.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,999,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(424,'Mobile Internet','sp.mb.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,999,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(425,'Mobile Internet','sp.mb.com',0,NULL,NULL,2,'74.49.0.18:80','http://aliasredirect.net/proxy/mb/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,999,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(426,'Eastlink Internet','wisp.mobi.eastlink.ca',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,108,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(427,'Eastlink MMS','mms.mobi.eastlink.ca',0,NULL,NULL,2,'10.232.12.49:8080','http://mmss.mobi.eastlink.ca',300,NULL,NULL,NULL,NULL,NULL,NULL,108,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(428,'MOWAP','wap.davewireless.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1000,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(429,'MOMMS','mms.davewireless.com',0,NULL,NULL,2,'10.100.3.4:8080','http://mms.mobilicity.net',300,NULL,NULL,NULL,NULL,NULL,NULL,1000,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(430,'Fido LTE','ltemobile.apn',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,113,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(431,'Fido LTE','ltemobile.apn',0,NULL,NULL,2,'mmsproxy.fido.ca:80','http://mms.fido.ca',300,NULL,NULL,NULL,NULL,NULL,NULL,113,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(432,'LTE Tethering','ltedata.apn',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,113,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(433,'MTS Tethering','internet.mts',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,113,5,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(434,'MTS Internet','sp.mts',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,113,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(435,'MTS Internet','sp.mts',0,NULL,NULL,2,'wapgw1.mts.net:9201','http://mmsc2.mts.net/',300,NULL,NULL,NULL,NULL,NULL,NULL,113,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(436,'Wind CA','internet.windmobile.ca',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,111,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(437,'Wind CA MMS','mms.windmobile.ca',0,NULL,NULL,2,'74.115.197.70:8080','http://mms.windmobile.ca',300,NULL,NULL,NULL,NULL,NULL,NULL,111,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(438,'Videotron','media.videotron',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1001,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(439,'Videotron','media.videotron',0,NULL,NULL,2,NULL,'http://media.videotron.com',300,NULL,NULL,NULL,NULL,NULL,NULL,1001,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(440,'Bell Internet','pda.bell.ca',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,107,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(441,'Bell Internet','pda.bell.ca',0,NULL,NULL,2,NULL,'http://mms.bell.ca/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,107,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(442,'MTS Tethering','internet.mts',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1002,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(443,'MTS Internet','sp.mts',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1002,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(444,'MTS Internet','sp.mts',0,NULL,NULL,2,'wapgw1.mts.net:9201','http://mmsc2.mts.net/',300,NULL,NULL,NULL,NULL,NULL,NULL,1002,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(445,'LTE Tethering','ltedata.apn',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,114,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(446,'Rogers LTE','ltemobile.apn',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,114,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(447,'Rogers LTE','ltemobile.apn',0,NULL,NULL,2,'mmsproxy.rogers.com:80','http://mms.gprs.rogers.com',300,NULL,NULL,NULL,NULL,NULL,NULL,114,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(448,'chatr-Internet','chatrweb.apn',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,114,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(449,'chatr-Internet','chatrweb.apn',0,NULL,NULL,2,'205.151.11.11:80','http://mms.chatrwireless.com',300,NULL,NULL,NULL,NULL,NULL,NULL,114,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(450,'Cityfone Tethering','ltedata.apn',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,114,5,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(451,'Cityfone Internet','ltemobile.apn',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,114,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(452,'Cityfone Internet','ltemobile.apn',0,NULL,NULL,2,'mmsproxy.rogers.com:80','http://mms.gprs.rogers.com',300,NULL,NULL,NULL,NULL,NULL,NULL,114,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(453,'Tbaytel Tethering','ltedata.apn',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,114,5,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(454,'Tbaytel Internet','ltemobile.apn',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,114,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(455,'Tbaytel Internet','ltemobile.apn',0,NULL,NULL,2,'mmsproxy.rogers.com:80','http://mms.gprs.rogers.com',300,NULL,NULL,NULL,NULL,NULL,NULL,114,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(456,'SaskTel','pda.stm.sk.ca',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,116,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(457,'SaskTel','pda.stm.sk.ca',0,NULL,NULL,2,'mig.sasktel.com:80','http://mms.sasktel.com',300,NULL,NULL,NULL,NULL,NULL,NULL,116,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(458,'myBlue Pix','mmswap.centennialwireless.com',0,NULL,NULL,2,'63.99.231.135:8080','http://mms.myblue.com/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,871,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(459,'Internet','private.centennialwireless.com',0,'privuser','priv',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,871,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(460,'CorrMMS','corrmms',0,NULL,NULL,2,'66.255.55.23:80','http://mms.iot1.com/corr/mms.php',300,NULL,NULL,NULL,NULL,NULL,NULL,887,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(461,'Internet','isp',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1003,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(462,'MMS','mms',0,NULL,NULL,2,'12.108.12.13:3128','http://mms.edgemobile.net/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1003,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(463,'Edge MMS Prepay','ppmms',0,NULL,NULL,2,'12.108.12.13:3128','http://mms.edgemobile.net/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1003,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(464,'PLAT-OTA-MMS','plateaumms',0,NULL,'mmsc',2,'208.254.124.11:8080','208.254.124.11:8514',300,NULL,NULL,NULL,NULL,NULL,NULL,889,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(465,'PLATWEB','plateauweb',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,889,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(466,'My Multi Media','mms.c1.ama',0,'cell1mms','cell1',2,NULL,'http://mms.iot1.com/amarillo/mms.php',300,NULL,NULL,NULL,NULL,NULL,NULL,1004,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(467,'T-Mobile US 160','epc.tmobile.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,925,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(468,'T-Mobile US 160','epc.tmobile.com',0,NULL,NULL,2,NULL,'http://mms.msg.eng.t-mobile.com/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,925,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(469,'DataConnect','isp.cingular',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,873,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(470,'Cingular MMS','wap.cingular',0,'WAP@CINGULARGPRS.COM','CINGULAR1',2,'66.209.11.32:8080','http://mmsc.cingular.com',300,NULL,NULL,NULL,NULL,NULL,NULL,873,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(471,'T-Mobile US 200','epc.tmobile.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,922,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(472,'T-Mobile US 200','epc.tmobile.com',0,NULL,NULL,2,NULL,'http://mms.msg.eng.t-mobile.com/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,922,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(473,'T-Mobile US 210','epc.tmobile.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,921,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(474,'T-Mobile US 210','epc.tmobile.com',0,NULL,NULL,2,NULL,'http://mms.msg.eng.t-mobile.com/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,921,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(475,'T-Mobile US 220','epc.tmobile.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,924,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(476,'T-Mobile US 220','epc.tmobile.com',0,NULL,NULL,2,NULL,'http://mms.msg.eng.t-mobile.com/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,924,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(477,'T-Mobile US 230','epc.tmobile.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,926,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(478,'T-Mobile US 230','epc.tmobile.com',0,NULL,NULL,2,NULL,'http://mms.msg.eng.t-mobile.com/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,926,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(479,'T-Mobile US 240','epc.tmobile.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,927,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(480,'T-Mobile US 240','epc.tmobile.com',0,NULL,NULL,2,NULL,'http://mms.msg.eng.t-mobile.com/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,927,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(481,'T-Mobile US 250','epc.tmobile.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,923,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(482,'T-Mobile US 250','epc.tmobile.com',0,NULL,NULL,2,NULL,'http://mms.msg.eng.t-mobile.com/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,923,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(483,'T-Mobile US','epc.tmobile.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,918,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(484,'T-Mobile US','epc.tmobile.com',0,NULL,NULL,2,NULL,'http://mms.msg.eng.t-mobile.com/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,918,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(485,'T-Mobile US 270','epc.tmobile.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,920,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(486,'T-Mobile US 270','epc.tmobile.com',0,NULL,NULL,2,NULL,'http://mms.msg.eng.t-mobile.com/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,920,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(487,'T-Mobile US 310','epc.tmobile.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,916,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(488,'T-Mobile US 310','epc.tmobile.com',0,NULL,NULL,2,NULL,'http://mms.msg.eng.t-mobile.com/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,916,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(489,'Cingular 380 ATT','proxy',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,872,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(490,'Cingular 380 ATT','proxy',0,NULL,NULL,2,NULL,'http://mmsc.cingular.com/',300,NULL,NULL,NULL,NULL,NULL,NULL,872,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(491,'AWS MMS','proxy',0,NULL,NULL,2,'10.250.250.55:8080','http://mmsc.mymmode.com',300,NULL,NULL,NULL,NULL,NULL,NULL,872,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(492,'Celloneet MMS','mms.celloneet.com',0,'user1@mms.celloneet.com','celloneet',2,'63.99.231.135:8080','http://mms.celloneet.com/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1005,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(493,'Cingular 410','wap.cingular',0,'WAP@CINGULARGPRS.COM','CINGULAR1',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,875,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(494,'Cingular 410','wap.cingular',0,'WAP@CINGULARGPRS.COM','CINGULAR1',2,NULL,'http://mmsc.cingular.com/',300,NULL,NULL,NULL,NULL,NULL,NULL,875,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(495,'CBW MMS','wap.gocbw.com',0,NULL,NULL,2,'216.68.79.202:80','http://mms.gocbw.com:8088/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,883,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(496,'DataConnect','isp.cingular',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,888,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(497,'MediaNet','wap.cingular',0,'WAP@CINGULARGPRS.COM','CINGULAR1',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,888,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(498,'MediaNet','wap.cingular',0,'WAP@CINGULARGPRS.COM','CINGULAR1',2,'66.209.11.32:8080','http://mmsc.cingular.com',300,NULL,NULL,NULL,NULL,NULL,NULL,888,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(499,'DataConnect','isp.cingular',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1006,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(500,'MediaNet','wap.cingular',0,'WAP@CINGULARGPRS.COM','CINGULAR1',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1006,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(501,'MediaNet','wap.cingular',0,'WAP@CINGULARGPRS.COM','CINGULAR1',2,'66.209.11.32:8080','http://mmsc.cingular.com',300,NULL,NULL,NULL,NULL,NULL,NULL,1006,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(502,'T-Mobile US 490','epc.tmobile.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,917,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(503,'T-Mobile US 490','epc.tmobile.com',0,NULL,NULL,2,NULL,'http://mms.msg.eng.t-mobile.com/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,917,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(504,'GoodCall Picture Message','good.call',0,NULL,NULL,2,'66.150.33.125:8080','http://mms.suncom.net:8088/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,917,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(505,'Suncom MMS','mms',0,NULL,NULL,2,'66.150.33.125:8080','http://mms.suncom.net:8088/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,917,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(506,'DobsonMMS','dobsoncellularwap',0,NULL,NULL,2,'172.23.1.252:8799','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1007,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(507,'ChinookMMS','wapgw.chinookwireless.net',0,NULL,NULL,2,'204.181.155.195:8080','http://mms.cellonenation.net/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,898,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(508,'T-Mobile US 580','epc.tmobile.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,919,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(509,'T-Mobile US 580','epc.tmobile.com',0,NULL,NULL,2,NULL,'http://mms.msg.eng.t-mobile.com/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,919,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(510,'CellularOne MMS','cellular1wap',0,NULL,NULL,2,'172.23.1.252:8799','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,937,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(511,'EpicINT','internet.epictouch',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1008,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(512,'EpicMMS','mms.epictouch',0,NULL,NULL,2,'63.99.231.135:8080','http://mmsc.westlinkcom.com/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1008,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(513,'T-Mobile US 660','epc.tmobile.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,914,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(514,'T-Mobile US 660','epc.tmobile.com',0,NULL,NULL,2,NULL,'http://mms.msg.eng.t-mobile.com/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,914,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(515,'WEB 2','i2.iwireless.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,892,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(516,'Picture Messaging','wap1.iwireless.com',0,NULL,NULL,2,'209.4.229.31:9401','http://mmsc.iwireless.dataonair.net:6672',300,NULL,NULL,NULL,NULL,NULL,NULL,892,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(517,'PIAPicture Messaging','wap9.iwireless.com',0,NULL,NULL,2,'209.4.229.32:9401','http://mmsc.iwireless.dataonair.net:6672',300,NULL,NULL,NULL,NULL,NULL,NULL,892,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(518,'T-Mobile US 800','epc.tmobile.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,915,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(519,'T-Mobile US 800','epc.tmobile.com',0,NULL,NULL,2,NULL,'http://mms.msg.eng.t-mobile.com/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,915,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(520,'Internet','isp',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,928,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(521,'MMS','mms',0,NULL,NULL,2,'12.108.12.13:3128','http://mms.edgemobile.net/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,928,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(522,'Edge MMS Prepay','ppmms',0,NULL,NULL,2,'12.108.12.13:3128','http://mms.edgemobile.net/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,928,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(523,'DTC MMS','mms.adv.com',0,NULL,NULL,2,NULL,'http://mms.iot1.com/advantage/mms.php',300,NULL,NULL,NULL,NULL,NULL,NULL,876,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(524,'WOW_WAP','wap.firstcellular.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1009,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(525,'WOW_WAP','wap.firstcellular.com',0,NULL,NULL,2,'10.101.1.5:3128','mms.firstcellular.net/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1009,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(526,'MMS','wap.cellular1.net',0,NULL,NULL,2,NULL,'http://mms.cellular1.net/ecit/mms.php',300,NULL,NULL,NULL,NULL,NULL,NULL,881,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(527,'Farmers GPRS','internet.farmerswireless.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1010,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(528,'Farmers MMS','mms.farmers.com',0,NULL,NULL,2,NULL,'172.16.0.37:8514',300,NULL,NULL,NULL,NULL,NULL,NULL,1010,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(529,'INTERNET CLARO','internet.claropr.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,710,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(530,'MMS CLARO','mms.claropr.com',0,NULL,NULL,2,'10.50.38.3:8799','http://mmsg.claropr.com:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,710,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(531,'Internet','internet.itelcel.com',0,'webgprs','webgprs2002',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,619,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(532,'Mensajes Multimedia','mms.itelcel.com',0,'mmsgprs','mmsgprs2003',2,'148.233.151.240:8080','http://mms.itelcel.com/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,619,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(533,'Movistar INTERNET','internet.movistar.mx',0,'movistar','movistar',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,618,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(534,'Movistar MMS','mms.movistar.mx',0,'movistar','movistar',2,'10.2.20.1:80','http://mms.movistar.mx',300,NULL,NULL,NULL,NULL,NULL,NULL,618,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(535,'Movistar INTERNET','internet.movistar.mx',0,'movistar','movistar',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1011,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(536,'Movistar MMS','mms.movistar.mx',0,'movistar','movistar',2,'10.2.20.1:80','http://mms.movistar.mx',300,NULL,NULL,NULL,NULL,NULL,NULL,1011,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(537,'Iusacell Internet','web.iusacellgsm.mx',0,'iusacellgsm','iusacellgsm',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,615,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(538,'Iusacell MMS','mms.iusacellgsm.mx',0,'mmsiusacellgsm','mmsiusacellgsm',2,':','http://mms.iusacell3g.com/',300,NULL,NULL,NULL,NULL,NULL,NULL,615,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(539,'Iusacell Modem','modem.iusacellgsm.mx',0,'iusacellgsm','iusacellgsm',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,615,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(540,'Web Digicel','web',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,537,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(541,'MMS Digicel','wap',0,NULL,NULL,2,'172.16.7.12:8080','http://mms.digicelgroup.com',300,NULL,NULL,NULL,NULL,NULL,NULL,537,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(542,'Lime Internet Postpaid','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1012,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(543,'Lime Postpaid MMS','multimedia',0,NULL,NULL,2,'10.20.5.34:8799','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1012,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(544,'Claro Web','internet.ideasclaro.com.jm',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1013,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(545,'Claro MMS','mms.ideasclaro.com.jm',0,NULL,NULL,2,'190.80.147.118:8080','http://mms.ideasclaro.com.jm/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,1013,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(546,'Lime Internet Postpaid','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,536,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(547,'Lime Postpaid MMS','multimedia',0,NULL,NULL,2,'10.20.5.34:8799','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,536,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(548,'Orange World Carabe','orangewap',0,'orange','wap',2,'10.0.0.10:8082',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,214,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(549,'Orange MMS Carabe','orangewap',0,'orange','orange',2,'10.0.0.10:8082','http://193.251.160.246/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,214,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(550,'Digicel FR','wap.digicelfr.com',0,'wap','wap',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,212,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(551,'Digicel FR','wap.digicelfr.com',0,'wap','wap',2,'172.20.6.12:8080','http://mmc.digicelfr.com/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,212,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(552,'Lime Internet Postpaid','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1014,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(553,'Lime Postpaid MMS','multimedia',0,NULL,NULL,2,'10.20.5.34:8799','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1014,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(554,'Lime Internet Postpaid','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1015,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(555,'Lime Postpaid MMS','multimedia',0,NULL,NULL,2,'10.20.5.34:8799','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1015,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(556,'Lime Internet Postpaid','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1016,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(557,'Lime Postpaid MMS','multimedia',0,NULL,NULL,2,'10.20.5.34:8799','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1016,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(558,'Lime Internet Postpaid','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1017,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(559,'Lime Postpaid MMS','multimedia',0,NULL,NULL,2,'10.20.5.34:8799','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1017,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(560,'Lime Internet Postpaid','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1018,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(561,'Lime Postpaid MMS','multimedia',0,NULL,NULL,2,'10.20.5.34:8799','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1018,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(562,'Lime Internet Postpaid','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1019,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(563,'Lime Postpaid MMS','multimedia',0,NULL,NULL,2,'10.20.5.34:8799','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1019,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(564,'Lime Internet Postpaid','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1020,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(565,'Lime Postpaid MMS','multimedia',0,NULL,NULL,2,'10.20.5.34:8799','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1020,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(566,'Lime Internet Postpaid','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1021,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(567,'Lime Postpaid MMS','multimedia',0,NULL,NULL,2,'10.20.5.34:8799','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1021,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(568,'Lime Internet Postpaid','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1022,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(569,'Lime Postpaid MMS','multimedia',0,NULL,NULL,2,'10.20.5.34:8799','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1022,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(570,'Web Digicel','web',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1023,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(571,'MMS Digicel','wap',0,NULL,NULL,2,'172.16.7.12:8080','http://mms.digicelgroup.com',300,NULL,NULL,NULL,NULL,NULL,NULL,1023,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(572,'Web Digicel','web',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1024,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(573,'MMS Digicel','wap',0,NULL,NULL,2,'172.16.7.12:8080','http://mms.digicelgroup.com',300,NULL,NULL,NULL,NULL,NULL,NULL,1024,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(574,'Lime Internet Postpaid','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1025,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(575,'Lime Postpaid MMS','multimedia',0,NULL,NULL,2,'10.20.5.34:8799','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1025,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(576,'Lime Internet Postpaid','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1026,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(577,'Lime Postpaid MMS','multimedia',0,NULL,NULL,2,'10.20.5.34:8799','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1026,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(578,'Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,162,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(579,'Cubacel MMS','mms',0,NULL,NULL,2,'200.13.145.52:8080','http://mms.cubacel.cu/',300,NULL,NULL,NULL,NULL,NULL,NULL,162,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(580,'Orange Net','orangenet.com.do',0,'orange','orange',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,183,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(581,'Orange MMS','orangeworld',0,'orange','orange',2,'172.16.126.70:8080','http://mms.orange.com.do/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,183,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(582,'INTERNET CLARO','internet.ideasclaro.com.do',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,182,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(583,'MMS CLARO','mms.ideasclaro.com.do',0,NULL,NULL,2,'190.80.147.8:8080','http://mms.ideasclaro.com.do/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,182,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(584,'Viva Edge','edge.viva.net.do',0,'viva','viva',2,'192.168.16.10:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,184,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(585,'Viva MMS','mms.viva.net.do',0,'viva','viva',2,'192.168.16.10:9401','http://10.200.16.4/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,184,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(586,'Web Voila','internet.voila.ht',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,294,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(587,'Bmobile internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,838,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(588,'Bmobile mms','mms',0,NULL,NULL,2,'192.168.210.104:8080','http://192.168.210.104/mmrelay.app',300,NULL,NULL,NULL,NULL,NULL,NULL,838,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(589,'Bmobile internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1027,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(590,'Bmobile mms','mms',0,NULL,NULL,2,'192.168.210.104:8080','http://192.168.210.104/mmrelay.app',300,NULL,NULL,NULL,NULL,NULL,NULL,1027,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(591,'Bmobile internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1028,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(592,'Bmobile mms','mms',0,NULL,NULL,2,'192.168.210.104:8080','http://192.168.210.104/mmrelay.app',300,NULL,NULL,NULL,NULL,NULL,NULL,1028,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(593,'Bmobile internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1029,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(594,'Bmobile mms','mms',0,NULL,NULL,2,'192.168.210.104:8080','http://192.168.210.104/mmrelay.app',300,NULL,NULL,NULL,NULL,NULL,NULL,1029,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(595,'Bmobile internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1030,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(596,'Bmobile mms','mms',0,NULL,NULL,2,'192.168.210.104:8080','http://192.168.210.104/mmrelay.app',300,NULL,NULL,NULL,NULL,NULL,NULL,1030,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(597,'Bmobile internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1031,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(598,'Bmobile mms','mms',0,NULL,NULL,2,'192.168.210.104:8080','http://192.168.210.104/mmrelay.app',300,NULL,NULL,NULL,NULL,NULL,NULL,1031,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(599,'Bmobile internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1032,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(600,'Bmobile mms','mms',0,NULL,NULL,2,'192.168.210.104:8080','http://192.168.210.104/mmrelay.app',300,NULL,NULL,NULL,NULL,NULL,NULL,1032,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(601,'Bmobile internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1033,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(602,'Bmobile mms','mms',0,NULL,NULL,2,'192.168.210.104:8080','http://192.168.210.104/mmrelay.app',300,NULL,NULL,NULL,NULL,NULL,NULL,1033,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(603,'Bmobile internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1034,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(604,'Bmobile mms','mms',0,NULL,NULL,2,'192.168.210.104:8080','http://192.168.210.104/mmrelay.app',300,NULL,NULL,NULL,NULL,NULL,NULL,1034,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(605,'Bmobile internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1035,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(606,'Bmobile mms','mms',0,NULL,NULL,2,'192.168.210.104:8080','http://192.168.210.104/mmrelay.app',300,NULL,NULL,NULL,NULL,NULL,NULL,1035,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(607,'Bmobile internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1036,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(608,'Bmobile mms','mms',0,NULL,NULL,2,'192.168.210.104:8080','http://192.168.210.104/mmrelay.app',300,NULL,NULL,NULL,NULL,NULL,NULL,1036,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(609,'Web Digicel','web.digiceltt.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1037,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(610,'MMS Digicel','wap.digiceltt.com',0,'wap','wap',2,'172.20.6.12:8080','http://mmc.digiceltt.com/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1037,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(611,'Web Digicel','web.digiceltt.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1038,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(612,'MMS Digicel','wap.digiceltt.com',0,'wap','wap',2,'172.20.6.12:8080','http://mmc.digiceltt.com/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1038,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(613,'Lime Internet Postpaid','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1039,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(614,'Lime Postpaid MMS','multimedia',0,NULL,NULL,2,'10.20.5.34:8799','http://mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1039,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(615,'Beeline Internet','internet.beeline.kz',0,'@internet.beeline','beeline',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,547,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(616,'Beeline MMS','mms.beeline.kz',0,'@mms.beeline','beeline',2,'172.27.6.93:8080','http://mms.beeline.kz/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,547,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(617,'Kcell Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,548,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(618,'Kcell MMS','mms',0,NULL,NULL,2,'195.47.255.7:8080','http://mms.kcell.kz/post',300,NULL,NULL,NULL,NULL,NULL,NULL,548,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(619,'Tele2 Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,549,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(620,'Tele2 MMS','mms',0,NULL,NULL,2,'10.1.26.10:8080','http://mms.neogsm.kz/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,549,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(621,'Vodafone MMS','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,491,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(622,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,491,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(623,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,491,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(624,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,348,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(625,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,348,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(626,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,342,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(627,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,342,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(628,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,359,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(629,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,359,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(630,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,490,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(631,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,490,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(632,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,490,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(633,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,360,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(634,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,360,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(635,'Reliance RTel MMS','MMS',0,NULL,NULL,2,'10.239.221.7:8080','http://10.239.221.47/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,385,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(636,'Reliance RTel','SMARTNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,385,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(637,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,343,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(638,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,343,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(639,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,489,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(640,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,489,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(641,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,489,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(642,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,376,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(643,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,376,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(644,'Vodafone MMS','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,487,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(645,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,487,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(646,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,487,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(647,'IDEA Punjab MMS','spice',0,NULL,NULL,2,'10.11.12.13:9401','http://10.11.12.180/',300,NULL,NULL,NULL,NULL,NULL,NULL,378,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(648,'IDEA Punjab','spicegprs',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,378,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(649,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,500,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(650,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,500,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(651,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,500,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(652,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,358,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(653,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,358,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(654,'Aircel MMS','aircelmms',0,NULL,NULL,2,'172.17.83.69:8080','http://10.50.1.166/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1040,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(655,'Aircel GPRS','aircelwebpost',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1040,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(656,'Reliance RTel MMS','MMS',0,NULL,NULL,2,'10.239.221.7:8080','http://10.239.221.47/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,384,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(657,'Reliance RTel','SMARTNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,384,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(658,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,372,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(659,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,372,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(660,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,496,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(661,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,496,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(662,'VodafoneLive!','portalnmms',0,NULL,NULL,2,NULL,'http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,496,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(663,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1041,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(664,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1041,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(665,'VodafoneLive!','portalnmms',0,NULL,NULL,2,NULL,'http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,1041,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(666,'Loop Mobile MMS','mizone',0,NULL,'mmsc',2,'10.0.0.10:9401','http://mms.loopmobile.in:8080',300,NULL,NULL,NULL,NULL,NULL,NULL,1042,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(667,'Loop Mobile','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1042,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(668,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,377,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(669,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,377,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(670,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,370,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(671,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,370,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(672,'AIRCEL NE MMS','aircelmms',0,NULL,NULL,2,'172.17.83.69:8080','http://10.50.1.166/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1043,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(673,'AIRCEL NE','aircelwebpost',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1043,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(674,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,495,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(675,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,495,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(676,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,495,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(677,'AIRCEL NE MMS','aircelmms',0,NULL,NULL,2,'172.17.83.69:8080','http://10.50.1.166/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1044,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(678,'AIRCEL NE','aircelwebpost',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1044,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(679,'AIRCEL NE MMS','aircelmms',0,NULL,NULL,2,'172.17.83.69:8080','http://10.50.1.166/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1045,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(680,'AIRCEL NE','aircelwebpost',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1045,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(681,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1046,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(682,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1046,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(683,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,1046,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(684,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,344,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(685,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,344,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(686,'AIRCEL NE MMS','aircelmms',0,NULL,NULL,2,'172.17.83.69:8080','http://10.50.1.166/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1047,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(687,'AIRCEL NE','aircelwebpost',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1047,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(688,'Cellone_North MMS','bsnlmms',0,NULL,NULL,2,'10.210.10.11:8080','http://bsnlmmsc.in',300,NULL,NULL,NULL,NULL,NULL,NULL,320,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(689,'Cellone_North','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,320,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(690,'AIRCEL NE MMS','aircelmms',0,NULL,NULL,2,'172.17.83.69:8080','http://10.50.1.166/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1048,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(691,'AIRCEL NE','aircelwebpost',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1048,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(692,'Reliance RTel MMS','MMS',0,NULL,NULL,2,'10.239.221.7:8080','http://10.239.221.47/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,383,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(693,'Reliance RTel','SMARTNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,383,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(694,'AIRCEL NE MMS','aircelmms',0,NULL,NULL,2,'172.17.83.69:8080','http://10.50.1.166/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1049,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(695,'AIRCEL NE','aircelwebpost',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1049,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(696,'CellOne_Kolkata MMS','bsnlmms',0,NULL,NULL,2,'10.210.10.11:8080','http://bsnlmmsc.in:8514',300,NULL,NULL,NULL,NULL,NULL,NULL,316,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(697,'CellOne_Kolkata','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,316,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(698,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,341,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(699,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,341,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(700,'AIRCEL TN','aircelgprs.po',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1050,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(701,'AIRCEL TN','aircelgprs.po',0,NULL,NULL,2,'192.168.35.196:8081','http://mmsc/mmrelay.app',300,NULL,NULL,NULL,NULL,NULL,NULL,1050,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(702,'AIRCEL TN','aircelgprs.po',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,306,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(703,'AIRCEL TN','aircelgprs.po',0,NULL,NULL,2,'192.168.35.196:8081','http://mmsc/mmrelay.app',300,NULL,NULL,NULL,NULL,NULL,NULL,306,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(704,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,499,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(705,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,499,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(706,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,499,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(707,'IDEA Karnataka','simplyinternet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,363,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(708,'IDEA Karnataka MMS','spicemms',0,NULL,NULL,2,'10.200.200.3:8080','http://10.200.200.3:8514',300,NULL,NULL,NULL,NULL,NULL,NULL,363,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(709,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,345,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(710,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,345,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(711,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,493,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(712,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,493,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(713,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,493,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(714,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,340,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(715,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,340,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(716,'Reliance RTel MMS','MMS',0,NULL,NULL,2,'10.239.221.7:8080','http://10.239.221.47/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,387,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(717,'Reliance RTel','SMARTNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,387,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(718,'Cellone_North MMS','bsnlmms',0,NULL,NULL,2,'10.210.10.11:8080','http://bsnlmmsc.in',300,NULL,NULL,NULL,NULL,NULL,NULL,321,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(719,'Cellone_North','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,321,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(720,'Reliance RTel MMS','MMS',0,NULL,NULL,2,'10.239.221.7:8080','http://10.239.221.47/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,386,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(721,'Reliance RTel','SMARTNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,386,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(722,'Cellone_North MMS','bsnlmms',0,NULL,NULL,2,'10.210.10.11:8080','http://bsnlmmsc.in',300,NULL,NULL,NULL,NULL,NULL,NULL,330,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(723,'Cellone_North','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,330,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(724,'Cellone_North MMS','bsnlmms',0,NULL,NULL,2,'10.210.10.11:8080','http://bsnlmmsc.in',300,NULL,NULL,NULL,NULL,NULL,NULL,334,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(725,'Cellone_North','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,334,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(726,'Cellone_North MMS','bsnlmms',0,NULL,NULL,2,'10.210.10.11:8080','http://bsnlmmsc.in',300,NULL,NULL,NULL,NULL,NULL,NULL,333,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(727,'Cellone_North','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,333,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(728,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,365,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(729,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,365,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(730,'Cellone_West MMS','bsnlmms',0,NULL,NULL,2,'10.210.10.11:8080','http://bsnlmmsc.in',300,NULL,NULL,NULL,NULL,NULL,NULL,319,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(731,'Cellone_West','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,319,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(732,'Cellone_West MMS','bsnlmms',0,NULL,NULL,2,'10.210.10.11:8080','http://bsnlmmsc.in',300,NULL,NULL,NULL,NULL,NULL,NULL,326,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(733,'Cellone_West','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,326,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(734,'Cellone_North MMS','bsnlmms',0,NULL,NULL,2,'10.210.10.11:8080','http://bsnlmmsc.in',300,NULL,NULL,NULL,NULL,NULL,NULL,331,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(735,'Cellone_North','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,331,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(736,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,498,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(737,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,498,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(738,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,498,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(739,'Cellone_North MMS','bsnlmms',0,NULL,NULL,2,'10.210.10.11:8080','http://bsnlmmsc.in',300,NULL,NULL,NULL,NULL,NULL,NULL,322,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(740,'Cellone_North','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,322,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(741,'CellOne_South MMS','bsnlmms',0,NULL,'mmsc',2,'10.210.10.11:8080','http://bsnlmmsc.in:8514',300,NULL,NULL,NULL,NULL,NULL,NULL,318,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(742,'CellOne_South','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,318,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(743,'Cellone_West MMS','bsnlmms',0,NULL,NULL,2,'10.210.10.11:8080','http://bsnlmmsc.in',300,NULL,NULL,NULL,NULL,NULL,NULL,327,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(744,'Cellone_West','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,327,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(745,'Reliance RTel MMS','MMS',0,NULL,NULL,2,'10.239.221.7:8080','http://10.239.221.47/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,388,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(746,'Reliance RTel','SMARTNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,388,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(747,'Dolphin_Delhi','gprsmtnldel',0,'mtnl','mtnl123',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,381,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(748,'Dolphin_Delhi','gprsmtnldel',0,'mtnl','mtnl123',2,'172.16.31.10:80','http://172.16.31.136/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,381,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(749,'Dolphin_Delhi_3G','mtnl3g',0,'mtnl','mtnl123',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,381,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(750,'Dolphin_Delhi_3G','mtnl3g',0,'mtnl','mtnl123',2,'172.16.31.10:9401','http://172.16.31.165/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,381,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(751,'Dolphin_Mumbai','gprsmtnlmum',0,'mtnl','mtnl123',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,382,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(752,'Dolphin_Mumbai','gprsmtnlmum',0,'mtnl','mtnl123',2,'172.16.39.10:80','http://172.16.39.140/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,382,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(753,'Dolphin_Mumbai_3G','mtnl3g',0,'mtnl','mtnl123',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,382,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(754,'Dolphin_Mumbai_3G','mtnl3g',0,'mtnl','mtnl123',2,'172.16.39.10:9401','http://172.16.31.165/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,382,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(755,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,357,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(756,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,357,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(757,'CellOne_South MMS','bsnlmms',0,NULL,'mmsc',2,'10.210.10.11:8080','http://bsnlmmsc.in:8514',300,NULL,NULL,NULL,NULL,NULL,NULL,323,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(758,'CellOne_South','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,323,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(759,'CellOne_South MMS','bsnlmms',0,NULL,'mmsc',2,'10.210.10.11:8080','http://bsnlmmsc.in:8514',300,NULL,NULL,NULL,NULL,NULL,NULL,324,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(760,'CellOne_South','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,324,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(761,'CellOne_South MMS','bsnlmms',0,NULL,'mmsc',2,'10.210.10.11:8080','http://bsnlmmsc.in:8514',300,NULL,NULL,NULL,NULL,NULL,NULL,315,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(762,'CellOne_South','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,315,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(763,'bsnlmms','bsnlmms',0,NULL,NULL,2,'10.210.10.11:8080','http://bsnlmmsc.in:8514',300,NULL,NULL,NULL,NULL,NULL,NULL,335,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(764,'bsnlnet','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,335,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(765,'CellOne_Kolkata MMS','bsnlmms',0,NULL,NULL,2,'10.210.10.11:8080','http://bsnlmmsc.in:8514',300,NULL,NULL,NULL,NULL,NULL,NULL,317,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(766,'CellOne_Kolkata','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,317,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(767,'CellOne_Kolkata MMS','bsnlmms',0,NULL,NULL,2,'10.210.10.11:8080','http://bsnlmmsc.in:8514',300,NULL,NULL,NULL,NULL,NULL,NULL,329,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(768,'CellOne_Kolkata','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,329,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(769,'CellOne_Kolkata MMS','bsnlmms',0,NULL,NULL,2,'10.210.10.11:8080','http://bsnlmmsc.in:8514',300,NULL,NULL,NULL,NULL,NULL,NULL,328,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(770,'CellOne_Kolkata','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,328,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(771,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,380,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(772,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,380,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(773,'CellOne_South MMS','bsnlmms',0,NULL,'mmsc',2,'10.210.10.11:8080','http://bsnlmmsc.in:8514',300,NULL,NULL,NULL,NULL,NULL,NULL,314,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(774,'CellOne_South','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,314,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(775,'CellOne_South MMS','bsnlmms',0,NULL,'mmsc',2,'10.210.10.11:8080','http://bsnlmmsc.in:8514',300,NULL,NULL,NULL,NULL,NULL,NULL,332,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(776,'CellOne_South','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,332,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(777,'CellOne_Kolkata MMS','bsnlmms',0,NULL,NULL,2,'10.210.10.11:8080','http://bsnlmmsc.in:8514',300,NULL,NULL,NULL,NULL,NULL,NULL,325,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(778,'CellOne_Kolkata','bsnlnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,325,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(779,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,368,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(780,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,368,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(781,'Reliance RTel MMS','MMS',0,NULL,NULL,2,'10.239.221.7:8080','http://10.239.221.47/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,390,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(782,'Reliance RTel','SMARTNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,390,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(783,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,488,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(784,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,488,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(785,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,488,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(786,'Reliance RTel MMS','MMS',0,NULL,NULL,2,'10.239.221.7:8080','http://10.239.221.47/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,389,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(787,'Reliance RTel','SMARTNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,389,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(788,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,492,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(789,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,492,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(790,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,492,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(791,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,369,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(792,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,369,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(793,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,497,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(794,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,497,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(795,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,497,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(796,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,366,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(797,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,366,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(798,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,353,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(799,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,353,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(800,'AIRCEL NE MMS','aircelmms',0,NULL,NULL,2,'172.17.83.69:8080','http://10.50.1.166/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1051,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(801,'AIRCEL NE','aircelwebpost',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1051,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(802,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,347,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(803,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,347,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(804,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,350,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(805,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,350,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(806,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,349,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(807,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,349,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(808,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,352,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(809,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,352,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(810,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,354,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(811,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,354,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(812,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,338,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(813,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,338,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(814,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,351,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(815,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,351,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(816,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,400,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(817,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,400,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(818,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,1052,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(819,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1052,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(820,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,1053,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(821,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1053,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(822,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,396,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(823,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,396,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(824,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,402,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(825,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,402,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(826,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,393,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(827,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,393,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(828,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,1054,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(829,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1054,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(830,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,391,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(831,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,391,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(832,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,403,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(833,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,403,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(834,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,395,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(835,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,395,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(836,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,1055,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(837,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1055,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(838,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,392,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(839,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,392,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(840,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,1056,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(841,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1056,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(842,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,394,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(843,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,394,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(844,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,1057,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(845,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1057,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(846,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,398,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(847,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,398,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(848,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,399,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(849,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,399,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(850,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,397,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(851,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,397,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(852,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,401,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(853,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,401,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(854,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,404,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(855,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,404,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(856,'Reliance RCOM MMS','rcommms',0,NULL,NULL,2,'10.239.221.5:8080','http://mmsc.rcom.co.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,1058,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(857,'Reliance RCOM','rcomnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1058,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(858,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,443,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(859,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,443,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(860,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1059,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(861,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,1059,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(862,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,438,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(863,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,438,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(864,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1060,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(865,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,1060,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(866,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,435,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(867,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,435,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(868,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,429,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(869,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,429,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(870,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,428,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(871,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,428,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(872,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,436,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(873,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,436,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(874,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1061,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(875,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,1061,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(876,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,427,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(877,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,427,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(878,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,430,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(879,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,430,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(880,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,431,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(881,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,431,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(882,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,444,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(883,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,444,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(884,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,434,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(885,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,434,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(886,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,445,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(887,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,445,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(888,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1062,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(889,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,1062,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(890,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,433,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(891,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,433,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(892,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,432,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(893,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,432,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(894,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,440,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(895,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,440,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(896,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,439,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(897,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,439,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(898,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,442,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(899,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,442,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(900,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,437,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(901,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,437,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(902,'TataDOCOMO','TATA.DOCOMO.INTERNET',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,441,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(903,'TataDOCOMO MMS','TATA.DOCOMO.MMS',0,NULL,NULL,2,'10.124.26.94:8799','http://mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,441,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(904,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,336,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(905,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,336,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(906,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,337,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(907,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,337,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(908,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,339,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(909,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,339,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(910,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,346,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(911,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,346,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(912,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,355,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(913,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,355,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(914,'Airtel','airtelgprs.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,356,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(915,'Airtel MMS','airtelmms.com',0,NULL,NULL,2,'100.1.201.172:8799','http://100.1.201.171:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,356,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(916,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,501,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(917,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,501,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(918,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,501,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(919,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,502,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(920,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,502,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(921,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,502,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(922,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,367,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(923,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,367,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(924,'Vodafone MMS','vodafonelivejk',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,506,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(925,'Vodafone Connect','jkgprs',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,506,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(926,'VodafoneLive!','vodafonelivejk',0,NULL,NULL,2,'10.10.1.100:9411',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,506,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(927,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,503,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(928,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,503,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(929,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,503,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(930,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,504,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(931,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,504,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(932,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,504,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(933,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,509,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(934,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,509,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(935,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,509,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(936,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,505,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(937,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,505,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(938,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,505,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(939,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,508,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(940,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,508,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(941,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,508,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(942,'Vodafone Connect','www',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,507,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(943,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,507,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(944,'VodafoneLive!','portalnmms',0,NULL,NULL,2,'10.10.1.100:9401','http://mms1.live.vodafone.in/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,507,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(945,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,361,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(946,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,361,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(947,'AIRCEL ROI','aircelgprs',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,312,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(948,'AIRCEL ROI MMS','aircelmms',0,NULL,NULL,2,'172.17.83.69:8080','http://10.50.1.166/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,312,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(949,'AIRCEL South','aircelgprs',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,313,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(950,'AIRCEL South MMS','aircelmms',0,NULL,NULL,2,'192.168.35.196:8081','http://mmsc/mmrelay.app',300,NULL,NULL,NULL,NULL,NULL,NULL,313,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(951,'AIRCEL Central','aircelgprs',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,311,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(952,'AIRCEL Central MMS','aircelmms',0,NULL,NULL,2,'172.17.83.69:8080','http://10.50.1.166/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,311,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(953,'AIRCEL South','aircelgprs',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,310,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(954,'AIRCEL South MMS','aircelmms',0,NULL,NULL,2,'192.168.35.196:8081','http://mmsc/mmrelay.app',300,NULL,NULL,NULL,NULL,NULL,NULL,310,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(955,'AIRCEL ROI','aircelgprs',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,309,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(956,'AIRCEL ROI MMS','aircelmms',0,NULL,NULL,2,'172.17.83.69:8080','http://10.50.1.166/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,309,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(957,'AIRCEL ROI','aircelgprs',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,307,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(958,'AIRCEL ROI MMS','aircelmms',0,NULL,NULL,2,'172.17.83.69:8080','http://10.50.1.166/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,307,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(959,'AIRCEL Central','aircelgprs',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,308,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(960,'AIRCEL Central MMS','aircelmms',0,NULL,NULL,2,'172.17.83.69:8080','http://10.50.1.166/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,308,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(961,'AIRCEL Central','aircelgprs',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1063,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(962,'AIRCEL Central MMS','aircelmms',0,NULL,NULL,2,'172.17.83.69:8080','http://10.50.1.166/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1063,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(963,'AIRCEL Central','aircelgprs',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1064,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(964,'AIRCEL Central MMS','aircelmms',0,NULL,NULL,2,'172.17.83.69:8080','http://10.50.1.166/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1064,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(965,'AIRCEL South','aircelgprs',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1065,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(966,'AIRCEL South MMS','aircelmms',0,NULL,NULL,2,'192.168.35.196:8081','http://mmsc/mmrelay.app',300,NULL,NULL,NULL,NULL,NULL,NULL,1065,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(967,'AIRCEL ROI','aircelgprs',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1066,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(968,'AIRCEL ROI MMS','aircelmms',0,NULL,NULL,2,'172.17.83.69:8080','http://10.50.1.166/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1066,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(969,'AIRCEL ROI','aircelgprs',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1067,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(970,'AIRCEL ROI MMS','aircelmms',0,NULL,NULL,2,'172.17.83.69:8080','http://10.50.1.166/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1067,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(971,'AIRCEL Central','aircelgprs',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1068,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(972,'AIRCEL Central MMS','aircelmms',0,NULL,NULL,2,'172.17.83.69:8080','http://10.50.1.166/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1068,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(973,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,465,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(974,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,465,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(975,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,466,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(976,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,466,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(977,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,454,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(978,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,454,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(979,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,450,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(980,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,450,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(981,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,448,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(982,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,448,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(983,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,446,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(984,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,446,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(985,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,449,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(986,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,449,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(987,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,453,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(988,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,453,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(989,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,455,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(990,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,455,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(991,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,451,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(992,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,451,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(993,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,486,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(994,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,486,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(995,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,473,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(996,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,473,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(997,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,469,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(998,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,469,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(999,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,1069,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1000,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1069,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1001,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,485,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1002,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,485,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1003,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,470,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1004,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,470,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1005,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,468,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1006,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,468,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1007,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,484,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1008,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,484,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1009,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,480,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1010,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,480,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1011,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,479,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1012,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,479,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1013,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,481,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1014,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,481,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1015,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,482,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1016,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,482,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1017,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,483,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1018,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,483,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1019,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,478,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1020,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,478,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1021,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,477,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1022,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,477,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1023,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,471,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1024,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,471,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1025,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,472,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1026,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,472,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1027,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,423,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1028,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,423,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1029,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,474,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1030,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,474,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1031,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,475,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1032,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,475,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1033,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,476,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1034,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,476,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1035,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,467,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1036,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,467,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1037,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,362,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1038,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,362,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1039,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,364,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1040,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,364,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1041,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1070,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1042,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,1070,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1043,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,371,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1044,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,371,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1045,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,379,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1046,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,379,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1047,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,373,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1048,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,373,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1049,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1071,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1050,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,1071,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1051,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,374,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1052,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,374,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1053,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,375,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1054,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,375,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1055,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,452,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1056,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,452,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1057,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,456,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1058,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,456,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1059,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,464,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1060,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,464,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1061,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,463,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1062,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,463,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1063,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,447,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1064,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,447,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1065,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,461,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1066,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,461,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1067,'STEL','gprs.stel.in',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1072,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1068,'STEL','gprs.stel.in',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1073,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1069,'STEL','gprs.stel.in',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1074,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1070,'STEL','gprs.stel.in',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1075,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1071,'STEL','gprs.stel.in',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1076,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1072,'STEL','gprs.stel.in',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1077,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1073,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1078,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1074,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,1078,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1075,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1079,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1076,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,1079,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1077,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1080,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1078,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,1080,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1079,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1081,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1080,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,1081,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1081,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1082,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1082,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,1082,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1083,'IDEA','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1083,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1084,'IDEA MMS','mmsc',0,NULL,NULL,2,'10.4.42.15:8080','http://10.4.42.21:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,1083,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1085,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,462,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1086,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,462,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1087,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,460,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1088,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,460,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1089,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,459,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1090,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,459,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1091,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,457,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1092,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,457,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1093,'Uninor GPRS','uninor',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,458,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1094,'Uninor GPRS','uninor',0,NULL,NULL,2,'10.58.10.59:8080','http://10.58.2.120',300,NULL,NULL,NULL,NULL,NULL,NULL,458,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1095,'Videocon MMS','vgprs.com',0,NULL,NULL,2,'10.202.5.145:8799','http://10.202.4.119:10021/mmsc/',300,NULL,NULL,NULL,NULL,NULL,NULL,1084,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1096,'Videocon','vinternet.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1084,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1097,'Mobilink WAP GPRS','connect.mobilinkworld.com',0,'Mobilink','Mobilink',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,685,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1098,'Mobilink MMS','mms.mobilinkworld.com',0,'Mobilink','Mobilink',2,'172.25.20.12:8080','http://mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,685,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1099,'Ufone WAP','Ufone.internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,686,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1100,'Ufone MMS','Ufone.mms',0,NULL,NULL,2,'172.16.13.27:8080','http://www.ufonemms.com:80/',300,NULL,NULL,NULL,NULL,NULL,NULL,686,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1101,'ZONG WAP','zonginternet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,684,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1102,'ZONG MMS','zongmms',0,NULL,NULL,2,'10.81.6.33:8000','http://10.81.6.11:8080',300,NULL,NULL,NULL,NULL,NULL,NULL,684,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1103,'Telenor WAP','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,687,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1104,'Telenor MMS','mms',0,'Telenor','Telenor',2,'172.18.19.11:8080','http://mmstelenor',300,NULL,NULL,NULL,NULL,NULL,NULL,687,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1105,'Warid WAP','Wap.warid',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,688,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1106,'Warid MMS','mms.warid',0,NULL,NULL,2,'10.4.2.1:8080','http://10.4.0.132/servlets/MMS',300,NULL,NULL,NULL,NULL,NULL,NULL,688,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1107,'Alfa Internet','internet.mic1.com.lb',0,'mic1','mic1',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,576,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1108,'Alfa MMS','mms.mic1.com.lb',0,'mic1','mic1',2,'192.168.23.51:80','http://mms.mic1.com.lb',300,NULL,NULL,NULL,NULL,NULL,NULL,576,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1109,'MTC Touch GPRS','gprs.mtctouch.com.lb',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1085,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1110,'MTC MMS','mms.mtctouch.com.lb',0,'mtctouch',NULL,2,'192.168.4.103:80','http://mms:8080/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,1085,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1111,'Zain JO Internet Postpaid','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,539,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1112,'Zain JO Internet Prepaid','internetpre',0,'zain','zain',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,539,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1113,'Zain JO MMS','mms',0,'mms','mms',2,'192.168.55.10:80','http://mms.jo.zain.com',300,NULL,NULL,NULL,NULL,NULL,NULL,539,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1114,'umniahinternet Postpaid','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,541,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1115,'umniahmms','mms',0,NULL,NULL,2,'10.1.1.10:8080','http://mms.umniah.com',300,NULL,NULL,NULL,NULL,NULL,NULL,541,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1116,'umniah Prepaid','net',0,NULL,NULL,2,'0.0.0.0:80',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,541,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1117,'Orange MMS','mms.orange.jo',0,'mmc','mmc',2,'172.16.1.2:8080','http://172.16.1.96/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,540,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1118,'Orange Internet','net.orange.jo',0,'net','net',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,540,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1119,'ZAIN MMS','pps',0,'annyway','online',2,'176.0.0.65:8080','http://mms.zain',300,NULL,NULL,NULL,NULL,NULL,NULL,570,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1120,'ZAIN MI','pps',0,'pps','pps',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,570,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1121,'WATANIYA MMS','mms.wataniya.com',0,NULL,NULL,2,'194.126.53.64:8080','http://action.wataniya.com',300,NULL,NULL,NULL,NULL,NULL,NULL,571,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1122,'INTERNET ACTION','action.wataniya.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,571,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1123,'VIVA Internet','VIVA',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,569,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1124,'VIVA Internet','VIVA',0,NULL,NULL,2,'172.16.128.228:8080','http://172.16.128.80:38090/was',300,NULL,NULL,NULL,NULL,NULL,NULL,569,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1125,'JAWALNet','jawalnet.com.sa',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,752,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1126,'ALJAWAL MMS','mms.net.sa',0,NULL,NULL,2,'10.1.1.1:8080','http://mms.net.sa:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,752,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1127,'mobily Net Prepaid','web2',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,750,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1128,'mobily MMS Prepaid','mms2',0,NULL,NULL,2,'10.3.2.133:8080','http://10.3.3.133:9090/was',300,NULL,NULL,NULL,NULL,NULL,NULL,750,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1129,'mobily Net Postpaid','web1',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,750,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1130,'mobily MMS Postpaid','mms1',0,NULL,NULL,2,'10.3.2.133:8080','http://10.3.3.133:9090/was',300,NULL,NULL,NULL,NULL,NULL,NULL,750,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1131,'zain-gprs','zain',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,751,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1132,'zain-gprs','zain',0,NULL,NULL,2,'10.122.200.10:8080','http://10.122.200.12:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,751,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1133,'Oman Mobile MMS','MMS',0,'MMS','MMS',2,'192.168.203.35:8080','http://mmsc.omanmobile.om:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,682,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1134,'Oman Mobile Internet','taif',0,'taif','taif',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,682,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1135,'Nawras MMS','mms.nawras.com.om',0,'test','test',2,'10.128.240.19:8080','http://10.128.240.16/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,683,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1136,'Nawras GPRS','isp.nawras.com.om',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,683,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1137,'Etisalat MMS','etisalat',0,NULL,NULL,2,'10.12.0.32:8080','http://mms/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,22,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1138,'DATA Package','etisalat.ae',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,22,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1139,'du','du',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,21,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1140,'du','du',0,NULL,NULL,2,'10.19.18.4:8080','http://mms.du.ae',300,NULL,NULL,NULL,NULL,NULL,NULL,21,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1141,'3G Portal','uwap.orange.co.il',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1086,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1142,'3G Portal','uwap.orange.co.il',0,NULL,NULL,2,NULL,'http://192.168.220.15/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1086,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1143,'Internet 3G','modem.orange.net.il',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1086,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1144,'Cellcom Internet','Sphone',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,529,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1145,'Cellcom MMS','mms',0,NULL,NULL,2,'172.31.29.38:8080','http://mms.cellcom.co.il',300,NULL,NULL,NULL,NULL,NULL,NULL,529,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1146,'Multimedia Pelephone','mms.pelephone.net.il',0,'pcl@3g','pcl',2,'10.170.252.104:9093','http://mmsu.pelephone.net.il',300,NULL,NULL,NULL,NULL,NULL,NULL,530,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1147,'Sphone Pelephone','sphone.pelephone.net.il',0,'pcl@3g','pcl',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,530,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1148,'Internet','internet.batelco.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,66,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1149,'BAT MMS','mms.batelco.com',0,NULL,NULL,2,'192.168.1.2:80','http://192.168.36.10/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,66,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1150,'Zain Internet','connect.mobilinkworld.com',0,'Mobilink','Mobilink',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,68,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1151,'Zain MMS','mms',0,'mms','mms',2,'172.18.85.34:80','http://172.18.83.129',300,NULL,NULL,NULL,NULL,NULL,NULL,68,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1152,'VIVAGPRS','viva.bh',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,67,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1153,'VIVAMMS','vivawap.bh',0,NULL,NULL,2,'172.18.142.36:8080','http://mms.viva.com.bh:38090',300,NULL,NULL,NULL,NULL,NULL,NULL,67,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1154,'Qtel MMS','mms.qtel',0,'mms','mms',2,'10.23.8.3:8080','http://mmsr.qtelmms.qa',300,NULL,NULL,NULL,NULL,NULL,NULL,721,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1155,'Qtel GPRS','gprs.qtel',0,'gprs','gprs',2,'10.23.8.3:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,721,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1156,'VFQ MMS','vodafone.com.qa',0,NULL,NULL,2,'10.101.97.102:80','http://mms.vodafone.com.qa/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,722,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1157,'VFQ Mobile Internet','web.vodafone.com.qa',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,722,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1158,'spモード','spmode.ne.jp',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,543,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1159,'mopera U(スマートフォン定額)','mpr2.bizho.net',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,543,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1160,'mopera U設定','0120.mopera.net',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,543,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1161,'TestBed','annam.dyn',0,'mms','mms',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1162,'TestBed','annam.dyn',0,'mms','mms',2,'10.200.60.15:3128','http://10.200.60.21:8088/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1163,'TestBed IMS','ims',0,NULL,NULL,5,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1164,'SK Telecom Internet','lte.sktelecom.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,568,1,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1165,'SK Telecom MMS','lte.sktelecom.com',0,NULL,NULL,2,'lteoma.nate.com:9093','http://omms.nate.com:9082/oma_mms',300,NULL,NULL,NULL,NULL,NULL,NULL,568,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1166,'SK Telecom Tethering','lte.sktelecom.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,568,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1167,'SK Telecom IMS','ims',0,NULL,NULL,6,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,568,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1168,'KT Internet','lte.ktfwing.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,566,1,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1169,'KT MMS','lte.ktfwing.com',0,NULL,NULL,2,NULL,'http://mmsc.ktfwing.com:9082',300,NULL,NULL,NULL,NULL,NULL,NULL,566,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1170,'LG U+ Internet','internet.lguplus.co.kr',0,NULL,NULL,6,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,567,1,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1171,'LG U+ MMS','ims.lguplus.co.kr',0,NULL,NULL,6,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,567,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1172,'LG U+ Tethering','tethering.lguplus.co.kr',0,NULL,NULL,6,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,567,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1173,'LG U+ Roaming Internet','wroaming.lguplus.co.kr',0,NULL,NULL,6,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,567,1,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1174,'LG U+ Roaming MMS','wroaming.lguplus.co.kr',0,NULL,NULL,6,NULL,'http://omammsc.uplus.co.kr:9084',300,NULL,NULL,NULL,NULL,NULL,NULL,567,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1175,'LG U+ Roaming Tethering','wroaming.lguplus.co.kr',0,NULL,NULL,6,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,567,5,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1176,'KCT3G','web.sktelecom.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1087,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1177,'KCT3G','web.sktelecom.com',0,NULL,NULL,2,'smart.nate.com:9093','http://omms.nate.com:9082/oma_mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1087,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1178,'KCT3G','web.sktelecom.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1087,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1179,'KCT (Roaming)','roaming.sktelecom.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1087,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1180,'KCT (Roaming)','roaming.sktelecom.com',0,NULL,NULL,2,'smart.nate.com:9093','http://omms.nate.com:9082/oma_mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1087,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1181,'KCT (Roaming)','roaming.sktelecom.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1087,5,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1182,'VN MOBIFONE MMS','m-i090',0,'mms','mms',2,'203.162.21.114:3130','http://203.162.21.114/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1088,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1183,'VN MOBIFONE Email','m-wap',0,'mms','mms',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1088,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1184,'Vinaphone MMS','m3-mms',0,'mms','mms',2,'10.1.10.46:8000','http://mms.vinaphone.com.vn',300,NULL,NULL,NULL,NULL,NULL,NULL,955,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1185,'Vinaphone Email','m3-world',0,'mms','mms',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,955,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1186,'Viettel Email','v-internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,956,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1187,'Viettel MMS','v-mms',0,NULL,NULL,2,'192.168.233.10:8080','http://mms.viettelmobile.com.vn/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,956,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1188,'Vietnamobile Email','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,954,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1189,'Vietnamobile MMS','mms',0,NULL,NULL,2,'10.10.128.44:8080','http://10.10.128.58/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,954,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1190,'BEELINE Email','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,953,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1191,'BEELINE MMS','mms',0,'mms','mms',2,'10.16.70.199:8080','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,953,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1192,'3gwap','3gwap',0,NULL,NULL,2,'10.0.0.172:80',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1089,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1193,'CSL Data','hkcsl',0,NULL,NULL,2,'192.168.59.51:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,280,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1194,'CSL Data','hkcsl',0,NULL,NULL,2,'192.168.59.51:8080','http://192.168.58.171:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,280,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1195,'CSL Tethering','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,280,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1196,'CSL Data','hkcsl',0,NULL,NULL,2,'192.168.59.51:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,278,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1197,'CSL Data','hkcsl',0,NULL,NULL,2,'192.168.59.51:8080','http://192.168.58.171:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,278,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1198,'CSL Tethering','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,278,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1199,'CSL Data','hkcsl',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,277,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1200,'CSL Data','hkcsl',0,NULL,NULL,2,'192.168.59.51:8080','http://192.168.58.171:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,277,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1201,'CSL Tethering','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,277,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1202,'CSL Data','hkcsl',0,NULL,NULL,2,'192.168.59.51:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,279,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1203,'CSL Data','hkcsl',0,NULL,NULL,2,'192.168.59.51:8080','http://192.168.58.171:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,279,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1204,'CSL Tethering','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,279,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1205,'CSL LTE Data','mobile',0,NULL,NULL,2,'192.168.59.51:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,280,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1206,'CSL LTE Data','mobile',0,NULL,NULL,2,'192.168.59.51:8080','http://192.168.58.171:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,280,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1207,'CSL LTE Tethering','lte.internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,280,5,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1208,'CSL LTE Data','mobile',0,NULL,NULL,2,'192.168.59.51:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,278,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1209,'CSL LTE Data','mobile',0,NULL,NULL,2,'192.168.59.51:8080','http://192.168.58.171:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,278,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1210,'CSL LTE Tethering','lte.internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,278,5,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1211,'CSL LTE Data','mobile',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,277,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1212,'CSL LTE Data','mobile',0,NULL,NULL,2,'192.168.59.51:8080','http://192.168.58.171:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,277,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1213,'CSL LTE Tethering','lte.internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,277,5,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1214,'CSL LTE Data','mobile',0,NULL,NULL,2,'192.168.59.51:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,279,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1215,'CSL LTE Data','mobile',0,NULL,NULL,2,'192.168.59.51:8080','http://192.168.58.171:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,279,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1216,'CSL LTE Tethering','lte.internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,279,5,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1217,'3 LTE','mobile.lte.three.com.hk',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,285,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1218,'3 LTE','mobile.lte.three.com.hk',0,NULL,NULL,2,'172.20.97.116:8799','http://mms.um.three.com.hk:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,285,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1219,'3 LTE Tethering','share.lte.three.com.hk',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,285,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1220,'3','mobile.three.com.hk',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,285,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1221,'3','mobile.three.com.hk',0,NULL,NULL,2,'172.20.97.116:8799','http://mms.um.three.com.hk:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,285,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1222,'3 Tethering','mobile.three.com.hk',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,285,5,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1223,'3-DB-MMS','mms-g.three.com.hk',0,NULL,NULL,2,'10.30.15.53:8080','http://10.30.15.51:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,284,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1224,'3-DB-GPRS','web-g.three.com.hk',0,NULL,NULL,2,'10.30.15.53:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,284,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1225,'3-DB-MMS','mms-g.three.com.hk',0,NULL,NULL,2,'10.30.15.53:8080','http://10.30.15.51:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1090,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1226,'3-DB-GPRS','web-g.three.com.hk',0,NULL,NULL,2,'10.30.15.53:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1090,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1227,'SmarTone HK','SmarTone',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,288,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1228,'SmarTone HK','SmarTone',0,NULL,NULL,2,'10.9.9.9:8080','http://mms.smartone.com/server',300,NULL,NULL,NULL,NULL,NULL,NULL,288,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1229,'SmarTone HK','SmarTone',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,288,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1230,'SmarTone HK','SmarTone',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,287,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1231,'SmarTone HK','SmarTone',0,NULL,NULL,2,'10.9.9.9:8080','http://mms.smartone.com/server',300,NULL,NULL,NULL,NULL,NULL,NULL,287,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1232,'SmarTone HK','SmarTone',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,287,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1233,'SmarTone HK','SmarTone',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,286,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1234,'SmarTone HK','SmarTone',0,NULL,NULL,2,'10.9.9.9:8080','http://mms.smartone.com/server',300,NULL,NULL,NULL,NULL,NULL,NULL,286,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1235,'SmarTone HK','SmarTone',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,286,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1236,'SmarTone MAC','smartgprs',0,NULL,NULL,2,'10.9.9.29:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,603,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1237,'SmarTone MAC','smartgprs',0,NULL,NULL,2,'10.9.9.29:8080','http://mms.smartone.com.mo/dmog/mo',300,NULL,NULL,NULL,NULL,NULL,NULL,603,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1238,'CMHK MMS','cmhk',0,NULL,NULL,2,'172.31.31.36:8080','http://mms.hk.chinamobile.com/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,276,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1239,'CMHK DATA','cmhk',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,276,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1240,'CMHK MMS','cmhk',0,NULL,NULL,2,'172.31.31.36:8080','http://mms.hk.chinamobile.com/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,275,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1241,'CMHK DATA','cmhk',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,275,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1242,'PCCW_GPRS','pccwdata',0,NULL,NULL,2,'10.131.2.8:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,282,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1243,'PCCW_MMS','pccwmms',0,NULL,NULL,2,'10.131.2.8:8080','http://mmsc.mms.pccwmobile.com:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,282,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1244,'PCCW 3G','pccw',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,283,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1245,'PCCW 3G','pccw',0,NULL,NULL,2,'10.140.14.10:8080','http://3gmms.pccwmobile.com:8080/was',300,NULL,NULL,NULL,NULL,NULL,NULL,283,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1246,'CTMdata','ctm-mobile',0,NULL,NULL,2,'192.168.99.2:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,601,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1247,'CTM MMS','ctmmms',0,NULL,NULL,2,'192.168.99.3:8080','http://mms.wap.ctm.net:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,601,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1248,'CTM Prepaid_Data','ctmprepaid',0,NULL,NULL,2,'192.168.99.2:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,601,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1249,'CTM Prepaid_Data','ctmprepaid',0,NULL,NULL,2,'192.168.99.3:8080','http://mms.wap.ctm.net:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,601,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1250,'CTWAP','CTWAP',0,'ctwap@mycdma.cn','vnet.mobi',2,'10.0.0.200:80',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1091,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1251,'CTNET','CTNET',0,'ctnet@mycdma.cn','vnet.mobi',2,':',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1091,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1252,'CTWAP','CTWAP',0,'ctwap@mycdma.cn','vnet.mobi',2,'10.0.0.200:80',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1092,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1253,'CTNET','CTNET',0,'ctnet@mycdma.cn','vnet.mobi',2,':',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1092,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1254,'CTWAP','CTWAP',0,'ctwap@mycdma.cn','vnet.mobi',2,'10.0.0.200:80',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1093,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1255,'CTNET','CTNET',0,'ctnet@mycdma.cn','vnet.mobi',2,':',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1093,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1256,'CTM','ctm-mobile',0,NULL,NULL,2,'192.168.99.2:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,600,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1257,'CTM MMS','ctmmms',0,NULL,NULL,2,'192.168.99.3:8080','http://mms.wap.ctm.net:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,600,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1258,'3 Macau MMS','mms.hutchisonmacau.com',0,NULL,NULL,2,'10.30.15.53:8080','http://10.30.15.51:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,602,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1259,'3 Macau','web-g.three.com.hk',0,'hutchison','1234',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,602,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1260,'CMNET','cmnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,132,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1261,'CMWAP','cmwap',0,NULL,NULL,2,'10.0.0.172:80',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,132,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1262,'CMMMS','cmwap',0,NULL,NULL,2,'10.0.0.172:80','http://mmsc.monternet.com',300,NULL,NULL,NULL,NULL,NULL,NULL,132,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1263,'CMDM','cmdm',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,132,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1264,'沃宽带用户连接互联网','3gnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,133,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1265,'沃宽带用户手机上网','3gwap',0,NULL,NULL,2,'10.0.0.172:80',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,133,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1266,'联通彩信','3gwap',0,NULL,NULL,2,'10.0.0.172:80','http://mmsc.myuni.com.cn',300,NULL,NULL,NULL,NULL,NULL,NULL,133,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1267,'CMNET','cmnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1094,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1268,'CMWAP','cmwap',0,NULL,NULL,2,'10.0.0.172:80',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1094,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1269,'CMMMS','cmwap',0,NULL,NULL,2,'10.0.0.172:80','http://mmsc.monternet.com',300,NULL,NULL,NULL,NULL,NULL,NULL,1094,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1270,'CMDM','cmdm',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1094,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1271,'CTWAP','CTWAP',0,'ctwap@mycdma.cn','vnet.mobi',2,'10.0.0.200:80',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1095,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1272,'CTNET','CTNET',0,'ctnet@mycdma.cn','vnet.mobi',2,':',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1095,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1273,'CMNET','cmnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1096,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1274,'CMWAP','cmwap',0,NULL,NULL,2,'10.0.0.172:80',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1096,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1275,'CMMMS','cmwap',0,NULL,NULL,2,'10.0.0.172:80','http://mmsc.monternet.com',300,NULL,NULL,NULL,NULL,NULL,NULL,1096,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1276,'CMDM','cmdm',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1096,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1277,'CMNET','cmnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1097,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1278,'CMWAP','cmwap',0,NULL,NULL,2,'10.0.0.172:80',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1097,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1279,'CMMMS','cmwap',0,NULL,NULL,2,'10.0.0.172:80','http://mmsc.monternet.com',300,NULL,NULL,NULL,NULL,NULL,NULL,1097,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1280,'CMDM','cmdm',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1097,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1281,'沃宽带用户连接互联网','3gnet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1098,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1282,'沃宽带用户手机上网','3gwap',0,NULL,NULL,2,'10.0.0.172:80',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1098,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1283,'联通彩信','3gwap',0,NULL,NULL,2,'10.0.0.172:80','http://mmsc.myuni.com.cn',300,NULL,NULL,NULL,NULL,NULL,NULL,1098,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1284,'FET MMS','fetnet01',0,NULL,NULL,2,'210.241.199.199:9201','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,847,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1285,'FET Internet','internet',0,NULL,NULL,2,'210.241.199.199:9201',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,847,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1286,'KGT Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,848,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1287,'KGT GPRS','internet',0,NULL,NULL,2,'210.241.199.199:9201',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,848,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1288,'KGT MMS','kgtmms',0,NULL,NULL,2,'172.28.33.5:8080','http://mms.kgtmms.net.tw/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,848,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1289,'VIBO Internet','vibo',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,851,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1290,'VIBO GPRS','vibo',0,NULL,NULL,2,'172.24.128.36:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,851,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1291,'VIBO GPRS','vibo',0,NULL,NULL,2,'172.24.128.36:8080','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,851,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1292,'VIBOONE','viboone',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,851,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1293,'CHT Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,846,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1294,'CHT MMS','emome',0,NULL,NULL,2,'10.1.1.1:8080','http://mms.emome.net:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,846,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1295,'TWM Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,849,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1296,'TWM match','twm',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,849,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1297,'TWM MMS','mms',0,NULL,NULL,2,'10.1.1.2:80','http://mms.catch.net.tw',300,NULL,NULL,NULL,NULL,NULL,NULL,849,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1298,'TWM Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,850,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1299,'TWM match','twm',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,850,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1300,'TWM MMS','mms',0,NULL,NULL,2,'10.1.1.2:80','http://mms.catch.net.tw',300,NULL,NULL,NULL,NULL,NULL,NULL,850,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1301,'TWM Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1099,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1302,'TWM match','twm',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1099,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1303,'TWM MMS','mms',0,NULL,NULL,2,'10.1.1.2:80','http://mms.catch.net.tw',300,NULL,NULL,NULL,NULL,NULL,NULL,1099,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1304,'Maxis 3G Internet','unet',0,'maxis','wap',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,653,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1305,'Maxis 3G Internet','unet',0,'maxis','wap',2,'202.75.133.49:80','http://172.16.74.100:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,653,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1306,'Maxis Internet','net',0,'maxis','wap',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,653,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1307,'Maxis Internet','net',0,'maxis','wap',2,'202.75.133.49:80','http://172.16.74.100:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,653,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1308,'DiGi MMS','digimms',0,'mms','mms',2,'203.92.128.160:80','http://mms.digi.com.my/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,652,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1309,'DiGi Internet','diginet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,652,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1310,'U Mobile Internet','my3g',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,654,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1311,'U Mobile Internet','my3g',0,NULL,NULL,2,'10.30.5.11:8080','http://10.30.3.11/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,654,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1312,'Celcom 3G Internet','celcom3g',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,650,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1313,'Celcom 3G Internet','celcom3g',0,NULL,NULL,2,'10.128.1.242:8080','http://mms.celcom.net.my',300,NULL,NULL,NULL,NULL,NULL,NULL,650,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1314,'Celcom Internet','celcom.net.my',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,650,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1315,'Celcom MMS','mms.celcom.net.my',0,NULL,NULL,2,'10.128.1.242:8080','http://mms.celcom.net.my',300,NULL,NULL,NULL,NULL,NULL,NULL,650,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1316,'Telstra MMS','telstra.mms',0,NULL,NULL,2,'10.1.1.180:80','http://mmsc.telstra.com:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,35,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1317,'Telstra Internet','telstra.wap',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,35,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1318,'Optus Yes Internet','yesinternet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,34,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1319,'Optus Yes Internet','yesinternet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,34,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1320,'Optus Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,34,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1321,'Optus Business Mobile Broadband','yesbusiness',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,34,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1322,'Optus MMS','mms',0,NULL,NULL,2,'61.88.190.10:8070','http://mmsc.optus.com.au:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,34,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1323,'Vodafone AU','live.vodafone.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,37,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1324,'Vodafone AU','live.vodafone.com',0,NULL,NULL,2,'10.202.2.60:8080','http://pxt.vodafone.net.au/pxtsend',300,NULL,NULL,NULL,NULL,NULL,NULL,37,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1325,'Vodafone live!','live.vodafone.com',0,NULL,NULL,2,'10.202.2.60:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,36,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1326,'Vodafone live!','live.vodafone.com',0,NULL,NULL,2,'10.202.2.60:8080','http://pxt.vodafone.net.au/pxtsend',300,NULL,NULL,NULL,NULL,NULL,NULL,36,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1327,'VF AU PXT','live.vodafone.com',0,NULL,NULL,2,'10.202.2.60:8080','http://pxt.vodafone.net.au/pxtsend',300,NULL,NULL,NULL,NULL,NULL,NULL,1100,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1328,'VF Internet','vfinternet.au',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1100,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1329,'Telstra MMS','Telstra.mms',0,NULL,NULL,2,'10.1.1.180:80','http://mmsc.telstra.com:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,1101,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1330,'Telstra Internet','Telstra.wap',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1101,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1331,'3Internet','3netaccess',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1102,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1332,'3','3services',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1102,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1333,'3','3services',0,NULL,NULL,2,'10.176.57.25:8799','http://mmsc.three.net.au:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1102,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1334,'Telstra MMS','Telstra.mms',0,NULL,NULL,2,'10.1.1.180:80','http://mmsc.telstra.com:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,1103,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1335,'Telstra Internet','Telstra.wap',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1103,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1336,'Telstra MMS','Telstra.mms',0,NULL,NULL,2,'10.1.1.180:80','http://mmsc.telstra.com:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,1104,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1337,'Telstra Internet','Telstra.wap',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1104,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1338,'VF AU PXT','live.vodafone.com',0,NULL,NULL,2,'10.202.2.60:8080','http://pxt.vodafone.net.au/pxtsend',300,NULL,NULL,NULL,NULL,NULL,NULL,1105,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1339,'VF Internet','vfinternet.au',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1105,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1340,'VF Internet','vfinternet.au',0,NULL,NULL,2,'10.202.2.60:8080','http://pxt.vodafone.net.au/pxtsend',300,NULL,NULL,NULL,NULL,NULL,NULL,1105,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1341,'Optus Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1106,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1342,'Optus MMS','mms',0,NULL,NULL,2,'61.88.190.10:8070','http://mmsc.optus.com.au:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,1106,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1343,'ISAT BB INTERNET','indosat3g',0,'indosat','indosat',2,'10.19.19.19:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,303,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1344,'ISAT WAP','indosatgprs',0,'indosat','indosat',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,303,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1345,'ISAT MMS','indosatmms',0,'indosat','indosat',2,'10.19.19.19:8080','http://mmsc.indosat.com',300,NULL,NULL,NULL,NULL,NULL,NULL,303,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1346,'AXISinternet','AXIS',0,'AXIS','123456',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,305,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1347,'AXIS MMS','axismms',0,'axis','123456',2,'10.8.3.8:8080','http://mmsc.axis',300,NULL,NULL,NULL,NULL,NULL,NULL,305,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1348,'Telkomsel GPRS WEB','internet',0,'wap','wap123',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,304,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1349,'TSEL MMS','mms',0,'wap','wap123',2,'10.1.89.150:8000','http://mms.telkomsel.com',300,NULL,NULL,NULL,NULL,NULL,NULL,304,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1350,'XL GPRS','www.xlgprs.net',0,'xlgprs','proxl',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,300,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1351,'XL GPRS','www.xlgprs.net',0,'xlgprs','proxl',2,'202.152.240.50:8080','http://mmc.xl.net.id/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,300,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1352,'XL Unlimited','xlunlimited',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,300,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1353,'ISAT M3 INTERNET','indosatgprs',0,'indosat','indosat',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,302,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1354,'ISAT BB MMS','indosatmms',0,'indosat','indosat',2,'10.19.19.19:8080','http://mmsc.indosat.com',300,NULL,NULL,NULL,NULL,NULL,NULL,303,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1355,'3 GPRS','3gprs',0,'3gprs','3gprs',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,301,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1356,'3 MMS','3mms',0,'3mms','3mms',2,'10.4.0.10:3128','http://mms.three.co.id',300,NULL,NULL,NULL,NULL,NULL,NULL,301,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1357,'myGlobe Internet Postpaid','internet.globe.com.ph',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,699,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1358,'myGlobe Internet Prepaid','http.globe.com.ph',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,699,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1359,'myGlobe MMS','mms.globe.com.ph',0,NULL,NULL,2,'203.177.42.214:8080','http://192.40.100.22:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,699,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1360,'Smart Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,700,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1361,'SmartMMS','mms',0,NULL,NULL,2,'10.102.61.46:8080','http://10.102.61.238:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,700,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1362,'SUN INTERNET','minternet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,698,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1363,'SUN MMS','mms',0,NULL,NULL,2,'202.138.159.78:8080','http://mmscenter.suncellular.com.ph',300,NULL,NULL,NULL,NULL,NULL,NULL,698,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1364,'RED INTERNET','redinternet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1107,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1365,'RED MMS','redmms',0,NULL,NULL,2,'10.138.3.35:8080','http://10.102.61.193:8002/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,1107,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1366,'AIS Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,819,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1367,'AIS MMS','multimedia',0,NULL,NULL,2,'203.170.229.34:8080','http://mms.mobilelife.co.th',300,NULL,NULL,NULL,NULL,NULL,NULL,819,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1368,'DTAC MMS','mms',0,NULL,NULL,2,'203.155.200.133:8080','http://mms.dtac.co.th:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,826,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1369,'DTAC Internet','www.dtac.co.th',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,826,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1370,'True GPRS Inet','internet',0,'true','true',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,827,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1371,'True GPRS MMS','mms',0,'true','true',2,'10.4.7.39:8080','http://mms.trueworld.net:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,827,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1372,'IDEAS E-mail','e-ideas',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,761,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1373,'IDEAS E-mail','e-ideas',0,NULL,NULL,2,'165.21.42.84:8080','http://mms.singtel.com:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,761,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1374,'SingTel Ims','ims',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,761,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1375,'IDEAS E-mail','e-ideas',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,762,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1376,'IDEAS E-mail','e-ideas',0,NULL,NULL,2,'165.21.42.84:8080','http://mms.singtel.com:10021/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,762,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1377,'SingTel Ims','ims',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,762,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1378,'M1 MMS','miworld',0,'65','user123',2,'172.16.14.10:8080','http://mmsgw:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,760,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1379,'M1 E-mail','sunsurf',0,'65',NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,760,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1380,'Gee!3G/GPRS','shwap',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,764,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1381,'Gee!MMS','shmms',0,NULL,NULL,2,'10.12.1.80:80','http://mms.starhubgee.com.sg:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,764,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1382,'VFNZ PXT','live.vodafone.com',0,NULL,NULL,2,'172.30.38.3:8080','http://pxt.vodafone.net.nz/pxtsend',300,NULL,NULL,NULL,NULL,NULL,NULL,681,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1383,'VFNZ Internet','www.vodafone.net.nz',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,681,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1384,'TelecomDefault','wap.telecom.co.nz',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,679,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1385,'TelecomDefault','wap.telecom.co.nz',0,NULL,NULL,2,'210.55.11.73:8080','http://lsmmsc.xtra.co.nz',300,NULL,NULL,NULL,NULL,NULL,NULL,679,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1386,'2degrees Internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,680,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1387,'2degrees MMS','mms',0,NULL,NULL,2,'118.148.1.118:8080','http://mms.2degreesmobile.net.nz:48090',300,NULL,NULL,NULL,NULL,NULL,NULL,680,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1388,'Mobinil Web','MobinilWeb',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,191,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1389,'Mobinil MMS','mobinilmms',0,NULL,NULL,2,'62.241.155.45:8080','http://10.7.13.24:8002/',300,NULL,NULL,NULL,NULL,NULL,NULL,191,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1390,'VF internet','internet.vodafone.net',0,'internet','internet',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,193,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1391,'VF MMS','mms.vodafone.com.eg',0,'mms','mms',2,'163.121.178.2:8080','http://mms.vodafone.com.eg/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,193,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1392,'Etisalat internet','Etisalat',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,192,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1393,'Etisalat internet','Etisalat',0,NULL,NULL,2,'10.71.130.29:8080','http://10.71.131.7:38090',300,NULL,NULL,NULL,NULL,NULL,NULL,192,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1394,'weborange','weborange',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,839,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1395,'Orange MMS','mms.otun',0,NULL,NULL,2,'10.12.1.52:8080','http://mms.orange.tn',300,NULL,NULL,NULL,NULL,NULL,NULL,839,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1396,'mobinet','gprs.tn',0,'gprs','gprs',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,841,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1397,'MMS','mms.tn',0,'mms@tt1','mms',2,'192.168.0.2:8080','http://',300,NULL,NULL,NULL,NULL,NULL,NULL,841,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1398,'internet Tunisiana','internet.tunisiana.com',0,'internet','internet',2,'10.3.2.99:80',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,840,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1399,'MMS Tunisiana','mms.tunisiana.com',0,'mms','mms',2,'10.3.2.100:80','http://mmsc.tunisiana.com',300,NULL,NULL,NULL,NULL,NULL,NULL,840,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1400,'Zain Mobile Internet','internet.ng.Zain.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,663,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1401,'Zain MMS','mms.ng.zain.com',0,'mms','mms',2,'172.18.254.5:8080','http://172.23.1.12/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,663,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1402,'MTN GPRS','web.gprs.mtnnigeria.net',0,'web','web',2,'10.199.212.2:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,666,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1403,'MTN GPRS','web.gprs.mtnnigeria.net',0,'web','web',2,'10.199.212.2:8080','http://10.199.212.8/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,666,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1404,'glo direct','glosecure',0,'gprs','gprs',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,665,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1405,'glo mms','glomms',0,'mms','mms',2,'10.100.82.4:9201','http://mms.gloworld.com/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,665,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1406,'Etisalat Internet','etisalat',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,664,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1407,'Etisalat Internet','etisalat',0,NULL,NULL,2,'10.71.170.5:8080','http://10.71.170.30:38090/was',300,NULL,NULL,NULL,NULL,NULL,NULL,664,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1408,'SafaricomBrowse','Safaricom',0,'saf','data',2,'172.22.2.38:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,551,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1409,'SafaricomMMS','Safaricom',0,'saf','data',2,NULL,'http://mms.gprs.safaricom.com',300,NULL,NULL,NULL,NULL,NULL,NULL,551,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1410,'Zain WAP','wap.ke.celtel.com',0,'wap','wap',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,550,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1411,'Zain MMS','mms.ke.celtel.com',0,'wap','wap',2,NULL,'http://mms.ke.celtel.com/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,550,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1412,'Orange Internet','wap.orange.co.ke',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,552,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1413,'Orange MMS','mms.orange.co.ke',0,NULL,NULL,2,NULL,'http://10.36.16.5/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,552,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1414,'Vodacom WAP','Wap',0,NULL,NULL,2,'10.154.0.8:9401',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,854,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1415,'Vodacom MMS','mms',0,NULL,NULL,2,NULL,'http://10.154.0.12/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,854,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1416,'Orange World re','orangerun',0,'orange','orange',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,724,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1417,'Orange MMS Runion','orangerun.acte',0,'orange','orange',2,'192.168.10.200:8080','http://mms.orange.re',300,NULL,NULL,NULL,NULL,NULL,NULL,724,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1418,'MMS','mmssfr',0,'mms','mms',2,'10.0.224.145:8080','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,725,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1419,'GPRS SRR','wapsfr',0,'wap','wap',2,'10.0.224.161:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,725,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1420,'VCL Internet GPRS','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1108,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1421,'VCL MMS GPRS','mms',0,NULL,NULL,2,'10.113.63.11:8080','http://mmsc.vodacom4me.co.ls',300,NULL,NULL,NULL,NULL,NULL,NULL,1108,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1422,'Vodacom','internet',0,NULL,NULL,2,'196.6.128.12:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,967,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1423,'MMS.Vodacom','mms.vodacom.net',0,NULL,NULL,2,'196.6.128.13:8080','http://mmsc.vodacom4me.co.za/',300,NULL,NULL,NULL,NULL,NULL,NULL,967,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1424,'8.ta internet','internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,966,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1425,'8.ta mms','mms',0,NULL,NULL,2,'41.151.254.162:8080','http://mms.8ta.com:38090/was',300,NULL,NULL,NULL,NULL,NULL,NULL,966,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1426,'Smartdata','internet',0,NULL,NULL,2,'196.31.116.250:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,964,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1427,'Cell C MMS','mms',0,NULL,NULL,2,'196.31.116.250:8080','http://mms.cmobile.co.za',300,NULL,NULL,NULL,NULL,NULL,NULL,964,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1428,'virgin_internet','vdata',0,NULL,NULL,2,'196.31.116.241:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,964,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1429,'virgin_mms','vmms',0,NULL,NULL,2,'196.31.116.242:8080','http://mms.virginmobile.co.za',300,NULL,NULL,NULL,NULL,NULL,NULL,964,2,0,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1430,'MTN MMS','myMTN',0,'mtnmms','mtnmms',2,'196.11.240.241:8080','http://mms.mtn.co.za/mms/wapenc',300,NULL,NULL,NULL,NULL,NULL,NULL,965,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1431,'MTN Data','myMTN',0,'mtn',NULL,2,'196.11.240.251:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,965,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1432,'INTERNET CLARO','internet.ideasclaro',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,269,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1433,'MMS CLARO','mms.ideasclaro',0,NULL,NULL,2,'216.230.133.66:8080','http://mms.ideasclaro.com:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,269,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1434,'BROADBAND TIGO','broadband.tigo.gt',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,268,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1435,'MMS TIGO','mms.tigo.gt',0,NULL,NULL,2,'10.16.17.12:8888','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,268,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1436,'Movistar INTERNET','internet.movistar.gt',0,'movistargt','movistargt',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,270,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1437,'Movistar MMS','mms.movistar.gt',0,'movistargt','movistargt',2,'10.12.22.1:80','http://mms.movistar.gt',300,NULL,NULL,NULL,NULL,NULL,NULL,270,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1438,'Movistar INTERNET','internet.movistar.gt',0,'movistargt','movistargt',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1109,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1439,'Movistar MMS','mms.movistar.gt',0,'movistargt','movistargt',2,'10.12.22.1:80','http://mms.movistar.gt',300,NULL,NULL,NULL,NULL,NULL,NULL,1109,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1440,'INTERNET CLARO','internet.ideasclaro',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,769,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1441,'MMS CLARO','mms.ideasclaro',0,NULL,NULL,2,'216.230.133.66:8080','http://mms.ideasclaro.com:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,769,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1442,'Web Digicel','web.digicelsv.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,770,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1443,'MMS Digicel','wap.digicelsv.com',0,NULL,NULL,2,'172.26.5.12:8080','http://172.26.5.132/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,770,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1444,'INTERNET TIGO','internet.tigo.sv',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,772,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1445,'MMS TIGO','mms.tigo.sv',0,NULL,NULL,2,'10.16.17.12:8888','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,772,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1446,'Movistar INTERNET','internet.movistar.sv',0,'movistarsv','movistarsv',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,771,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1447,'Movistar MMS','mms.movistar.sv',0,'movistarsv','movistarsv',2,'10.12.20.1:80','http://mms.movistar.sv',300,NULL,NULL,NULL,NULL,NULL,NULL,771,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1448,'Movistar INTERNET','internet.movistar.sv',0,'movistarsv','movistarsv',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1110,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1449,'Movistar MMS','mms.movistar.sv',0,'movistarsv','movistarsv',2,'10.12.20.1:80','http://mms.movistar.sv',300,NULL,NULL,NULL,NULL,NULL,NULL,1110,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1450,'Internet Claro','internet.ideasclaro',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,290,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1451,'MMS Claro','mms.ideasclaro',0,NULL,NULL,2,'10.6.32.2:8080','http://10.6.32.27/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,290,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1452,'INTERNET TIGO','internet.tigo.hn',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,291,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1453,'MMS TIGO','mms.tigo.hn',0,NULL,NULL,2,'10.16.17.12:8888','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,291,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1454,'INTERNET TIGO','internet.tigo.hn',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1111,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1455,'MMS TIGO','mms.tigo.hn',0,NULL,NULL,2,'10.16.17.12:8888','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1111,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1456,'INTERNET','web.emovil',0,'webemovil','webemovil',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,667,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1457,'MMS','mms.emovil',0,'mmsemovil','mmsemovil',2,'10.6.32.2:8080','http://10.6.32.27/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,667,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1458,'Movistar INTERNET','internet.movistar.ni',0,'movistarni','movistarni',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,669,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1459,'Movistar MMS','mms.movistar.ni',0,'movistarni','movistarni',2,'10.12.23.1:80','http://mms.movistar.ni',300,NULL,NULL,NULL,NULL,NULL,NULL,669,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1460,'INTERNET','web.emovil',0,'webemovil','webemovil',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1112,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1461,'MMS','mms.emovil',0,'mmsemovil','mmsemovil',2,'10.6.32.2:8080','http://10.6.32.27/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1112,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1462,'Kolbi','kolbi3g',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,160,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1463,'Kolbi','kolbi3g',0,NULL,NULL,2,'10.184.202.24:8080','http://mmsice',300,NULL,NULL,NULL,NULL,NULL,NULL,160,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1464,'Kolbi','kolbi3g',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,159,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1465,'Kolbi','kolbi3g',0,NULL,NULL,2,'10.184.202.24:8080','http://mmsice',300,NULL,NULL,NULL,NULL,NULL,NULL,159,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1466,'INTERNET CLARO','internet.ideasclaro',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,158,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1467,'MMS CLARO','mms.ideasclaro',0,NULL,NULL,2,'216.230.133.66:8080','http://mms.ideasclaro.com:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,158,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1468,'Movistar INTERNET','internet.movistar.cr',0,'movistarcr','movistarcr',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,161,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1469,'Movistar MMS','mms.movistar.cr',0,'movistarcr','movistarcr',2,'10.221.79.83:80','http://mms.movistar.cr',300,NULL,NULL,NULL,NULL,NULL,NULL,161,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1470,'Wap','apn01.cwpanama.com.pa',0,NULL,NULL,2,'172.25.3.5:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,689,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1471,'Mms','apn02.cwpanama.com.pa',0,NULL,NULL,2,'172.25.3.5:8080','http://mms.zonamovil.com.pa',300,NULL,NULL,NULL,NULL,NULL,NULL,689,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1472,'Movistar INTERNET','internet.movistar.pa',0,'movistarpa','movistarpa',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,692,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1473,'Movistar MMS','mms.movistar.pa',0,'movistarpamms','movistarpa',2,'10.12.21.1:80','http://mms.movistar.pa',300,NULL,NULL,NULL,NULL,NULL,NULL,692,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1474,'WEB Claro','web.claro.com.pa',0,'CLAROWEB','CLAROWEB',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,690,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1475,'MMS Claro','mms.claro.com.pa',0,'CLAROMMS','CLAROMMS',2,'10.240.3.129:8799','http://www.claro.com.pa/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,690,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1476,'Web Digicel','web.digicelpanama.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,691,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1477,'MMS Digicel','wap.digicelpanama.com',0,NULL,NULL,2,'172.27.99.99:8080','http://mmc.digicelpanama.com/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,691,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1478,'Movistar INTERNET','movistar.pe',0,'movistar@datos','movistar',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,695,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1479,'Movistar MMS','mms.movistar.pe',0,'movistar@mms','movistar',2,'200.4.196.118:8080','http://mmsc.telefonicamovistar.com.pe:8088/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,695,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1480,'CLARO DATOS','claro.pe',0,'claro','claro',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,693,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1481,'CLARO MMS','mms.claro.pe',0,'claro','claro',2,'192.168.231.30:80','http://claro/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,693,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1482,'Nextel WAP','wap.nextel.com.pe',0,NULL,NULL,2,'129.192.129.104:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,694,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1483,'Nextel MMS','mms.nextel.com.pe',0,NULL,NULL,2,'129.192.129.104:8080','http://mms.nextel.pe',300,NULL,NULL,NULL,NULL,NULL,NULL,694,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1484,'Internet Nextel','modem.nextel.com.pe',0,NULL,NULL,2,':',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,694,5,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1485,'Movistar WAP','wap.gprs.unifon.com.ar',0,'wap','wap',2,'200.5.68.10:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,26,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1486,'Movistar MMS','mms.gprs.unifon.com.ar',0,'mms','mms',2,'200.68.32.239:8080','http://mms.movistar.com.ar',300,NULL,NULL,NULL,NULL,NULL,NULL,26,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1487,'Claro AR','igprs.claro.com.ar',0,'ctigprs','ctigprs999',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1113,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1488,'MMS GPRS AR','mms.ctimovil.com.ar',0,'ctimms','ctimms999',2,'170.51.255.240:8080','http://mms.ctimovil.com.ar',300,NULL,NULL,NULL,NULL,NULL,NULL,1113,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1489,'Claro AR','igprs.claro.com.ar',0,'ctigprs','ctigprs999',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,23,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1490,'MMS GPRS AR','mms.ctimovil.com.ar',0,'ctimms','ctimms999',2,'170.51.255.240:8080','http://mms.ctimovil.com.ar',300,NULL,NULL,NULL,NULL,NULL,NULL,23,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1491,'Personal Datos','datos.personal.com',0,'datos','datos',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1114,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1492,'Personal MMS','mms',0,'mms','mms',2,'172.25.7.31:8080','http://mms.personal.com',300,NULL,NULL,NULL,NULL,NULL,NULL,1114,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1493,'Personal Datos','datos.personal.com',0,'datos','datos',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,24,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1494,'Personal MMS','mms',0,'mms','mms',2,'172.25.7.31:8080','http://mms.personal.com',300,NULL,NULL,NULL,NULL,NULL,NULL,24,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1495,'TIM Connect','timbrasil.br',0,'tim','tim',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,87,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1496,'TIM Connect','timbrasil.br',0,'tim','tim',2,'200.179.66.242:8080','http://mms.tim.br',300,NULL,NULL,NULL,NULL,NULL,NULL,87,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1497,'TIM Connect','timbrasil.br',0,'tim','tim',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,88,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1498,'TIM Connect','timbrasil.br',0,'tim','tim',2,'200.179.66.242:8080','http://mms.tim.br',300,NULL,NULL,NULL,NULL,NULL,NULL,88,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1499,'TIM Connect','timbrasil.br',0,'tim','tim',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,89,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1500,'TIM Connect','timbrasil.br',0,'tim','tim',2,'200.179.66.242:8080','http://mms.tim.br',300,NULL,NULL,NULL,NULL,NULL,NULL,89,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1501,'Java Session','java.claro.com.br',0,'claro','claro',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,85,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1502,'Claro Foto','mms.claro.com.br',0,'claro','claro',2,'200.169.126.10:8799','http://mms.claro.com.br',300,NULL,NULL,NULL,NULL,NULL,NULL,85,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1503,'Vivo MMS','mms.vivo.com.br',0,'vivo','vivo',2,'200.142.130.104:80','http://termnat.vivomms.com.br:8088/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,94,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1504,'Vivo Internet','zap.vivo.com.br',0,'vivo','vivo',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,94,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1505,'SCTL MMS','mms.sercomtel.com.br',0,'sercomtel','sercomtel',2,'200.169.126.10:8799','http://mms.claro.com.br',300,NULL,NULL,NULL,NULL,NULL,NULL,1115,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1506,'SCTL GPRS','sercomtel.com.br',0,'sercomtel','sercomtel',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1115,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1507,'Vivo Internet','zap.vivo.com.br',0,'vivo','vivo',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,93,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1508,'Vivo MMS','mms.vivo.com.br',0,'vivo','vivo',2,'200.142.130.104:80','http://termnat.vivomms.com.br:8088/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,93,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1509,'Vivo MMS','mms.vivo.com.br',0,'vivo','vivo',2,'200.142.130.104:80','http://termnat.vivomms.com.br:8088/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,92,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1510,'Vivo Internet','zap.vivo.com.br',0,'vivo','vivo',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,92,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1511,'OI GPRS','gprs.oi.com.br',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,81,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1512,'OI MMS','mmsgprs.oi.com.br',0,'oimms','oimms',2,'192.168.10.50:3128','http://200.222.42.204:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,81,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1513,'TelemigC GPRS','gprs.telemigcelular.com.br',0,'celular','celular',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1116,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1514,'MMS Telemig','mmsgprs.telemigcelular.com.br',0,'celular','celular',2,'200.192.230.142:8080','http://mms.telemigcelular.com.br',300,NULL,NULL,NULL,NULL,NULL,NULL,1116,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1515,'Vivo Internet','zap.vivo.com.br',0,'vivo','vivo',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,95,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1516,'Vivo MMS','mms.vivo.com.br',0,'vivo','vivo',2,'200.142.130.104:80','http://termnat.vivomms.com.br:8088/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,95,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1517,'OI GPRS','gprs.oi.com.br',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,91,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1518,'OI MMS','mmsgprs.oi.com.br',0,'oimms','oimms',2,'192.168.10.50:3128','http://200.222.42.204:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,91,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1519,'OI GPRS','gprs.oi.com.br',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,90,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1520,'OI MMS','mmsgprs.oi.com.br',0,'oimms','oimms',2,'192.168.10.50:3128','http://200.222.42.204:8002',300,NULL,NULL,NULL,NULL,NULL,NULL,90,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1521,'Internet Movil','bam.entelpcs.cl',0,'entelpcs','entelpcs',2,'10.99.0.10:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,127,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1522,'MMS Entel','mms.entelpcs.cl',0,'entelpcs','entelpcs',2,'10.99.0.10:8080','http://mmsc.entelpcs.cl',300,NULL,NULL,NULL,NULL,NULL,NULL,127,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1523,'Internet Movil','bam.entelpcs.cl',0,'entelpcs','entelpcs',2,'10.99.0.10:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,126,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1524,'MMS Entel','mms.entelpcs.cl',0,'entelpcs','entelpcs',2,'10.99.0.10:8080','http://mmsc.entelpcs.cl',300,NULL,NULL,NULL,NULL,NULL,NULL,126,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1525,'Movistar APLICACIONES','wap.tmovil.cl',0,'wap','wap',2,':',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,130,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1526,'Movistar MMS','mms.tmovil.cl',0,'mms','mms',2,'172.17.8.10:8080','http://mms.movistar.cl',300,NULL,NULL,NULL,NULL,NULL,NULL,130,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1527,'BAM Claro','bam.clarochile.cl',0,'clarochile','clarochile',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,125,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1528,'MMS Claro','mms.clarochile.cl',0,'clarochile','clarochile',2,'172.23.200.200:8080','http://mms.clarochile.cl',300,NULL,NULL,NULL,NULL,NULL,NULL,125,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1529,'web','web.gtdmovil.cl',0,'webgtd','webgtd',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,129,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1530,'Internet Movil','imovil.virginmobile.cl',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,129,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1531,'MMS','mmsc.virginmobile.cl',0,NULL,NULL,2,':','http://mms.virginmobile.cl:1981/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,129,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1532,'Gtel','gtel.netline.net',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,129,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1533,'Internet','movil.vtr.com',0,'vtrmovil','vtrmovil',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,131,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1534,'Bam','bam.vtr.com',0,'vtr','vtr',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,131,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1535,'MMS','mms.vtr.com',0,'mms',NULL,2,'192.168.94.210:9028','http://192.168.94.162:19090/was',300,NULL,NULL,NULL,NULL,NULL,NULL,131,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1536,'WEB Comcel 3GSM','internet.comcel.com.co',0,'COMCELWEB','COMCELWEB',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,153,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1537,'MMS Comcel 3GSM','mms.comcel.com.co',0,'COMCELMMS','COMCELMMS',2,'198.228.90.225:8799','http://www.comcel.com.co/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,153,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1538,'TIGO WEB','web.colombiamovil.com.co',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,152,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1539,'TIGO Multimedia','mms.colombiamovil.com.co',0,'mms-cm1900','mms-cm1900',2,'190.102.206.48:8080','http://mms.ola.com.co',300,NULL,NULL,NULL,NULL,NULL,NULL,152,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1540,'TIGO WEB','web.colombiamovil.com.co',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,151,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1541,'TIGO Multimedia','mms.colombiamovil.com.co',0,'mms-cm1900','mms-cm1900',2,'190.102.206.48:8080','http://mms.ola.com.co',300,NULL,NULL,NULL,NULL,NULL,NULL,151,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1542,'Movistar INTERNET','internet.movistar.com.co',0,'movistar','movistar',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,154,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1543,'Movistar MMS','mms.movistar.com.co',0,'movistar','movistar',2,'192.168.222.7:9001','http://mms.movistar.com.co',300,NULL,NULL,NULL,NULL,NULL,NULL,154,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1544,'Digitel GSM','gprsweb.digitel.ve',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1117,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1545,'MMS','expresate.digitel.ve',0,NULL,NULL,2,'10.99.0.10:8080','http://mms.412.com.ve/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1117,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1546,'Digitel GSM','gprsweb.digitel.ve',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,948,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1547,'MMS','expresate.digitel.ve',0,NULL,NULL,2,'10.99.0.10:8080','http://mms.412.com.ve/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,948,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1548,'Digitel GSM','gprsweb.digitel.ve',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1118,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1549,'MMS','expresate.digitel.ve',0,NULL,NULL,2,'10.99.0.10:8080','http://mms.412.com.ve/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1118,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1550,'Movistar INTERNET','internet.movistar.ve',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,949,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1551,'Movistar MMS','mms.movistar.ve',0,NULL,NULL,2,'200.35.64.73:9001','http://mms.movistar.com.ve:8088/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,949,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1552,'Movistar WAP','wap.movistar.ve',0,NULL,NULL,2,'200.35.64.73:9001',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,949,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1553,'MODEM','int.movilnet.com.ve',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,950,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1554,'MMS','mm.movilnet.com.ve',0,NULL,NULL,2,'192.168.16.12:8080','http://mms2.movilnet.com.ve/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,950,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1555,'VIVAINTERNET','internet.nuevatel.com',0,NULL,NULL,2,':',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,79,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1556,'VIVA3G','3g.nuevatel.com',0,NULL,NULL,2,':',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,79,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1557,'VIVAMMS','mms.nuevatel.com',0,NULL,NULL,2,'192.168.101.004:3128','http://mmsgw.nuevatel.com:1981',300,NULL,NULL,NULL,NULL,NULL,NULL,79,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1558,'ENTEL4G','4g.entel',0,NULL,NULL,2,':',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,78,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1559,'ENTELWAP','wap.movil.com.bo',0,NULL,NULL,2,'172.27.7.10:8080',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,78,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1560,'ENTEL2G','int.movil.com.bo',0,NULL,NULL,2,':',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,78,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1561,'ENTEL MMS','mms.movil.com.bo',0,NULL,NULL,2,'172.27.7.10:8080','http://mms.movil.com.bo/servlets/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,78,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1562,'INTERNETTIGO','internet.tigo.bo',0,NULL,NULL,2,':',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,80,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1563,'WAPTIGO','wap.tigo.bo',0,NULL,NULL,2,'172.25.100.8:8888',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,80,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1564,'VIDEOTIGO','video.tigo.bo',0,NULL,NULL,2,':',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,80,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1565,'MMSTIGO','mms.tigo.bo',0,NULL,NULL,2,'172.25.100.8:8888','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,80,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1566,'Movistar INTERNET','internet.movistar.com.ec',0,'movistar','movistar',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,190,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1567,'Movistar MMS','mms.movistar.com.ec',0,'movistar','movistar',2,'10.3.5.50:9001','http://mms.movistar.com.ec:8088/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,190,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1568,'Claro Internet','internet.claro.com.ec',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,188,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1569,'MMS Claro','mms.claro.com.ec',0,'portamms','portamms2003',2,'216.250.208.94:8799','http://iesmms.porta.com.ec',300,NULL,NULL,NULL,NULL,NULL,NULL,188,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1570,'Claro Internet','internet.claro.com.ec',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1119,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1571,'MMS Claro','mms.claro.com.ec',0,'portamms','portamms2003',2,'216.250.208.94:8799','http://iesmms.porta.com.ec',300,NULL,NULL,NULL,NULL,NULL,NULL,1119,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1572,'CNT Internet','internet3gsp.alegro.net.ec',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,189,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1573,'CNT MMS','mms.alegro.net.ec',0,NULL,NULL,2,'10.4.85.3:8080','http://mms.alegro.net.ec/mms/',300,NULL,NULL,NULL,NULL,NULL,NULL,189,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1574,'VOX INTERNET','vox.internet',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,715,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1575,'VOX MMS','vox.mms',0,'vox','vox',2,'172.24.97.29:8080','http://mms.vox.com.py/mmsc',300,NULL,NULL,NULL,NULL,NULL,NULL,715,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1576,'Claro PY','igprs.claro.com.py',0,'ctigprs','ctigprs999',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,714,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1577,'MMS GPRS PY','mms.ctimovil.com.py',0,'ctimms','ctimms999',2,'170.51.255.240:8080','http://mms.ctimovil.com.py',300,NULL,NULL,NULL,NULL,NULL,NULL,714,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1578,'TIGO PY','internet.tigo.py',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,717,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1579,'MMS Tigo','mms.tigo.py',0,'tigo','tigo',2,'10.16.17.12:8888','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,717,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1580,'Personal Datos Py','internet',0,'personal','personal',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,716,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1581,'Personal MMS Py','mms',0,'mms','mms',2,'172.16.192.7:8080','http://mms',300,NULL,NULL,NULL,NULL,NULL,NULL,716,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1582,'wapANCEL','wap',0,NULL,NULL,2,'200.40.246.2:3128',NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,868,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1583,'mmsANCEL','mms',0,NULL,NULL,2,'200.40.246.2:3128','http://mmsc.mms.ancelutil.com.uy',300,NULL,NULL,NULL,NULL,NULL,NULL,868,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1584,'gprsANCEL','gprs.ancel',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,868,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1585,'prepagoANCEL','prepago.ancel',0,'BAM','BAM',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,868,1,0,1,0,0,1);
+INSERT INTO "pdp_profile" VALUES(1586,'Movistar INTERNET','webapn.movistar.com.uy',0,'movistar','movistar',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,869,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1587,'Movistar MMS','apnmms.movistar.com.uy',0,'mmsuy','mmsuy',2,'10.0.2.29:8080','http://mmsc.movistar.com.uy',300,NULL,NULL,NULL,NULL,NULL,NULL,869,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1588,'Claro UY','igprs.claro.com.uy',0,'ctigprs','ctigprs999',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,867,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1589,'MMS GPRS UY','mms.ctimovil.com.uy',0,'ctimms','ctimms999',2,'170.51.255.240:8080','http://mms.ctimovil.com.uy',300,NULL,NULL,NULL,NULL,NULL,NULL,867,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1590,'Sprint','Sprint',0,'Sprint','*',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,913,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1591,'Boost_Mobile','Boost_Mobile',0,'Boost_Mobile','*',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1120,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1592,'Virgin Mobile','Virgin Mobile',0,'Virgin Mobile','*',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1121,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1593,'GCF Lab.1','test',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,2,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1594,'GCF Lab.1','test',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,2,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1595,'GCF Lab.2','test',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,3,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1596,'GCF Lab.2','test',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,3,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1597,'TestBed 2','annam.dyn',0,'mms','mms',2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1122,1,0,1,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1598,'TestBed 2','annam.dyn',0,'mms','mms',2,'10.200.60.15:3128','http://10.200.60.21:8088/mms',300,NULL,NULL,NULL,NULL,NULL,NULL,1122,2,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1599,'TestBed 2 IMS','ims',0,NULL,NULL,5,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,1122,0,0,1,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1600,'Default','cdma.only',1,NULL,NULL,1,NULL,NULL,300,0,0,NULL,0,NULL,NULL,0,1,1,0,1,0,1);
+INSERT INTO "pdp_profile" VALUES(1601,'Default MMS','cdma.only',1,NULL,NULL,1,NULL,NULL,300,0,0,NULL,0,NULL,NULL,0,2,1,0,1,0,0);
+INSERT INTO "pdp_profile" VALUES(1602,'SK Telecom Emergency',NULL,0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,568,6,1,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1603,'KT IMS','ims.ktfwing.com',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,566,0,1,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1604,'KT Emergency',NULL,0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,566,6,1,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1605,'LG U+ Emergency',NULL,0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,567,6,1,1,0,0,0);
+INSERT INTO "pdp_profile" VALUES(1606,'LG U+ IMS','IMS',0,NULL,NULL,2,NULL,NULL,300,NULL,NULL,NULL,NULL,NULL,NULL,567,0,1,1,0,0,0);
old mode 100644 (file)
new mode 100755 (executable)
index cf76a74..7ae1d45
@@ -1,7 +1,10 @@
 /*
- * tel-plugin-packetservice
+ * PacketService Control Module
  *
- * Copyright (c) 2013 Samsung Electronics Co. Ltd. All rights reserved.
+ * Copyright (c) 2012 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Contact: DongHoo Park <donghoo.park@samsung.com>
+ *             Arun Shukla <arun.shukla@samsung.com>
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
+ *
  */
 
 
 #include "ps.h"
 #include "generated-code.h"
+
 #include <tcore.h>
 #include <plugin.h>
 #include <server.h>
 #include <co_ps.h>
 #include <co_context.h>
 
+#include <netinet/in.h>
+#include <arpa/inet.h>
+
 #include <iniparser.h>
-#include <tzplatform_config.h>
+
+#include <libxml/xmlmemory.h>
+#include <libxml/parser.h>
+#include <libxml/tree.h>
 
 #define PROP_DEFAULT           FALSE
 #define PROP_DEFAULT_STR       NULL
-#define BOOL2STRING(a)         ((a == TRUE) ? ("TRUE"):("FALSE"))
-#define DELAY_TO_SIGNAL_EMIT   1
-
-static TcoreStorage *strg_db;
-static gpointer handle;
-static GHashTable *contexts;
-
-static void __ps_context_emit_property_changed_signal(PsContext *context);
-static void _ps_context_setup_interface(PacketServiceContext *context, PsContext *context_data);
-
+#define BOOL2STRING(a)         ((a==TRUE) ? ("TRUE"):("FALSE"))
+#define DATABASE_PATH_0                "/opt/dbspace/.dnet.db"
+#define DATABASE_PATH_1                "/opt/dbspace/.dnet2.db"
+#define DELAY_TO_SIGNAL_EMIT 1
+
+#define FREE_AND_ASSIGN(ptr, value)    do{ \
+                                               if (ptr) \
+                                                       g_free(ptr);\
+                                               ptr = g_strdup(value); \
+                                       }while (0)
+static Storage *strg_db;
+
+static void     __ps_context_emit_property_changed_signal(ps_context_t *context);
+static void    _ps_context_setup_interface(PacketServiceContext *context, ps_context_t *context_data);
+
+//static void     __remove_context(gpointer data);
 static gboolean __remove_contexts(gpointer key, gpointer value, gpointer user_data);
 static gboolean __ps_context_remove_context(gpointer context);
 static gboolean __ps_context_create_storage_handle(gpointer plugin);
-static gboolean __ps_context_create_context_hash(void);
-static gchar *__ps_context_create_path(char *profile_name, gint profile_id, gint svc_ctg_id);
-static gboolean __ps_context_create_co_context(gpointer context, GHashTable *property);
-static gboolean __ps_context_update_profile(PsContext *context, GHashTable *property);
-static gboolean __ps_context_update_database(PsContext *context);
-static gboolean __ps_context_update_default_internet_to_db(PsContext *context, gboolean enabled);
-static gboolean __ps_context_remove_database(PsContext *context);
-static gint __ps_context_insert_network_id_to_database(gchar *mccmnc);
-static gint __ps_context_load_network_id_from_database(gchar *mccmnc);
-static gchar *__ps_context_load_network_name_from_database(gint network_id);
-static gint __ps_context_load_profile_id_from_database(void);
-static gint __ps_context_load_num_of_pdn_from_database(gchar *mccmnc);
-static gboolean __ps_context_insert_profile_tuple(dictionary *dic, gint index);
-static gint __ps_context_insert_profile_to_database(GHashTable *property, gint network_id);
-static gint __ps_context_get_network_id(gchar *mccmnc);
-GVariant *__ps_context_get_profile_properties(gpointer context, GVariantBuilder *properties);
+static gchar*   __ps_context_create_path(char *profile_name, int profile_id, int svc_ctg_id,gchar *cp_name);
+static gboolean __ps_context_create_co_context(gpointer context, GHashTable *property, gchar *cp_name);
+static gboolean __ps_context_update_profile(ps_context_t *context, GHashTable *property);
+static gboolean __ps_context_update_database(ps_context_t *context);
+static gboolean __ps_context_update_default_internet_to_db(ps_context_t *context, gboolean enabled);
+static gboolean __ps_context_remove_database(ps_context_t *context);
+static int      __ps_context_insert_network_id_to_database(gchar *mccmnc, gchar *cp_name);
+static int      __ps_context_load_network_id_from_database(gchar *mccmnc, gchar *cp_name);
+static gchar*   __ps_context_load_network_name_from_database(int network_id, gchar* cp_name);
+static int      __ps_context_load_profile_id_from_database(gchar *cp_name);
+static int      __ps_context_load_num_of_pdn_from_database(gchar *mccmnc, gchar *cp_name);
+static gboolean __ps_context_insert_profile_tuple(dictionary *dic, int index, gchar *cp_name);
+static int      __ps_context_insert_profile_to_database(GHashTable *property, int network_id, gchar *cp_name);
+static int      __ps_context_get_network_id(gchar *mccmnc, gchar *cp_name);
+GVariant * __ps_context_get_profile_properties(gpointer context, GVariantBuilder *properties);
 static gboolean __ps_context_set_default_connection_enable(gpointer object, gboolean enabled);
 
+typedef struct {
+       char *mccmnc;
+       enum co_context_type pdp_type;
+} OperatorTable;
+
+static OperatorTable uicc_mobility_operator[] = {
+       {"45005", CONTEXT_TYPE_IPV4V6},
+       {"45006", CONTEXT_TYPE_IPV4V6},
+       {"45008", CONTEXT_TYPE_IPV4V6},
+};
+
 void __remove_context_handler(gpointer data)
 {
-       PsContext *context = data;
+       ps_context_t *context = data;
 
        dbg("Entered");
 
-       if (!context) {
+       if(!context){
                dbg("Context is Null");
                return;
        }
 
        /*Need to UNexport and Unref the master Object */
+       //g_dbus_interface_skeleton_unexport(G_DBUS_INTERFACE_SKELETON(context->if_obj));
        g_object_unref(context->if_obj);
 
-       dbg("context removed for the path [%s]", context->path);
+       ps_dbg_ex_co(_ps_service_ref_co_network(_ps_context_ref_service(context)), "context removed for the path [%s]",context->path);
 
        g_free(context->path);
        g_free(context->mccmnc);
        g_free(context);
+
+       dbg("Exiting");
+       return;
 }
 
-static void __ps_context_emit_property_changed_signal(PsContext *context)
+static void __ps_context_emit_property_changed_signal(ps_context_t *context)
 {
        GVariant *gv = NULL;
        GVariantBuilder property;
+       CoreObject *co_network = _ps_service_ref_co_network(_ps_context_ref_service(context));
 
-       dbg("Get context Properties");
-       gv = _ps_context_get_properties(context,  &property);
+       ps_dbg_ex_co(co_network, "get context Properties");
 
-       dbg("Emit property changed signal - context [%p]", context);
+       gv = _ps_context_get_properties(context, &property);
        packet_service_context_emit_property_changed(context->if_obj, gv);
+
+       ps_dbg_ex_co(co_network, "context (%p) emit the context property changed signal", context);
+       return;
 }
 
 static gboolean __remove_contexts(gpointer key, gpointer value, gpointer user_data)
 {
-       gchar *context_path = (gchar *)key;
-
-       dbg("Removing context [%s]", context_path);
-       __ps_context_remove_context(value);
-
+       gchar *context_path = (gchar *) key;
+       ps_context_t *ps_context = value;
+       dbg("context(%s) remove", context_path);
+       /* Deactivate request before remove. */
+       _ps_service_deactivate_context(ps_context->p_service, ps_context);
+       __ps_context_remove_context(ps_context);
        return TRUE;
 }
 
-static gboolean __ps_context_remove_context(gpointer context)
+/*     Funtion : _ps_context_remove_context
+ *     Description : removes and unregister the interface for the context
+ */
+gboolean _ps_context_remove_context(gpointer context)
 {
-       PsContext *pscontext = context;
+       ps_context_t *pscontext = context;
 
-       dbg("Remove context [%p] and profile", pscontext);
-       _ps_service_reset_connection_timer(pscontext);
+       dbg("Entered");
 
-       /* Remove interface */
+       /*Unexporting the interface for the modem*/
        g_dbus_interface_skeleton_unexport(G_DBUS_INTERFACE_SKELETON(pscontext->if_obj));
 
-       _ps_context_set_alwayson_enable(pscontext, FALSE);
-       _ps_service_deactivate_context(pscontext->p_service, pscontext);
-       _ps_context_set_connected(pscontext, FALSE);
-       _ps_service_unref_context(pscontext->p_service, pscontext);
-
-       tcore_context_free(pscontext->co_context);
+       /*Removing the context from the static list */
+       g_hash_table_remove(((ps_modem_t *)((ps_service_t*)(pscontext->p_service))->p_modem)->contexts, _ps_context_ref_path(pscontext));
 
+       dbg("Exiting");
        return TRUE;
 }
 
-static gboolean __ps_context_create_storage_handle(gpointer plugin)
+static gboolean __ps_context_remove_context(gpointer context)
 {
-       Server *s = tcore_plugin_ref_server((TcorePlugin *)plugin);
-       const char *path = NULL;
-       strg_db = tcore_server_find_storage(s, "database");
-       path = tzplatform_mkpath(TZ_SYS_DB,".dnet.db");
-
-       handle = tcore_storage_create_handle(strg_db, path);
-       if (!handle) {
-               err("fail to create database handle");
-               return FALSE;
-       }
+       ps_context_t *pscontext = context;
+       ps_dbg_ex_co(_ps_service_ref_co_network(_ps_context_ref_service(pscontext)), "remove context and profile");
 
-       dbg("storage(%p) handle (%p)", strg_db, handle);
+       _ps_service_reset_connection_timer(pscontext);
+       /* remove context from the list (modem, service) */
+       g_hash_table_remove(((ps_modem_t *)((ps_service_t*)(pscontext->p_service))->p_modem)->contexts, pscontext->path);
+       _ps_service_unref_context(pscontext->p_service, pscontext);
+
+       /* free allocated resources for context. */
+       g_dbus_interface_skeleton_unexport(G_DBUS_INTERFACE_SKELETON(pscontext->if_obj));
+       tcore_context_free(pscontext->co_context);
+       g_free(context);
+
+       dbg("Exiting");
        return TRUE;
 }
 
-static gboolean __ps_context_create_context_hash()
+static gboolean __ps_context_create_storage_handle(gpointer plugin)
 {
-       tcore_check_return_value(contexts == NULL, FALSE);
+       TcorePlugin *p = plugin;
 
-       contexts = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, __remove_context_handler);
-       if (contexts == NULL) {
-               err("fail to create context hashtable");
-               return FALSE;
-       }
+       strg_db = tcore_server_find_storage(tcore_plugin_ref_server(p), "database");
+       dbg("Storage: (%p)", strg_db);
 
-       dbg("context hashtable(%p)", contexts);
        return TRUE;
 }
 
-static gchar* __ps_context_create_path(gchar *profile_name, gint profile_id, gint svc_ctg_id)
+static gchar* __ps_context_create_path(char *profile_name, int profile_id, int svc_ctg_id, gchar *cp_name)
 {
        gchar *path = NULL, *in_path = NULL;
-       int str_len = 0, index = 0;
+       int str_len = 0, context_index = 0;
 
-       if (!profile_name) {
+       if(!profile_name){
                dbg("profile_name is null");
                return NULL;
        }
 
        str_len = strlen(profile_name);
-       in_path = g_strdup("/context/");
+       in_path = g_strdup_printf("/%s%s", cp_name, "/context/");
 
-       for (index = 0; index < str_len; index++ ) {
+       for(context_index=0;context_index<str_len;context_index++){
                gchar *buf = NULL, *tmp = NULL;
-               buf = g_strdup_printf("%02x", profile_name[index]);
+               buf = g_strdup_printf("%02x", profile_name[context_index]);
                tmp = g_strconcat(in_path, buf, NULL);
 
                g_free(buf);
@@ -191,96 +223,142 @@ static gchar* __ps_context_create_path(gchar *profile_name, gint profile_id, gin
        return path;
 }
 
-static gboolean __ps_context_create_co_context(gpointer object, GHashTable *property)
+static gboolean __ps_context_create_co_context(gpointer object, GHashTable *property, gchar *cp_name)
 {
        GHashTableIter iter;
        gpointer key, value;
-       PsContext *context = NULL;
+       ps_context_t *context = NULL;
        CoreObject *co_context = NULL;
 
        gchar *path = NULL;
-       gint profile_id = 0;
+       int profile_id = 0;
        gchar *profile_name = NULL;
        gchar *apn = NULL;
        gchar *auth_id = NULL, *auth_pwd = NULL, *home_url = NULL, *proxy_addr = NULL;
-       gint auth_type = 0, svc_ctg_id = 0;
+       int auth_type = 0,svc_ctg_id = 0, pdp_type = 0, attach_apn = 0;
        gboolean hidden = FALSE, editable = FALSE, default_conn = FALSE;
 
        g_hash_table_iter_init(&iter, (GHashTable *) property);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
                if (g_str_equal(key, "3") == TRUE) { /*Profile ID*/
-                       profile_id = atoi((const gchar*) value);
-                       dbg("profile id (%d)", profile_id);
-               } else if (g_str_equal(key, "4") == TRUE) {
-                       profile_name = g_strdup((const gchar*) value);
+                       if (value) {
+                               profile_id = atoi((const char*) value);
+                               dbg("profile id (%d)", profile_id);
+                       }
+               }
+               else if (g_str_equal(key, "4") == TRUE) {
+                       g_free(profile_name);
+                       profile_name = g_strdup((const char*) value);
                        dbg("profile name (%s)", profile_name);
-               } else if (g_str_equal(key, "5") == TRUE) {
-                       apn = g_strdup((const gchar*) value);
+               }
+               else if (g_str_equal(key, "5") == TRUE) {
+                       g_free(apn);
+                       apn = g_strdup((const char*) value);
                        dbg("APN (%s)", apn);
-               } else if (g_str_equal(key, "6") == TRUE) {
-                       auth_type = atoi((const gchar*) value);
-                       dbg("auth type (%d)", auth_type);
-               } else if (g_str_equal(key, "7") == TRUE) {
-                       auth_id = g_strdup((const gchar*) value);
+               }
+               else if (g_str_equal(key, "6") == TRUE) {
+                       if (value) {
+                               auth_type = atoi((const char*) value);
+                               dbg("auth type (%d)", auth_type);
+                       }
+               }
+               else if (g_str_equal(key, "7") == TRUE) {
+                       g_free(auth_id);
+                       auth_id = g_strdup((const char*) value);
                        dbg("auth id (%s)", auth_id);
-               } else if (g_str_equal(key, "8") == TRUE) {
-                       auth_pwd = g_strdup((const gchar*) value);
+               }
+               else if (g_str_equal(key, "8") == TRUE) {
+                       g_free(auth_pwd);
+                       auth_pwd = g_strdup((const char*) value);
                        dbg("auth pwd (%s)", auth_pwd);
-               } else if (g_str_equal(key, "9") == TRUE) {
+               }
+               else if (g_str_equal(key, "9") == TRUE) {
 
-                       if (!value || g_strcmp0((const gchar*) value, "") == 0 ) {
-                               proxy_addr = g_strdup((const gchar*) value);
+                       if(!value || g_strcmp0((const gchar*) value, "") == 0 ){
+                               g_free(proxy_addr);
+                               proxy_addr = g_strdup((const char*) value);
                        }
-                       else {
+                       else{
                                gboolean b_regex = FALSE;
-                               b_regex = g_regex_match_simple("[0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+:[0-9]*", (const gchar*) value, 0, 0);
+                               b_regex = g_regex_match_simple("[0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+:[0-9]*", (const gchar*) value, 0,0);
 
-                               if (b_regex) {
+                               if(b_regex){
                                        int port_num = 0;
                                        gchar **tmp_proxy = NULL;
 
                                        tmp_proxy = g_strsplit_set((const gchar*) value, ".:", -1);
                                        port_num = atoi(tmp_proxy[4]);
 
-                                       if (port_num <= 0) {
+                                       if(port_num <= 0){
+                                               g_free(proxy_addr);
                                                proxy_addr = g_strdup_printf("%d.%d.%d.%d",
                                                        atoi(tmp_proxy[0]), atoi(tmp_proxy[1]), atoi(tmp_proxy[2]), atoi(tmp_proxy[3]));
                                        }
-                                       else {
+                                       else{
+                                               g_free(proxy_addr);
                                                proxy_addr = g_strdup_printf("%d.%d.%d.%d:%d",
                                                        atoi(tmp_proxy[0]), atoi(tmp_proxy[1]), atoi(tmp_proxy[2]), atoi(tmp_proxy[3]), port_num);
                                        }
                                        g_strfreev(tmp_proxy);
                                }
-                               else {
-                                       proxy_addr = g_strdup((const gchar*) value);
+                               else{
+                                       g_free(proxy_addr);
+                                       proxy_addr = g_strdup((const char*) value);
                                }//not in regular experssion
                        }
 
                        dbg("proxy addr (%s)", proxy_addr);
-               } else if (g_str_equal(key, "10") == TRUE) {
-                       home_url = g_strdup((const gchar*) value);
+               }
+               else if (g_str_equal(key, "10") == TRUE) {
+                       g_free(home_url);
+                       home_url = g_strdup((const char*) value);
                        dbg("home url (%s)", home_url);
-               } else if (g_str_equal(key, "19") == TRUE) {
-                       svc_ctg_id = atoi((const gchar*) value);
-                       dbg("context category type (%d)", svc_ctg_id);
-               } else if (g_str_equal(key, "20") == TRUE) {
-                       hidden = atoi((const gchar*) value);
-                       dbg("hidden profile (%d)", hidden);
-               } else if (g_str_equal(key, "21") == TRUE) {
-                       editable = atoi((const gchar*) value);
-                       dbg("editable profile (%d)", editable);
-               } else if (g_str_equal(key, "22") == TRUE) {
-                       default_conn = atoi((const gchar*) value);
-                       dbg("default connection profile (%d)", default_conn);
+               }
+               else if (g_str_equal(key, "11") == TRUE) {
+                       if (value) {
+                               pdp_type = atoi((const char*) value);
+                               dbg("pdp type (%d)", pdp_type);
+                       }
+               }
+               else if (g_str_equal(key, "19") == TRUE) {
+                       if (value) {
+                               svc_ctg_id = atoi((const char*) value);
+                               dbg("context category type (%d)", svc_ctg_id);
+                       }
+               }
+               else if (g_str_equal(key, "20") == TRUE) {
+                       if (value) {
+                               hidden = atoi((const char*) value);
+                               dbg("hidden profile (%d)", hidden);
+                       }
+               }
+               else if (g_str_equal(key, "21") == TRUE) {
+                       if (value) {
+                               editable = atoi((const char*) value);
+                               dbg("editable profile (%d)", editable);
+                       }
+               }
+               else if (g_str_equal(key, "22") == TRUE) {
+                       if (value) {
+                               default_conn = atoi((const char*) value);
+                               dbg("default connection profile (%d)", default_conn);
+                       }
+               }
+               else if (g_str_equal(key, "24") == TRUE) {
+                       if (value) {
+                               attach_apn = atoi((const char*) value);
+                               dbg("Attach APN (%s)", attach_apn ? "TRUE" : "FALSE");
+                       }
                }
        }
 
-       path = __ps_context_create_path(profile_name, profile_id, svc_ctg_id);
+       path = __ps_context_create_path(profile_name, profile_id, svc_ctg_id, cp_name);
 
-       context = (PsContext *) object;
-       co_context = tcore_context_new(context->plg, NULL);
-       tcore_context_set_state(co_context, TCORE_CONTEXT_STATE_DEACTIVATED);
+       context = (ps_context_t *)object;
+       co_context = tcore_context_new(context->plg, path, NULL);
+       tcore_context_set_type(co_context, pdp_type);
+       tcore_context_set_attach_apn(co_context, attach_apn);
+       tcore_context_set_state(co_context, CONTEXT_STATE_DEACTIVATED);
        tcore_context_set_role(co_context, svc_ctg_id);
        tcore_context_set_apn(co_context, apn);
        tcore_context_set_auth(co_context, auth_type);
@@ -289,50 +367,54 @@ static gboolean __ps_context_create_co_context(gpointer object, GHashTable *prop
        tcore_context_set_proxy(co_context, proxy_addr);
        tcore_context_set_mmsurl(co_context, home_url);
        tcore_context_set_profile_name(co_context, profile_name);
+       tcore_context_set_default_profile(co_context, default_conn);
 
        context->profile_id = profile_id;
        context->hidden = hidden;
        context->editable = editable;
        context->default_internet = default_conn;
-       context->path = g_strdup(path);
+       context->path = path;
        context->co_context = co_context;
 
-       g_free(path);
+       g_free(profile_name);
        g_free(apn);
+       g_free(auth_id);
        g_free(auth_pwd);
-       g_free(proxy_addr);
        g_free(home_url);
-       g_free(profile_name);
+       g_free(proxy_addr);
+
        return TRUE;
 }
 
 static gpointer __ps_context_create_context(GDBusConnection *conn, TcorePlugin *p,
-               gchar *mccmnc, GHashTable *property)
+               gchar *mccmnc, GHashTable *property, gchar *cp_name)
 {
        PacketServiceContext *context;
        GError *error = NULL;
-       PsContext *new_context;
+       ps_context_t *new_context;
        gchar *path = NULL;
 
        dbg("Entered");
 
        /*Initializing the master list for internal referencing*/
-       new_context = g_try_malloc0(sizeof(PsContext));
-       if (NULL == new_context) {
+       new_context = g_try_malloc0(sizeof(ps_context_t));
+       if(NULL == new_context){
                err("Unable to allocate memory for context");
                goto FAILURE;
        }
        dbg("creating the skeleton object");
        context = packet_service_context_skeleton_new();
-       if (NULL == context)
+       if(NULL == context) {
+               g_free(new_context);
                goto FAILURE;
+       }
 
        dbg("Assigning the memory location for the internal data");
        new_context->conn = conn;
        new_context->plg = p;
        new_context->if_obj = context;
 
-       __ps_context_create_co_context(new_context, property);
+       __ps_context_create_co_context(new_context, property , cp_name);
        _ps_context_set_alwayson_enable(new_context, TRUE);
        path = _ps_context_ref_path(new_context);
        _ps_context_setup_interface(context,new_context);
@@ -357,7 +439,48 @@ FAILURE:
        return NULL;
 }
 
-static gboolean __ps_context_update_profile(PsContext *context, GHashTable *property)
+static void __ps_context_create_null_apn_context(ps_modem_t *modem)
+{
+       gint idx;
+       gboolean matched = FALSE;
+       gint operator_count;
+
+       dbg("Entered");
+
+       operator_count = sizeof(uicc_mobility_operator) / sizeof(uicc_mobility_operator[0]);
+       for (idx = 0; idx < operator_count; idx++) {
+               if (!g_strcmp0(uicc_mobility_operator[idx].mccmnc, modem->operator)) {
+                       dbg("Need NULL APN context for current MCCMNC: [%s]", modem->operator);
+                       matched = TRUE;
+                       break;
+               }
+       }
+
+       if (matched) {
+               GHashTable *attach_apn_hash;
+               ps_context_t *new_context;
+               gchar *path;
+
+               attach_apn_hash = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+               g_hash_table_insert(attach_apn_hash, "3", g_strdup_printf("%d", 0)); /* Fill invalid profile_id */
+               g_hash_table_insert(attach_apn_hash, "4", g_strdup("Attach APN")); /* profile_name */
+               g_hash_table_insert(attach_apn_hash, "11", g_strdup_printf("%d", uicc_mobility_operator[idx].pdp_type)); /* pdp_type */
+               g_hash_table_insert(attach_apn_hash, "19", g_strdup_printf("%d", 99)); /* Fill invalid svc_category_id */
+               g_hash_table_insert(attach_apn_hash, "20", g_strdup_printf("%d", TRUE)); /* hidden */
+               g_hash_table_insert(attach_apn_hash, "24", g_strdup_printf("%d", TRUE)); /* attach_apn */
+
+               new_context = __ps_context_create_context(modem->conn,
+                       modem->plg, modem->operator, attach_apn_hash, modem->cp_name);
+
+               path = _ps_context_ref_path(new_context);
+               g_hash_table_insert(modem->contexts, g_strdup(path), new_context);
+               dbg("Added NULL APN context [%p]!!!", new_context);
+
+               g_hash_table_destroy(attach_apn_hash);
+       }
+}
+
+static gboolean __ps_context_update_profile(ps_context_t *context, GHashTable *property)
 {
        CoreObject *co_context = NULL;
        GHashTableIter iter;
@@ -370,146 +493,217 @@ static gboolean __ps_context_update_profile(PsContext *context, GHashTable *prop
        g_hash_table_iter_init(&iter, property);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
                if (g_str_equal(key, "apn") == TRUE) {
-                       tcore_context_set_apn(co_context, (const gchar *) value);
+                       tcore_context_set_apn(co_context, (const char *) value);
+               }
+               else if (g_str_equal(key, "profile_name") == TRUE) {
+                       tcore_context_set_profile_name(co_context, (const char *) value);
                }
                else if (g_str_equal(key, "auth_type") == TRUE) {
                        int i_tmp = 0;
-                       i_tmp = atoi((const gchar *) value);
-                       tcore_context_set_auth(co_context, i_tmp);
+                       if (value) {
+                               i_tmp = atoi((const char *) value);
+                               tcore_context_set_auth(co_context, i_tmp);
+                       }
                }
                else if (g_str_equal(key, "auth_id") == TRUE) {
-                       tcore_context_set_username(co_context, (const gchar *) value);
+                       tcore_context_set_username(co_context, (const char *) value);
                }
                else if (g_str_equal(key, "auth_pwd") == TRUE) {
-                       tcore_context_set_password(co_context, (const gchar *) value);
+                       tcore_context_set_password(co_context, (const char *) value);
                }
                else if (g_str_equal(key, "proxy_addr") == TRUE) {
-                       tcore_context_set_proxy(co_context, (const gchar *) value);
+                       tcore_context_set_proxy(co_context, (const char *) value);
                }
                else if (g_str_equal(key, "home_url") == TRUE) {
-                       tcore_context_set_mmsurl(co_context, (const gchar *) value);
+                       tcore_context_set_mmsurl(co_context, (const char *) value);
                }
        }
 
        return __ps_context_update_database(context);
 }
 
-static gboolean __ps_context_update_default_internet_to_db(PsContext *context, gboolean enabled)
+static gboolean __ps_context_update_default_internet_to_db(ps_context_t *context, gboolean enabled)
 {
-       gchar *s_id = NULL, *s_enabled = NULL;
-       gboolean rv = FALSE;
-       gchar query[3000];
+       gpointer handle;
        GHashTable *in_param;
+       char szQuery[3000];
+       gboolean rv = FALSE;
+       CoreObject *co_network = _ps_service_ref_co_network(_ps_context_ref_service(context));
+       char *cp_name = _ps_modem_ref_cp_name(_ps_service_ref_modem(_ps_context_ref_service(context)));
+
+       g_return_val_if_fail(context != NULL, FALSE);
+
+       /* Initialize Storage */
+       if(g_str_has_suffix(cp_name, "1"))
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_1);
+       else
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_0);
+       if (handle == NULL) {
+               ps_err_ex_co(co_network, "Failed to get Storage handle");
+               return FALSE;
+       }
 
-       tcore_check_return_value(context != NULL, FALSE);
-
+       /* Initialize parameters */
        in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+       g_hash_table_insert(in_param, "1",
+                       g_strdup_printf("%d", enabled));                                /* Profile enabled/disabled */
+       g_hash_table_insert(in_param, "2",
+                       g_strdup_printf("%d", context->profile_id));    /* Profile ID */
 
-       strcpy(query, " update pdp_profile set ");
-       strcat(query, " default_internet_con = ?");
-       strcat(query, " where profile_id = ?");
-
-       s_id = g_strdup_printf("%d", context->profile_id);
-       s_enabled = g_strdup_printf("%d", enabled);
+       /* SQL query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcpy(szQuery, " update pdp_profile set ");
+       strcat(szQuery, " default_internet_con = ?");
+       strcat(szQuery, " where profile_id = ?");
 
-       g_hash_table_insert(in_param, "1", g_strdup(s_enabled));
-       g_hash_table_insert(in_param, "2", g_strdup(s_id));
+       rv = tcore_storage_update_query_database(strg_db, handle, szQuery, in_param);
+       ps_dbg_ex_co(co_network, "Update Database: [%s]", (rv == TRUE ? "SUCCESS" : "FAIL"));
 
-       rv = tcore_storage_update_query_database(strg_db, handle, query, in_param);
+       /* Free resources */
        g_hash_table_destroy(in_param);
 
-       g_free(s_id);
-       g_free(s_enabled);
+       /* De-initialize Storage */
+       tcore_storage_remove_handle(strg_db, handle);
 
        return rv;
 }
 
-static gboolean __ps_context_update_database(PsContext *context)
+static gboolean __ps_context_update_database(ps_context_t *context)
 {
-       gchar *s_id = NULL, *s_authtype = NULL;
-       gchar *s_apn = NULL, *s_username = NULL, *s_pwd = NULL, *s_proxy = NULL, *s_mms = NULL;
+       gpointer handle;
+       GHashTable *in_param;
+       char szQuery[3000];
        gboolean rv = FALSE;
-       gchar query[3000];
-       TcoreContextAuth authtype;
+       CoreObject *co_network = _ps_service_ref_co_network(_ps_context_ref_service(context));
+       char *cp_name = _ps_modem_ref_cp_name(_ps_service_ref_modem(_ps_context_ref_service(context)));
+
+       g_return_val_if_fail(context != NULL, FALSE);
+
+       /* Initialize Storage */
+       if(g_str_has_suffix(cp_name, "1"))
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_1);
+       else
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_0);
+       if (handle == NULL) {
+               ps_err_ex_co(co_network, "Failed to get Storage handle");
+               return rv;
+       }
 
-       GHashTable *in_param;
+       /* Initialize parameters */
        in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
-
-       strcpy(query, " update pdp_profile set ");
-       strcat(query, " apn = ?, auth_type = ?, auth_id = ?, auth_pwd = ?, ");
-       strcat(query, " proxy_ip_addr = ?, home_url = ?");
-       strcat(query, " where profile_id = ?");
-
-       tcore_context_get_auth(context->co_context, &authtype);
-       s_id = g_strdup_printf("%d", context->profile_id);
-       s_authtype = g_strdup_printf("%d", authtype);
-
-       tcore_context_get_apn(context->co_context, &s_apn);
-       tcore_context_get_username(context->co_context, &s_username);
-       tcore_context_get_password(context->co_context, &s_pwd);
-       tcore_context_get_proxy(context->co_context, &s_proxy);
-       tcore_context_get_mmsurl(context->co_context, &s_mms);
-
-       dbg("Profile parameter extracted");
-       g_hash_table_insert(in_param, "1", g_strdup(s_apn));
-       g_hash_table_insert(in_param, "2", g_strdup(s_authtype));
-       g_hash_table_insert(in_param, "3", g_strdup(s_username));
-       g_hash_table_insert(in_param, "4", g_strdup(s_pwd));
-       g_hash_table_insert(in_param, "5", g_strdup(s_proxy));
-       g_hash_table_insert(in_param, "6", g_strdup(s_mms));
-       g_hash_table_insert(in_param, "7", g_strdup(s_id));
-
-       dbg("Profile Parameter inserted in data base ");
-       rv = tcore_storage_update_query_database(strg_db, handle, query, in_param);
+       g_hash_table_insert(in_param, "1",
+                       tcore_context_get_apn(context->co_context));                                            /* APN */
+       g_hash_table_insert(in_param, "2",
+                       g_strdup_printf("%d", tcore_context_get_auth(context->co_context)));    /* Auth Type */
+       g_hash_table_insert(in_param, "3",
+                       tcore_context_get_username(context->co_context));                                       /* Username */
+       g_hash_table_insert(in_param, "4",
+                       tcore_context_get_password(context->co_context));                                       /* Password */
+       g_hash_table_insert(in_param, "5",
+                       tcore_context_get_proxy(context->co_context));                                          /* Proxy */
+       g_hash_table_insert(in_param, "6",
+                       tcore_context_get_mmsurl(context->co_context));                                         /* MMS URL */
+       g_hash_table_insert(in_param, "7",
+                       tcore_context_get_profile_name(context->co_context));                                           /* Profile Name */
+       g_hash_table_insert(in_param, "8",
+                       g_strdup_printf("%d", context->profile_id));                                            /* Profile ID */
+
+       /* SQL query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcpy(szQuery, " update pdp_profile set ");
+       strcat(szQuery, " apn = ?, auth_type = ?, auth_id = ?, auth_pwd = ?, ");
+       strcat(szQuery, " proxy_ip_addr = ?, home_url = ?, profile_name = ?");
+       strcat(szQuery, " where profile_id = ?");
+
+       rv = tcore_storage_update_query_database(strg_db, handle, szQuery, in_param);
+       ps_dbg_ex_co(co_network, "Update Database: [%s]", (rv == TRUE ? "SUCCESS" : "FAIL"));
+
+       /* Free resources */
        g_hash_table_destroy(in_param);
 
-       g_free(s_id);
-       g_free(s_authtype);
+       /* De-initialize Storage */
+       tcore_storage_remove_handle(strg_db, handle);
 
-       dbg("Exiting");
        return rv;
 }
 
-static gboolean __ps_context_remove_database(PsContext *context)
+static gboolean __ps_context_remove_database(ps_context_t *context)
 {
-       gchar *s_id = NULL;
+       gpointer handle;
+       GHashTable *in_param;
+       char szQuery[1000];
        gboolean rv = FALSE;
-       gchar query[1000];
+       CoreObject *co_network = _ps_service_ref_co_network(_ps_context_ref_service(context));
+       char *cp_name = _ps_modem_ref_cp_name(_ps_service_ref_modem(_ps_context_ref_service(context)));
+
+       g_return_val_if_fail(context != NULL, FALSE);
+
+       /* Initialize Storage */
+       if(g_str_has_suffix(cp_name, "1"))
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_1);
+       else
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_0);
+       if (handle == NULL) {
+               ps_err_ex_co(co_network, "Failed to get Storage handle");
+               return rv;
+       }
 
-       GHashTable *in_param;
+       /* Initialize parameters */
        in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+       g_hash_table_insert(in_param, "1",
+                       g_strdup_printf("%d", context->profile_id));    /* Profile ID */
 
-       memset(query, 0, sizeof(query));
-       strcpy(query, " delete from pdp_profile where profile_id = ? ");
+       /* SQL query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcpy(szQuery, " delete from pdp_profile where profile_id = ? ");
 
-       s_id = g_strdup_printf("%d", context->profile_id);
-       g_hash_table_insert(in_param, "1", g_strdup(s_id));
+       rv = tcore_storage_remove_query_database(strg_db, handle, szQuery, in_param);
+       ps_dbg_ex_co(co_network, "Remove from Database: [%s]", (rv == TRUE ? "SUCCESS" : "FAIL"));
 
-       rv = tcore_storage_remove_query_database(strg_db, handle, query, in_param);
-       g_free(s_id);
+       /* Free resources */
        g_hash_table_destroy(in_param);
 
+       /* De-initialize Storage */
+       tcore_storage_remove_handle(strg_db, handle);
+
        return rv;
 }
 
-static gint __ps_context_insert_network_id_to_database(gchar *mccmnc)
+static int __ps_context_insert_network_id_to_database(gchar *mccmnc, gchar* cp_name)
 {
-       gchar query[5000];
-       gint network_id = 0;
+       gpointer handle;
+       GHashTable *in_param, *out_param;
+       char szQuery[5000];
        gboolean rv = FALSE;
-       gchar *insert_key = NULL;
+
        GHashTableIter iter;
        gpointer key, value;
-       GHashTable *in_param, *out_param;
+       int network_id = 0;
+
+       /* Initialize Storage */
+       if(g_str_has_suffix(cp_name, "1"))
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_1);
+       else
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_0);
+       if (handle == NULL) {
+               err("Failed to get Storage handle");
+               return rv;
+       }
 
-       in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+       /*
+        * Check the maximum Network ID that exists in database,
+        * if NONE exists, then 'Network ID' would be equal to 1
+        * else if there exists a valid maximum entry; 'Network ID' would be incremented value.
+        */
        out_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL,
                                (GDestroyNotify) g_hash_table_destroy);
 
-       memset(query, 0, sizeof(query));
-       strcpy(query,"select max(network_info_id) as network_id from network_info");
+       /* SQL query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcpy(szQuery,"select max(network_info_id) as network_id from network_info");
 
-       tcore_storage_read_query_database(strg_db, handle, query, NULL, out_param, 1);
+       rv = tcore_storage_read_query_database(strg_db, handle, szQuery, NULL, out_param, 1);
+       dbg("Read Database: [%s]", (rv == TRUE ? "SUCCESS" : "FAIL"));
 
        g_hash_table_iter_init(&iter, out_param);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
@@ -517,153 +711,209 @@ static gint __ps_context_insert_network_id_to_database(gchar *mccmnc)
                gpointer key2, value2;
 
                if (value) {
-                       g_hash_table_iter_init(&iter2, (GHashTable *) value);
+                       g_hash_table_iter_init(&iter2, (GHashTable *)value);
                        while (g_hash_table_iter_next(&iter2, &key2, &value2) == TRUE) {
                                dbg("key2(%s) value2(%s)",key2, value2);
                                if (g_str_equal(key2, "0") == TRUE) {
-                                       if (!value2 || g_strcmp0((const gchar*) value2, "") == 0 ) {
+                                       if (!value2 || g_strcmp0((const char*)value2, "") == 0) {
                                                network_id = 0;
-                                       } else {
-                                               network_id = atoi((const gchar*) value2);
                                        }
+                                       else{
+                                               network_id = atoi((const char*)value2);
+                                       }
+
+                                       /* TODO - Check this logic */
+                                       break;
                                }
                        }
-                       break;
+                       //break;        /* TODO - Check this logic */
                }
        }
 
+       /* Free Resources */
        g_hash_table_destroy(out_param);
-       network_id++;
 
+       /* Increment Network ID */
+       network_id++;
 
-       memset(query, 0, sizeof(query));
-       strcpy(query," insert into network_info( network_info_id, network_name, mccmnc) values( ?, ?, ?) ");
+       /* SQL query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcpy(szQuery," insert into network_info( network_info_id, network_name, mccmnc) values( ?, ?, ?) ");
 
-       insert_key = g_strdup_printf("%d", network_id);
-       g_hash_table_insert(in_param, "1", g_strdup(insert_key));
-       g_hash_table_insert(in_param, "2", "TEMP_NETWORK");
+       /* Initialize parameters */
+       in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+       g_hash_table_insert(in_param, "1", g_strdup_printf("%d", network_id));  /* Network ID */
+       g_hash_table_insert(in_param, "2", g_strdup_printf("PLMN_%s", mccmnc));
        g_hash_table_insert(in_param, "3", g_strdup(mccmnc));
 
-       rv = tcore_storage_insert_query_database(strg_db, handle, query, in_param);
-       if (!rv) {
-               err("unable to insert query into database");
-               return 0;
+       rv = tcore_storage_insert_query_database(strg_db, handle, szQuery, in_param);
+       if (rv == FALSE) {
+               err("Failed to insert query to Storage");
+               network_id = 0;
        }
-       g_free(insert_key);
+
+       /* Free resources */
+       g_hash_table_destroy(in_param);
+
+       /* De-initialize Storage */
+       tcore_storage_remove_handle(strg_db, handle);
+
        return network_id;
 }
 
-static gint __ps_context_insert_profile_to_database(GHashTable *property, gint network_id)
+static int __ps_context_insert_profile_to_database(GHashTable *property, int network_id, gchar* cp_name)
 {
-       gint profile_id = 0;
-       gchar query[5000];
-
+       gpointer handle;
+       GHashTable *in_param;
+       char szQuery[5000];
        gboolean rv = FALSE;
+
        GHashTableIter iter;
        gpointer key, value;
-       GHashTable *in_param;
-       gchar *insert_key1 = NULL, *insert_key2 = NULL;
-       gchar *profile_name=NULL, *apn=NULL, *auth_type=NULL, *auth_id = NULL, *auth_pwd = NULL;
-       gchar *proxy_addr = NULL, *home_url = NULL, *svc_id = NULL, *keyword=NULL, *network_name= NULL;
 
-       in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+       int profile_id = 0;
+       gchar *profile_name = NULL, *apn = NULL, *auth_type = NULL;
+       gchar *auth_id = NULL, *auth_pwd = NULL, *proxy_addr = NULL;
+       gchar *home_url = NULL, *svc_id = NULL;
+
+       /* Initialize Storage */
+       if(g_str_has_suffix(cp_name, "1"))
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_1);
+       else
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_0);
+       if (handle == NULL) {
+               err("Failed to get Storage handle");
+               return 0;
+       }
+
+       profile_id = __ps_context_load_profile_id_from_database(cp_name);
+       if (profile_id < 0) {
+               dbg("Failed to get last Profile ID");
+               profile_id = 0;
+
+               goto EXIT;
+       }
+
+       /* Increment Profile ID */
+       profile_id++;
 
        g_hash_table_iter_init(&iter, property);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
+               if (g_str_equal(key, "profile_name") == TRUE) {                 /* Profile Name */
+                       if (value != NULL) {
+                               FREE_AND_ASSIGN(profile_name, value);
+                       }
+                       else {
+                               if (profile_name)
+                                       g_free(profile_name);
 
-               if (g_str_equal(key, "apn") == TRUE) {
-                       apn = g_strdup(value);
-               } else if (g_str_equal(key, "keyword") == TRUE) {
-                       keyword = g_strdup(value);
-               } else if (g_str_equal(key, "auth_type") == TRUE) {
-                       auth_type = g_strdup(value);
-               } else if (g_str_equal(key, "auth_id") == TRUE) {
-                       auth_id = g_strdup(value);
-               } else if (g_str_equal(key, "auth_pwd") == TRUE) {
-                       auth_pwd = g_strdup(value);
-               } else if (g_str_equal(key, "proxy_addr") == TRUE) {
-                       proxy_addr = g_strdup(value);
-               } else if (g_str_equal(key, "home_url") == TRUE) {
-                       home_url = g_strdup(value);
-               } else if (g_str_equal(key, "svc_ctg_id") == TRUE) {
-                       svc_id = g_strdup(value);
+                               profile_name = __ps_context_load_network_name_from_database(network_id, cp_name);
+                       }
+               }
+               else if (g_str_equal(key, "apn") == TRUE) {                     /* APN */
+                       FREE_AND_ASSIGN(apn, value);
+               }
+               else if (g_str_equal(key, "auth_type") == TRUE) {       /* Auth Type */
+                       FREE_AND_ASSIGN(auth_type, value);
+               }
+               else if (g_str_equal(key, "auth_id") == TRUE) {         /* Auth ID */
+                       FREE_AND_ASSIGN(auth_id, value);
+               }
+               else if (g_str_equal(key, "auth_pwd") == TRUE) {        /* Auth Password */
+                       FREE_AND_ASSIGN(auth_pwd, value);
+               }
+               else if (g_str_equal(key, "proxy_addr") == TRUE) {      /* Proxy Address */
+                       FREE_AND_ASSIGN(proxy_addr, value);
+               }
+               else if (g_str_equal(key, "home_url") == TRUE) {        /* Home URL */
+                       FREE_AND_ASSIGN(home_url, value);
+               }
+               else if (g_str_equal(key, "svc_ctg_id") == TRUE) {      /* Service ID */
+                       FREE_AND_ASSIGN(svc_id, value);
                }
-
        }
 
-       dbg("apn (%s), auth_type (%s), auth_id(%s), auth_pwd(%s), proxy_addr(%s), home_url(%s), svc_id(%s)",
-               apn, auth_type, auth_id, auth_pwd, proxy_addr, home_url, svc_id);
-
-       profile_id = __ps_context_load_profile_id_from_database();
-       if (profile_id < 0) {
-               dbg("fail to get last profile id");
-               return 0;
-       }
-       dbg("last profile id(%d)", profile_id);
-       profile_id++;
+       /* Initialize parameters */
+       in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
 
-       memset(query, 0, sizeof(query));
-       strcpy(query," insert into pdp_profile( ");
-       strcat(query," profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, ");
-       strcat(query," pdp_protocol, proxy_ip_addr, home_url, linger_time, ");
-       strcat(query," network_info_id, svc_category_id, hidden, editable, default_internet_con, user_defined) values( ");
-       strcat(query," ?, ?, ?, ?, ?, ?,");//1,2,3,4,5,6
-       strcat(query," 1, ?, ?, 300,");//7,8
-       strcat(query," ?, ?, 0, 1, 0, 1)");//9,10
-
-       insert_key1 = g_strdup_printf("%d", profile_id);
-       insert_key2 = g_strdup_printf("%d", network_id);
-       network_name = __ps_context_load_network_name_from_database(network_id);
-
-       if (keyword) {
-               profile_name = g_strdup_printf("%s", keyword);
-       } else {
-               profile_name = g_strdup_printf("%s", network_name);
-       }
-       dbg("profile name (%s)", profile_name);
-
-       g_hash_table_insert(in_param, "1", g_strdup(insert_key1));
-       g_hash_table_insert(in_param, "2", g_strdup(profile_name));
-       g_hash_table_insert(in_param, "3", g_strdup(apn));
-       g_hash_table_insert(in_param, "4", g_strdup(auth_type));
-       g_hash_table_insert(in_param, "5", g_strdup(auth_id));
-       g_hash_table_insert(in_param, "6", g_strdup(auth_pwd));
-       g_hash_table_insert(in_param, "7", g_strdup(proxy_addr));
-       g_hash_table_insert(in_param, "8", g_strdup(home_url));
-       g_hash_table_insert(in_param, "9", g_strdup(insert_key2));
-       g_hash_table_insert(in_param, "10", g_strdup(svc_id));
-
-       g_free(insert_key1);g_free(insert_key2);g_free(profile_name);
-       g_free(apn);g_free(auth_type);g_free(auth_id);g_free(auth_pwd);
-       g_free(proxy_addr);g_free(home_url);g_free(svc_id);
-
-       rv = tcore_storage_insert_query_database(strg_db, handle, query, in_param);
+       g_hash_table_insert(in_param, "1",
+                       g_strdup_printf("%d", profile_id));                     /* Profile ID */
+       g_hash_table_insert(in_param, "2", profile_name);       /* Profile Name */
+       g_hash_table_insert(in_param, "3", apn);                        /* APN */
+       g_hash_table_insert(in_param, "4", auth_type);          /* Auth Type */
+       g_hash_table_insert(in_param, "5", auth_id);            /* Auth ID */
+       g_hash_table_insert(in_param, "6", auth_pwd);           /* Auth Password */
+       g_hash_table_insert(in_param, "7", proxy_addr);         /* Proxy Address */
+       g_hash_table_insert(in_param, "8", home_url);           /* Home URL */
+       g_hash_table_insert(in_param, "9",
+                       g_strdup_printf("%d", network_id));                     /* Network ID */
+       g_hash_table_insert(in_param, "10", svc_id);            /* Service ID */
+
+       dbg("Profile ID: [%d] Profile name: [%s] APN :[%s] Auth Type [%s] Auth ID: [%s] "
+               "Auth Password: [%s] Proxy Address: [%s] Home URL: [%s] Service ID: [%s]",
+               profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, proxy_addr, home_url, svc_id);
+
+       /* SQL Query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcpy(szQuery," insert into pdp_profile( ");
+       strcat(szQuery," profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, ");
+       strcat(szQuery," pdp_protocol, proxy_ip_addr, home_url, linger_time, ");
+       strcat(szQuery," network_info_id, svc_category_id, hidden, editable, default_internet_con, user_defined) values( ");
+       strcat(szQuery," ?, ?, ?, ?, ?, ?,");//1,2,3,4,5,6
+       strcat(szQuery," 1, ?, ?, 300,");//7,8
+       strcat(szQuery," ?, ?, 0, 1, 0, 1)");//9,10
+
+       rv = tcore_storage_insert_query_database(strg_db, handle, szQuery, in_param);
+       if (rv == FALSE) {
+               err("Failed to insert to Storage");
+               profile_id = 0;
+       }
+
+       /* Free resources */
        g_hash_table_destroy(in_param);
 
-       if (!rv) {
-               err("unable to insert query into database");
-               return 0;
-       }
+EXIT:
+       /* De-initialize Storage */
+       tcore_storage_remove_handle(strg_db, handle);
+
        return profile_id;
 }
 
-static gint __ps_context_load_network_id_from_database(gchar *mccmnc)
+static int __ps_context_load_network_id_from_database(gchar *mccmnc, gchar* cp_name)
 {
-       gchar query[5000];
-       gint network_id = 0;
+       gpointer handle;
+       GHashTable *in_param, *out_param;
+       char szQuery[5000];
+       gboolean rv = FALSE;
+
        GHashTableIter iter;
        gpointer key, value;
-       GHashTable *in_param, *out_param;
 
+       int network_id = -1;
+
+       /* Initialize Storage */
+       if(g_str_has_suffix(cp_name, "1"))
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_1);
+       else
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_0);
+       if (handle == NULL) {
+               err("Failed to get Storage handle");
+               return network_id;
+       }
+
+       /* Initialize parameters */
        in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+       g_hash_table_insert(in_param, "1", g_strdup(mccmnc));
+
        out_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL,
                        (GDestroyNotify) g_hash_table_destroy);
 
-       memset(query, 0, sizeof(query));
-       strcpy(query,"select network_info_id from network_info where mccmnc = ? ");
+       /* SQL Query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcpy(szQuery,"select network_info_id from network_info where mccmnc = ? ");
 
-       g_hash_table_insert(in_param, "1", g_strdup(mccmnc));
-       tcore_storage_read_query_database(strg_db, handle, query, in_param, out_param, 1);
+       rv = tcore_storage_read_query_database(strg_db, handle, szQuery, in_param, out_param, 1);
+       dbg("Read Database: [%s]", (rv == TRUE ? "SUCCESS" : "FAIL"));
 
        g_hash_table_iter_init(&iter, out_param);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
@@ -671,45 +921,69 @@ static gint __ps_context_load_network_id_from_database(gchar *mccmnc)
                gpointer key2, value2;
 
                if (value) {
-                       g_hash_table_iter_init(&iter2, (GHashTable *) value);
+                       g_hash_table_iter_init(&iter2, (GHashTable *)value);
                        while (g_hash_table_iter_next(&iter2, &key2, &value2) == TRUE) {
                                if (g_str_equal(key2, "0") == TRUE) {
-                                       if (!value2 || g_strcmp0((const gchar*) value2, "") == 0) {
+                                       if (!value2 || (g_strcmp0((const char*)value2, "") == 0)) {
                                                network_id = 0;
-                                       } else {
-                                               network_id = atoi((const gchar*) value2);
                                        }
+                                       else {
+                                               network_id = atoi((const char*)value2);
+                                       }
+
+                                       /* TODO - Check this out */
+                                       break;
                                }
                        }
-                       break;
+                       //break;        /* TODO - Check this out */
                }
        }
 
+       /* Free resources */
        g_hash_table_destroy(in_param);
        g_hash_table_destroy(out_param);
 
+       /* De-initialize Storage */
+       tcore_storage_remove_handle(strg_db, handle);
+
        return network_id;
 }
 
-static gchar* __ps_context_load_network_name_from_database(gint network_id)
+static gchar* __ps_context_load_network_name_from_database(int network_id, gchar *cp_name)
 {
-       gchar query[5000];
-       gchar *network_name = NULL;
-       gchar *insert_key1 = NULL;
+       gpointer handle;
+       GHashTable *in_param, *out_param;
+       char szQuery[5000];
+       gboolean rv = FALSE;
+
        GHashTableIter iter;
        gpointer key, value;
-       GHashTable *in_param, *out_param;
 
+       gchar *network_name = NULL;
+
+       /* Initialize Storage */
+       if(g_str_has_suffix(cp_name, "1"))
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_1);
+       else
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_0);
+       if (handle == NULL) {
+               err("Failed to get Storage handle");
+               return NULL;
+       }
+
+       /* Initialize parameters */
        in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+       g_hash_table_insert(in_param, "1", g_strdup_printf("%d", network_id));
+
        out_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL,
-                       (GDestroyNotify) g_hash_table_destroy);
+                                               (GDestroyNotify)g_hash_table_destroy);
 
-       memset(query, 0, sizeof(query));
-       strcpy(query,"select network_name from network_info where network_info_id = ? ");
+       /* SQL query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcpy(szQuery,"select network_name from network_info where network_info_id = ? ");
 
-       insert_key1 = g_strdup_printf("%d", network_id);
-       g_hash_table_insert(in_param, "1", g_strdup(insert_key1));
-       tcore_storage_read_query_database(strg_db, handle, query, in_param, out_param, 1);
+       rv = tcore_storage_read_query_database(strg_db, handle, szQuery, in_param, out_param, 1);
+       dbg("Read Database: [%s]", (rv == TRUE ? "SUCCESS" : "FAIL"));
 
        g_hash_table_iter_init(&iter, out_param);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
@@ -717,38 +991,62 @@ static gchar* __ps_context_load_network_name_from_database(gint network_id)
                gpointer key2, value2;
 
                if (value) {
-                       g_hash_table_iter_init(&iter2, (GHashTable *) value);
+                       g_hash_table_iter_init(&iter2, (GHashTable *)value);
                        while (g_hash_table_iter_next(&iter2, &key2, &value2) == TRUE) {
                                if (g_str_equal(key2, "0") == TRUE) {
+                                       g_free(network_name);
                                        network_name = g_strdup(value2);
+
+                                       /* TODO - Check this logic */
+                                       break;
                                }
                        }
-                       break;
+                       //break;        /* TODO - Check this logic */
                }
        }
 
+       /* Free resources */
        g_hash_table_destroy(in_param);
        g_hash_table_destroy(out_param);
-       g_free(insert_key1);
+
+       /* De-initialize Storage */
+       tcore_storage_remove_handle(strg_db, handle);
 
        return network_name;
 }
 
-static gint __ps_context_load_profile_id_from_database(void)
+static int __ps_context_load_profile_id_from_database(gchar * cp_name)
 {
-       gchar query[5000];
-       gint profile_id = 0;
+       gpointer handle;
+       GHashTable *out_param;
+       char szQuery[5000];
+       gboolean rv = FALSE;
+
        GHashTableIter iter;
        gpointer key, value;
-       GHashTable *out_param;
 
+       int profile_id = -1;
+
+       /* Initialize Storage */
+       if(g_str_has_suffix(cp_name, "1"))
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_1);
+       else
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_0);
+       if (handle == NULL) {
+               err("Failed to get Storage handle");
+               return profile_id;
+       }
+
+       /* Initialize parameters */
        out_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL,
                        (GDestroyNotify) g_hash_table_destroy);
 
-       memset(query, 0, sizeof(query));
-       strcpy(query,"select max(profile_id) as last_profile from pdp_profile");
+       /* SQL query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcpy(szQuery, "select max(profile_id) as last_profile from pdp_profile");
 
-       tcore_storage_read_query_database(strg_db, handle, query, NULL, out_param, 1);
+       rv = tcore_storage_read_query_database(strg_db, handle, szQuery, NULL, out_param, 1);
+       dbg("Read Database: [%s]", (rv == TRUE ? "SUCCESS" : "FAIL"));
 
        g_hash_table_iter_init(&iter, out_param);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
@@ -756,287 +1054,439 @@ static gint __ps_context_load_profile_id_from_database(void)
                gpointer key2, value2;
 
                if (value) {
-                       g_hash_table_iter_init(&iter2, (GHashTable *) value);
+                       g_hash_table_iter_init(&iter2, (GHashTable *)value);
                        while (g_hash_table_iter_next(&iter2, &key2, &value2) == TRUE) {
                                if (g_str_equal(key2, "0") == TRUE) {
-                                       if (!value2 || g_strcmp0((const gchar*) value2, "") == 0) {
+                                       if (!value2 || (g_strcmp0((const char*)value2, "") == 0)) {
                                                profile_id = 0;
-                                       } else {
-                                               profile_id = atoi((const gchar*) value2);
                                        }
+                                       else{
+                                               profile_id = atoi((const char*)value2);
+                                       }
+
+                                       /* TODO - Check this logic */
+                                       break;
                                }
                        }
-                       break;
+                       //break;        /* TODO - Check this logic */
                }
        }
 
+       /* Free resources */
        g_hash_table_destroy(out_param);
+
+       /* De-initialize Storage */
+       tcore_storage_remove_handle(strg_db, handle);
+
        return profile_id;
 }
 
-static gint __ps_context_load_num_of_pdn_from_database(gchar *mccmnc)
+static int __ps_context_load_num_of_pdn_from_database(gchar *mccmnc, gchar *cp_name)
 {
-       gchar query[5000];
-       gint num_of_pdn = 0;
+       gpointer handle;
+       GHashTable *in_param, *out_param;
+       char szQuery[5000];
+       gboolean rv = FALSE;
+
        GHashTableIter iter;
        gpointer key, value;
-       GHashTable *in_param, *out_param;
 
+       int num_of_pdn = 0;
+
+       /* Initialize Storage */
+       if(g_str_has_suffix(cp_name, "1"))
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_1);
+       else
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_0);
+       if (handle == NULL) {
+               err("Failed to get Storage handle");
+               return 0;
+       }
+
+       /* Initialize parameters */
        in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+       g_hash_table_insert(in_param, "1", g_strdup(mccmnc));
+
        out_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL,
                        (GDestroyNotify) g_hash_table_destroy);
 
-       memset(query, 0, sizeof(query));
-       strcpy(query,"select a.max_pdp_3g from max_pdp a, network_info b ");
-       strcat(query,"where a.network_info_id = b.network_info_id and b.mccmnc = ? ");
+       /* SQL query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcpy(szQuery,"select a.max_pdp_3g from max_pdp a, network_info b ");
+       strcat(szQuery,"where a.network_info_id = b.network_info_id and b.mccmnc = ? ");
 
-       g_hash_table_insert(in_param, "1", g_strdup(mccmnc));
-       tcore_storage_read_query_database(strg_db, handle, query, in_param, out_param, 1);
+       rv = tcore_storage_read_query_database(strg_db, handle, szQuery, in_param, out_param, 1);
+       dbg("Read Database: [%s]", (rv == TRUE ? "SUCCESS" : "FAIL"));
 
        g_hash_table_iter_init(&iter, out_param);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
                GHashTableIter iter2;
                gpointer key2, value2;
 
-               if (value) {
-                       g_hash_table_iter_init(&iter2, (GHashTable *) value);
-                       while (g_hash_table_iter_next(&iter2, &key2, &value2) == TRUE) {
-                               if (g_str_equal(key2, "0") == TRUE) {
-                                       if (!value2 || g_strcmp0((const gchar*) value2, "") == 0) {
-                                               num_of_pdn = 3;
-                                               dbg("there is no value / use default");
-                                       } else {
-                                               num_of_pdn = atoi((const gchar*) value2);
-                                               dbg("value (%d)", num_of_pdn);
-                                       }
-                               }
-                       }
-                       break;
-               }
+               if (value) {
+                       g_hash_table_iter_init(&iter2, (GHashTable *)value);
+                       while (g_hash_table_iter_next(&iter2, &key2, &value2) == TRUE) {
+                               if (g_str_equal(key2, "0") == TRUE) {
+                                       if (!value2 || (g_strcmp0((const char*)value2, "") == 0)) {
+                                               num_of_pdn = 3;
+                                               dbg("There is NO value... Using 'default'");
+                                       }
+                                       else{
+                                               num_of_pdn = atoi((const char*) value2);
+                                               dbg("value (%d)", num_of_pdn);
+                                       }
+
+                                       /* TODO - Check this logic */
+                                       break;
+                               }
+                       }
+                       //break;        /* TODO - Check this logic */
+               }
+       }
+
+       if (num_of_pdn <= 0) {
+               dbg("Loaded value is wrong... restoring to 'default'");
+               num_of_pdn = PS_MAX_CID;
+       }
+       else if (num_of_pdn > PS_MAX_CID) {
+               dbg("Loaded value is gretaer than 3... restoring to 'default'");
+               num_of_pdn = PS_MAX_CID;
+       }
+
+       /* Free resources */
+       g_hash_table_destroy(in_param);
+       g_hash_table_destroy(out_param);
+
+       /* De-initialize Storage */
+       tcore_storage_remove_handle(strg_db, handle);
+
+       return num_of_pdn;
+}
+
+static gboolean __ps_context_remove_profile_tuple(dictionary *dic, int profile_index, gchar *cp_name)
+{
+       gpointer handle;
+       gboolean rv = FALSE;
+       GHashTable *in_param;
+       gchar *network_info_id;
+       gchar *section_key = NULL;
+       char szQuery[5000];
+
+       /* Initialize Storage */
+       if(g_str_has_suffix(cp_name, "1"))
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_1);
+       else
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_0);
+       if (handle == NULL) {
+               err("Failed to get Storage handle");
+               return rv;
+       }
+
+       in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+
+       //network info id
+       section_key = g_strdup_printf("connection:network_info_id_%d", profile_index);
+       network_info_id = iniparser_getstr(dic, section_key);
+       g_hash_table_insert(in_param, "1", g_strdup(network_info_id));
+       g_free(section_key);
+
+       /* SQL query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcat(szQuery," delete from pdp_profile where network_info_id = ?");
+
+       rv = tcore_storage_insert_query_database(strg_db, handle, szQuery, in_param);
+       dbg("delete from pdp_profile where network_info_id = %s, result(%d)", network_info_id, rv);
+       /* Free resources */
+       g_hash_table_destroy(in_param);
+
+       /* De-initialize Storage */
+       tcore_storage_remove_handle(strg_db, handle);
+
+       return rv;
+}
+
+static gboolean __ps_context_insert_profile_tuple(dictionary *dic, int profile_index, gchar* cp_name)
+{
+       gpointer handle;
+       GHashTable *in_param;
+       gboolean rv = FALSE;
+
+       /* Initialize Storage */
+       if(g_str_has_suffix(cp_name, "1"))
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_1);
+       else
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_0);
+       if (handle == NULL) {
+               err("Failed to get Storage handle");
+               return rv;
+       }
+
+       /* Initialize parameters */
+       in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+
+       {//profile id
+               gchar *profile_id;
+               gchar* item_key = NULL;
+               item_key = g_strdup_printf("connection:profile_id_%d", profile_index);
+               profile_id = iniparser_getstr(dic, item_key);
+               g_hash_table_insert(in_param, "1", g_strdup(profile_id));
+               g_free(item_key);
+       }
+
+       {//profile name
+               gchar *profile_name;
+               gchar* item_key = NULL;
+               item_key = g_strdup_printf("connection:profile_name_%d", profile_index);
+               profile_name = iniparser_getstr(dic, item_key);
+               g_hash_table_insert(in_param, "2", g_strdup(profile_name));
+               g_free(item_key);
+       }
+
+       {//apn
+               gchar *apn;
+               gchar *item_key = NULL;
+               item_key = g_strdup_printf("connection:apn_%d", profile_index);
+               apn = iniparser_getstr(dic, item_key);
+               g_hash_table_insert(in_param, "3", g_strdup(apn));
+               g_free(item_key);
+       }
+
+       {//auth type
+               gchar *auth_type;
+               gchar *item_key = NULL;
+               item_key = g_strdup_printf("connection:auth_type_%d", profile_index);
+               auth_type = iniparser_getstr(dic, item_key);
+               g_hash_table_insert(in_param, "4", g_strdup(auth_type));
+               g_free(item_key);
+       }
+
+       {//auth id
+               gchar *auth_id;
+               gchar *item_key = NULL;
+               item_key = g_strdup_printf("connection:auth_id_%d", profile_index);
+               auth_id = iniparser_getstr(dic, item_key);
+               g_hash_table_insert(in_param, "5", g_strdup(auth_id));
+               g_free(item_key);
+       }
+
+       {//auth pwd
+               gchar *auth_pwd;
+               gchar *item_key = NULL;
+               item_key = g_strdup_printf("connection:auth_pwd_%d", profile_index);
+               auth_pwd = iniparser_getstr(dic, item_key);
+               g_hash_table_insert(in_param, "6", g_strdup(auth_pwd));
+               g_free(item_key);
+       }
+
+       {//pdp protocol
+               gchar *pdp_protocol;
+               gchar *item_key = NULL;
+               item_key = g_strdup_printf("connection:pdp_protocol_%d", profile_index);
+               pdp_protocol = iniparser_getstr(dic, item_key);
+               g_hash_table_insert(in_param, "7", g_strdup(pdp_protocol));
+               g_free(item_key);
+       }
+
+       {// proxy ip
+               gchar *proxy_ip_addr;
+               gchar *section_key = NULL;
+               section_key = g_strdup_printf("connection:proxy_ip_addr_%d", profile_index);
+               proxy_ip_addr = iniparser_getstr(dic, section_key);
+               g_hash_table_insert(in_param, "8", g_strdup(proxy_ip_addr));
+               g_free(section_key);
+       }
+
+       {//home url
+               gchar *home_url;
+               gchar *section_key = NULL;
+               section_key = g_strdup_printf("connection:home_url_%d", profile_index);
+               home_url = iniparser_getstr(dic, section_key);
+               g_hash_table_insert(in_param, "9", g_strdup(home_url));
+               g_free(section_key);
+       }
+
+       {//linger time
+               gchar *linger_time;
+               gchar *section_key = NULL;
+               section_key = g_strdup_printf("connection:linger_time_%d", profile_index);
+               linger_time = iniparser_getstr(dic, section_key);
+               g_hash_table_insert(in_param, "10", g_strdup(linger_time));
+               g_free(section_key);
+       }
+
+       {//traffic class
+               gchar *traffic_class;
+               gchar *section_key = NULL;
+               section_key = g_strdup_printf("connection:traffic_class_%d", profile_index);
+               traffic_class = iniparser_getstr(dic, section_key);
+               g_hash_table_insert(in_param, "11", g_strdup(traffic_class));
+               g_free(section_key);
+       }
+
+       {//is static ip address
+               gchar *is_static_ip_addr;
+               gchar *section_key = NULL;
+               section_key = g_strdup_printf("connection:is_static_ip_addr_%d", profile_index);
+               is_static_ip_addr = iniparser_getstr(dic, section_key);
+               g_hash_table_insert(in_param, "12", g_strdup(is_static_ip_addr));
+               g_free(section_key);
+       }
+
+       {//ip address if static ip is true
+               gchar *ip_addr;
+               gchar *section_key = NULL;
+               section_key = g_strdup_printf("connection:ip_addr_%d", profile_index);
+               ip_addr = iniparser_getstr(dic, section_key);
+               g_hash_table_insert(in_param, "13", g_strdup(ip_addr));
+               g_free(section_key);
+       }
+
+       {//is static dns address
+               gchar *is_static_dns_addr;
+               gchar *section_key = NULL;
+               section_key = g_strdup_printf("connection:is_static_dns_addr_%d", profile_index);
+               is_static_dns_addr = iniparser_getstr(dic, section_key);
+               g_hash_table_insert(in_param, "14", g_strdup(is_static_dns_addr));
+               g_free(section_key);
+       }
+
+       {//dns address 1
+               gchar *dns_addr1;
+               gchar *section_key = NULL;
+               section_key = g_strdup_printf("connection:dns_addr1_%d", profile_index);
+               dns_addr1 = iniparser_getstr(dic, section_key);
+               g_hash_table_insert(in_param, "15", g_strdup(dns_addr1));
+               g_free(section_key);
+       }
+
+       {//dns address 2
+               gchar *dns_addr2;
+               gchar *section_key = NULL;
+               section_key = g_strdup_printf("connection:dns_addr2_%d", profile_index);
+               dns_addr2 = iniparser_getstr(dic, section_key);
+               g_hash_table_insert(in_param, "16", g_strdup(dns_addr2));
+               g_free(section_key);
+       }
+
+       {//network info id
+               gchar *network_info_id;
+               gchar *section_key = NULL;
+               section_key = g_strdup_printf("connection:network_info_id_%d", profile_index);
+               network_info_id = iniparser_getstr(dic, section_key);
+               g_hash_table_insert(in_param, "17", g_strdup(network_info_id));
+               g_free(section_key);
+       }
+
+       {//service category id
+               gchar *svc_category_id;
+               gchar *section_key = NULL;
+               section_key = g_strdup_printf("connection:svc_category_id_%d", profile_index);
+               svc_category_id = iniparser_getstr(dic, section_key);
+               g_hash_table_insert(in_param, "18", g_strdup(svc_category_id));
+               g_free(section_key);
        }
 
-       if (num_of_pdn <= 0) {
-               dbg("loaded value is wrong");
-               num_of_pdn = 3;
+       {//hidden
+               gchar *hidden;
+               gchar *section_key = NULL;
+               section_key = g_strdup_printf("connection:hidden_%d", profile_index);
+               hidden = iniparser_getstr(dic, section_key);
+               g_hash_table_insert(in_param, "19", g_strdup(hidden));
+               g_free(section_key);
        }
 
-       g_hash_table_destroy(in_param);
-       g_hash_table_destroy(out_param);
+       {//editable
+               gchar *editable;
+               gchar *section_key = NULL;
+               section_key = g_strdup_printf("connection:editable_%d", profile_index);
+               editable = iniparser_getstr(dic, section_key);
+               g_hash_table_insert(in_param, "20", g_strdup(editable));
+               g_free(section_key);
+       }
 
-       return num_of_pdn;
-}
+       {//default internet connection
+               gchar *default_internet_con;
+               gchar *section_key = NULL;
+               section_key = g_strdup_printf("connection:default_internet_con_%d", profile_index);
+               default_internet_con = iniparser_getstr(dic, section_key);
+               g_hash_table_insert(in_param, "21", g_strdup(default_internet_con));
+               g_free(section_key);
+       }
 
-static gboolean __ps_context_insert_profile_tuple(dictionary *dic, gint index)
-{
-       gboolean rv = FALSE;
-       GHashTable *in_param;
-       gchar *item_key = NULL;
-       gchar *profile = NULL;
-       gchar query[5000] = {0,};
+       {//insert data into table
+               char szQuery[5000];
 
-       in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+               /* SQL query */
+               memset(szQuery, 0x0, sizeof(szQuery));
+               strcpy(szQuery," insert into pdp_profile( ");
+               strcat(szQuery," profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, ");
+               strcat(szQuery," pdp_protocol, proxy_ip_addr, home_url, linger_time,");
+               strcat(szQuery," traffic_class, is_static_ip_addr, ip_addr, is_static_dns_addr,dns_addr1, dns_addr2,");
+               strcat(szQuery," network_info_id, svc_category_id, hidden, editable, default_internet_con, user_defined) values( ");
+               strcat(szQuery," ?, ?, ?, ?, ?, ?,");//1,2,3,4,5,6(auth_pwd)
+               strcat(szQuery," ?, ?, ?, ?,");//7,8,9,10(linger_time)
+               strcat(szQuery," ?, ?, ?, ?, ?, ?,");//11,12,13,14,15,16(dns_addr2)
+               strcat(szQuery," ?, ?, ?, ?, ?, 0)");//17,18,19,20,21(default_internet_con)
 
-       /* Profile id */
-       item_key = (gchar *) g_strdup_printf("connection:profile_id_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "1", g_strdup(profile));
-       g_free(item_key);
-
-       /* Profile name */
-       item_key = (gchar *)g_strdup_printf("connection:profile_name_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "2", g_strdup(profile));
-       g_free(item_key);
-
-       /* APN */
-       item_key = (gchar *)g_strdup_printf("connection:apn_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "3", g_strdup(profile));
-       g_free(item_key);
-
-
-       /* Auth Type */
-       item_key =(gchar *) g_strdup_printf("connection:auth_type_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "4", g_strdup(profile));
-       g_free(item_key);
-
-       /* Auth ID */
-       item_key = (gchar *)g_strdup_printf("connection:auth_id_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "5", g_strdup(profile));
-       g_free(item_key);
-
-       /* Auth Password */
-       item_key = g_strdup_printf("connection:auth_pwd_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "6", g_strdup(profile));
-       g_free(item_key);
-
-       /* PDP Protocol */
-       item_key = g_strdup_printf("connection:pdp_protocol_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "7", g_strdup(profile));
-       g_free(item_key);
-
-       /* proxy ip */
-       item_key = g_strdup_printf("connection:proxy_ip_addr_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "8", g_strdup(profile));
-       g_free(item_key);
-
-       /*  Home URL */
-       item_key = g_strdup_printf("connection:home_url_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "9", g_strdup(profile));
-       g_free(item_key);
-
-       /* Linger Time */
-       item_key = g_strdup_printf("connection:linger_time_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "10", g_strdup(profile));
-       g_free(item_key);
-
-       /* Traffic Class */
-       item_key = g_strdup_printf("connection:traffic_class_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "11", g_strdup(profile));
-       g_free(item_key);
-
-
-       /*  Static IP Address */
-       item_key = g_strdup_printf("connection:is_static_ip_addr_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "12", g_strdup(profile));
-       g_free(item_key);
-
-       /* IP Address if static ip is true */
-       item_key = g_strdup_printf("connection:ip_addr_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "13", g_strdup(profile));
-       g_free(item_key);
-
-       /* Static DNS Address */
-       item_key = g_strdup_printf("connection:is_static_dns_addr_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "14", g_strdup(profile));
-       g_free(item_key);
-
-       /* DNS Address 1 */
-       item_key = g_strdup_printf("connection:dns_addr1_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "15", g_strdup(profile));
-       g_free(item_key);
-
-       /* DNS Address 2 */
-       item_key = g_strdup_printf("connection:dns_addr2_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "16", g_strdup(profile));
-       g_free(item_key);
-
-       /* Network INFO ID */
-       item_key = g_strdup_printf("connection:network_info_id_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "17", g_strdup(profile));
-       g_free(item_key);
-
-       /* Service Category ID */
-       item_key = g_strdup_printf("connection:svc_category_id_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "18", g_strdup(profile ));
-       g_free(item_key);
-
-       /* Hidden */
-       item_key = g_strdup_printf("connection:hidden_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "19", g_strdup(profile ));
-       g_free(item_key);
-
-       /* Editable */
-       item_key = g_strdup_printf("connection:editable_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "20", g_strdup(profile));
-       g_free(item_key);
-
-       /* Default Internet Connection */
-       item_key = g_strdup_printf("connection:default_internet_con_%d", index);
-       profile = (gchar *) iniparser_getstring(dic, item_key, NULL);
-       g_hash_table_insert(in_param, "21", g_strdup(profile));
-       g_free(item_key);
-
-       /* Insert data into table */
-
-       memset(query, 0, sizeof(query));
-       strcpy(query," insert into pdp_profile( ");
-       strcat(query," profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, ");
-       strcat(query," pdp_protocol, proxy_ip_addr, home_url, linger_time,");
-       strcat(query," traffic_class, is_static_ip_addr, ip_addr, is_static_dns_addr,dns_addr1, dns_addr2,");
-       strcat(query," network_info_id, svc_category_id, hidden, editable, default_internet_con, user_defined) values( ");
-       strcat(query," ?, ?, ?, ?, ?, ?,");//1,2,3,4,5,6(auth_pwd)
-       strcat(query," ?, ?, ?, ?,");//7,8,9,10(linger_time)
-       strcat(query," ?, ?, ?, ?, ?, ?,");//11,12,13,14,15,16(dns_addr2)
-       strcat(query," ?, ?, ?, ?, ?, 0)");//17,18,19,20,21(default_internet_con)
-
-       rv = tcore_storage_insert_query_database(strg_db, handle, query, in_param);
-       dbg("insert into pdp_profile result(%d)", rv);
+               rv = tcore_storage_insert_query_database(strg_db, handle, szQuery, in_param);
+               dbg("Insert to Database: [%s]", (rv == TRUE ? "SUCCESS" : "FAIL"));
+       }
+
+       /* Free resources */
        g_hash_table_destroy(in_param);
 
+       /* De-initialize Storage */
+       tcore_storage_remove_handle(strg_db, handle);
+
        return rv;
 }
 
-static gint __ps_context_get_network_id(gchar *mccmnc)
+static int __ps_context_get_network_id(gchar *mccmnc, gchar* cp_name)
 {
-       gint network_id;
+       int network_id;
 
-       network_id = __ps_context_load_network_id_from_database(mccmnc);
+       network_id = __ps_context_load_network_id_from_database(mccmnc, cp_name);
        dbg("network id(%d)", network_id);
-       if (network_id > 0)
+       if(network_id > 0)
                return network_id;
 
-       network_id = __ps_context_insert_network_id_to_database(mccmnc);
-       if (network_id <= 0 ) {
-               err("unable to insert mccmnc into database");
+       network_id = __ps_context_insert_network_id_to_database(mccmnc, cp_name);
+       if(network_id <= 0 )
                return -1;
-       }
 
        return network_id;
 }
 
-GVariant * __ps_context_get_profile_properties(gpointer object, GVariantBuilder *properties)
+GVariant *__ps_context_get_profile_properties(gpointer object, GVariantBuilder *properties)
 {
        gchar *s_authtype = NULL, *s_role = NULL;
-       PsContext *context = NULL;
-       gchar *apn, *username, *password, *proxy_addr, *home_url;
-       TcoreContextAuth auth;
-       TcoreContextRole role;
-       gchar *profile;
-
-
-       tcore_check_return_value(object != NULL, FALSE);
-       tcore_check_return_value(properties != NULL, FALSE);
-
-       context = (PsContext *) object;
-       dbg("get profile properties");
-       tcore_context_get_auth(context->co_context, &auth);
-       s_authtype = g_strdup_printf("%d", auth);
-       tcore_context_get_role(context->co_context, &role);
-       s_role = g_strdup_printf("%d", role);
-
-       tcore_context_get_apn(context->co_context , &apn);
-       tcore_context_get_username(context->co_context,&username);
-       tcore_context_get_password(context->co_context, &password);
-       tcore_context_get_proxy(context->co_context, &proxy_addr);
-       tcore_context_get_mmsurl(context->co_context, &home_url);
-       tcore_context_get_profile_name(context->co_context, &profile);
+       ps_context_t *context = NULL;
+       char *apn,*username,*password,*proxy_addr,*home_url,*profile_name;
+
+       g_return_val_if_fail(object != NULL, NULL);
+       g_return_val_if_fail(properties != NULL, NULL);
+
+       context = (ps_context_t *) object;
+       ps_dbg_ex_co(_ps_service_ref_co_network(_ps_context_ref_service(context)),
+               "get profile properties, path(%s)", _ps_context_ref_path(context));
 
+       s_authtype = g_strdup_printf("%d", tcore_context_get_auth(context->co_context));
+       s_role = g_strdup_printf("%d", tcore_context_get_role(context->co_context));
+
+       apn = tcore_context_get_apn(context->co_context);
+       username = tcore_context_get_username(context->co_context);
+       password = tcore_context_get_password(context->co_context);
+       proxy_addr = tcore_context_get_proxy(context->co_context);
+       home_url = tcore_context_get_mmsurl(context->co_context);
+       profile_name = tcore_context_get_profile_name(context->co_context);
        g_variant_builder_init(properties,G_VARIANT_TYPE("a{ss}"));
 
-       g_variant_builder_add(properties, "{ss}", "path", g_strdup(context->path));
-       if (apn) {
+       g_variant_builder_add(properties, "{ss}", "path", context->path);
+       if (apn){
                g_variant_builder_add(properties, "{ss}", "apn", apn);
        }
        if (s_authtype) {
-               g_variant_builder_add(properties, "{ss}", "auth_type", g_strdup(s_authtype));
+               g_variant_builder_add(properties, "{ss}", "auth_type", s_authtype);
        }
        if (username) {
                g_variant_builder_add(properties, "{ss}", "auth_id", username);
@@ -1051,82 +1501,111 @@ GVariant * __ps_context_get_profile_properties(gpointer object, GVariantBuilder
                g_variant_builder_add(properties, "{ss}", "home_url", home_url);
        }
        if (s_role) {
-               g_variant_builder_add(properties, "{ss}", "svc_ctg_id", g_strdup(s_role));
+               g_variant_builder_add(properties, "{ss}", "svc_ctg_id", s_role);
        }
-       g_variant_builder_add(properties, "{ss}", "profile_name", profile );
-       g_variant_builder_add(properties, "{ss}", "hidden", g_strdup(BOOL2STRING(context->hidden)));
-       g_variant_builder_add(properties, "{ss}", "editable", g_strdup(BOOL2STRING(context->editable)));
-       g_variant_builder_add(properties, "{ss}", "default_internet_conn", g_strdup(BOOL2STRING(context->default_internet)));
+       g_variant_builder_add(properties, "{ss}", "profile_name", profile_name);
+       g_variant_builder_add(properties, "{ss}", "hidden", BOOL2STRING(context->hidden));
+       g_variant_builder_add(properties, "{ss}", "editable", BOOL2STRING(context->editable));
+       g_variant_builder_add(properties, "{ss}", "default_internet_conn", BOOL2STRING(context->default_internet));
 
+       /* Freeing locally allocated memory */
        g_free(s_authtype);
        g_free(s_role);
+       g_free(apn);
+       g_free(username);
+       g_free(password);
+       g_free(proxy_addr);
+       g_free(home_url);
+       g_free(profile_name);
+
+       dbg("Exiting");
 
        return g_variant_builder_end(properties);
 }
 
 static gboolean __ps_context_set_default_connection_enable(gpointer object, gboolean enabled)
 {
-       PsContext *context = object;
-       TcoreContextRole role ;
-       tcore_check_return_value(context != NULL, FALSE);
+       ps_context_t *context = object;
 
-       tcore_context_get_role(context->co_context, &role);
+       g_return_val_if_fail(context != NULL, FALSE);
 
-       if (role == TCORE_CONTEXT_ROLE_INTERNET) {
+       if (tcore_context_get_role(context->co_context) == CONTEXT_ROLE_INTERNET) {
                context->default_internet = enabled;
        }
 
        return TRUE;
 }
 
-static gpointer __ps_context_add_context(gpointer modem, gchar *mccmnc, gint profile_id)
+static gpointer __ps_context_add_context(gpointer modem, gchar *mccmnc, int profile_id)
 {
-       gchar query[5000];
+       gpointer handle;
+       GHashTable *in_param, *out_param;
+       char szQuery[5000];
+       gboolean rv = FALSE;
+
+       ps_modem_t *mdm = modem;
+       CoreObject *co_modem = _ps_modem_ref_co_modem(mdm);
        GDBusConnection *conn = NULL;
        TcorePlugin *p = NULL;
+       gchar *path = NULL;
 
        GHashTableIter iter;
        gpointer object = NULL;
        gpointer key, value;
-       gchar *insert_key1 = NULL;
-       GHashTable *in_param, *out_param;
+
+       /* Initialize Storage */
+       if(g_str_has_suffix(mdm->cp_name, "1"))
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_1);
+       else
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_0);
+       if (handle == NULL) {
+               ps_err_ex_co(co_modem, "Failed to get Storage handle");
+               return NULL;
+       }
+
+       /* Initialize parameters */
        in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+       g_hash_table_insert(in_param, "1", g_strdup_printf("%d", profile_id));
+
        out_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL,
                        (GDestroyNotify) g_hash_table_destroy);
 
-       dbg("create profile by profile id (%d)", profile_id);
+       /* SQL query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcpy(szQuery, "select");
+       strcat(szQuery, " a.network_info_id, a.network_name, a.mccmnc,"); //0 , 1, 2
+       strcat(szQuery, " b.profile_id, b.profile_name, b.apn, "); //3, 4, 5
+       strcat(szQuery, " b.auth_type, b.auth_id, b.auth_pwd,"); //6, 7, 8
+       strcat(szQuery, " b.proxy_ip_addr, b.home_url, b.pdp_protocol, "); //9, 10 , 11
+       strcat(szQuery, " b.linger_time, b.traffic_class, b.is_static_ip_addr, b.ip_addr,"); //12, 13, 14, 15
+       strcat(szQuery, " b.is_static_dns_addr, b.dns_addr1, b.dns_addr2, b.svc_category_id, b.hidden, b.editable, b.default_internet_con, b.user_defined, b.attach_apn"); //16,17, 18, 19, 20, 21, 22, 23, 24
+       strcat(szQuery, " from network_info a, pdp_profile b");
+       strcat(szQuery, " where b.profile_id = ? and a.network_info_id = b.network_info_id ");
+
+       rv = tcore_storage_read_query_database(strg_db, handle, szQuery, in_param, out_param, 26);
+       ps_dbg_ex_co(co_modem, "Read Database: [%s]", (rv == TRUE ? "SUCCESS" : "FAIL"));
+
+       ps_dbg_ex_co(co_modem, "Create profile by Profile ID: [%d]", profile_id);
        conn = _ps_modem_ref_dbusconn(modem);
        p = _ps_modem_ref_plugin(modem);
 
-       memset(query, '\0', sizeof(query));
-       strcpy(query, "select");
-       strcat(query, " a.network_info_id, a.network_name, a.mccmnc,"); //0 , 1, 2
-       strcat(query, " b.profile_id, b.profile_name, b.apn, "); //3, 4, 5
-       strcat(query, " b.auth_type, b.auth_id, b.auth_pwd,"); //6, 7, 8
-       strcat(query, " b.proxy_ip_addr, b.home_url, b.pdp_protocol, "); //9, 10 , 11
-       strcat(query, " b.linger_time, b.traffic_class, b.is_static_ip_addr, b.ip_addr,"); //12, 13, 14, 15
-       strcat(query, " b.is_static_dns_addr, b.dns_addr1, b.dns_addr2, b.svc_category_id, b.hidden, b.editable, b.default_internet_con"); //16, 17, 18, 19, 20, 21, 22
-       strcat(query, " from network_info a, pdp_profile b");
-       strcat(query, " where b.profile_id = ? and a.network_info_id = b.network_info_id ");
-
-       insert_key1 = g_strdup_printf("%d", profile_id);
-       g_hash_table_insert(in_param, "1", g_strdup(insert_key1));
-       tcore_storage_read_query_database(strg_db, handle, query, in_param, out_param, 23);
-
        g_hash_table_iter_init(&iter, out_param);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
-               gchar *path = NULL;
-
-               object = __ps_context_create_context(conn, p, mccmnc, (GHashTable *) value);
+               /* Create context */
+               object = __ps_context_create_context(conn, p, mccmnc, (GHashTable *)value, mdm->cp_name);
                path = _ps_context_ref_path(object);
 
-               g_hash_table_insert(contexts, g_strdup(path), object);
-               dbg("context (%p, %s) insert to hash", object, path);
+               /* Insert to contexts */
+               g_hash_table_insert(mdm->contexts, g_strdup(path), object);
+               ps_dbg_ex_co(co_modem, "context (%p, %s) insert to hash", object, path);
        }
 
+       /* Free resources */
        g_hash_table_destroy(in_param);
        g_hash_table_destroy(out_param);
-       g_free(insert_key1);
+
+       /* De-initialize Storage */
+       tcore_storage_remove_handle(strg_db, handle);
 
        return object;
 }
@@ -1135,176 +1614,223 @@ gboolean _ps_context_initialize(gpointer plugin)
 {
        gboolean rv = TRUE;
 
-       dbg("global variable initialized");
-       rv &=__ps_context_create_storage_handle(plugin);
-       rv &=__ps_context_create_context_hash();
+       rv &= __ps_context_create_storage_handle(plugin);
+       dbg("Global variable initialized: [%s]", (rv == TRUE ? "SUCCESS" : "FAIL"));
 
        return rv;
 }
 
-gboolean _ps_context_reset_profile_table(void)
+gboolean _ps_context_reset_profile_table(gchar *cp_name)
 {
+       gpointer handle;
+       char szQuery[1000];
        gboolean rv = FALSE;
-       GHashTable *in_param;
-       gchar query[5000];
-
-       memset(query, '\0', sizeof(query));
-       strcat(query, " delete from pdp_profile");
-
-       in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
-       rv = tcore_storage_remove_query_database(strg_db, handle, query, in_param);
-
-       g_hash_table_destroy(in_param);
-       return rv;
-}
 
-/*     Funtion : _ps_context_remove_context
- *     Description : removes and unregister the interface for the context
- */
-gboolean _ps_context_remove_context(gpointer context)
-{
-       PsContext *pscontext = context;
+       /* Initialize Storage */
+       if(g_str_has_suffix(cp_name, "1"))
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_1);
+       else
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_0);
+       if (handle == NULL) {
+               err("Failed to get Storage handle");
+               return rv;
+       }
 
-       dbg("Entered");
+       /* SQL query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcat(szQuery, " delete from pdp_profile");
 
-       /*Unexporting the interface for the modem*/
-       g_dbus_interface_skeleton_unexport(G_DBUS_INTERFACE_SKELETON(pscontext->if_obj));
+       rv = tcore_storage_remove_query_database(strg_db, handle, szQuery, NULL);
+       dbg("Reset profile table: [%s]", (rv == TRUE ? "SUCCESS" : "FAIL"));
 
-       /*Removing the context from the static list */
-       g_hash_table_remove(contexts, _ps_context_ref_path(pscontext));
+       /* De-initialize Storage */
+       tcore_storage_remove_handle(strg_db, handle);
 
-       dbg("Exiting");
-       return TRUE;
+       return rv;
 }
 
-
-gboolean _ps_context_fill_profile_table_from_ini_file(void)
+gboolean _ps_context_fill_profile_table_from_ini_file(gchar *cp_name)
 {
-       gint index = 1;
-       gint data_exist = 0;
-
+       int profile_index = 1;
+       int data_exist = 0;
+       gchar *section_key = NULL;
        dictionary *dic = NULL;
-       dic = iniparser_load("/opt/system/csc-default/data/csc-default-data-connection.ini");
+
+       if(g_str_has_suffix(cp_name, "1"))
+               dic = iniparser_load("/opt/system/csc-default/data/csc-default-data-connection-2.ini");
+       else
+               dic = iniparser_load("/opt/system/csc-default/data/csc-default-data-connection.ini");
 
        if (dic == NULL) {
                dbg("fail to load the csc default file");
                return FALSE;
        }
 
-       do {
-               gchar *section_key = NULL;
+       // delete first
+       do{
+               section_key = g_strdup_printf("connection:profile_id_%d", profile_index);
+               dbg("section key (%s)", section_key);
+               data_exist = iniparser_find_entry(dic, section_key);
+               if(!data_exist){
+                       g_free(section_key);
+                       dbg("no more data in ini");
+                       break;
+               }
+               __ps_context_remove_profile_tuple(dic, profile_index, cp_name);
+               g_free(section_key);
+               profile_index++;
+       }while(data_exist);
 
-               section_key = g_strdup_printf("connection:profile_id_%d", index);
+       // insert later
+       profile_index = 1;
+       do {
+               section_key = g_strdup_printf("connection:profile_id_%d", profile_index);
                dbg("section key (%s)", section_key);
                data_exist = iniparser_find_entry(dic, section_key);
-               if (!data_exist) {
+               if(!data_exist){
                        g_free(section_key);
                        iniparser_freedict(dic);
                        dbg("no more data in ini");
                        return TRUE;
                }
-
-               __ps_context_insert_profile_tuple (dic, index);
-
+               __ps_context_insert_profile_tuple(dic, profile_index, cp_name);
                g_free(section_key);
-               index++;
+               profile_index++;
 
-       } while (data_exist);
+       }while(data_exist);
 
        return TRUE;
 }
 
-gboolean _ps_context_reset_hashtable(void)
+gboolean _ps_context_reset_hashtable(gpointer modem_data)
 {
-       if (!contexts)
+       ps_modem_t *modem = modem_data;
+       if(!modem->contexts)
                return TRUE;
 
-       g_hash_table_foreach_remove(contexts, __remove_contexts, NULL);
+       g_hash_table_foreach_remove(modem->contexts, __remove_contexts, NULL);
        return TRUE;
 }
 
-GHashTable* _ps_context_create_hashtable(GDBusConnection *conn, TcorePlugin *p, gchar *mccmnc)
+GHashTable* _ps_context_create_hashtable(gpointer modem)
 {
-       gchar query[5000];
+       gpointer handle;
+       GHashTable *in_param, *out_param;
+       char szQuery[5000];
+       gboolean rv = FALSE;
+       int retry = 1;
+
        GHashTableIter iter;
        gpointer key, value;
-       GHashTable *in_param, *out_param;
+       ps_modem_t *mdm = modem;
+       CoreObject *co_modem = _ps_modem_ref_co_modem(mdm);
+
+       /* Initialize Storage */
+       if(g_str_has_suffix(mdm->cp_name, "1"))
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_1);
+       else
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_0);
+       if (handle == NULL) {
+               ps_err_ex_co(co_modem, "Failed to get Storage handle");
+               return NULL;
+       }
+
        in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
        out_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL,
                        (GDestroyNotify) g_hash_table_destroy);
 
-       dbg("create profile by mccmnc (%s)", mccmnc);
+       ps_dbg_ex_co(co_modem, "create profile by mccmnc (%s)", mdm->operator);
 
-       memset(query, '\0', sizeof(query));
-       strcpy(query, "select");
-       strcat(query, " a.network_info_id, a.network_name, a.mccmnc,"); //0 , 1, 2
-       strcat(query, " b.profile_id, b.profile_name, b.apn, "); //3, 4, 5
-       strcat(query, " b.auth_type, b.auth_id, b.auth_pwd,"); //6, 7, 8
-       strcat(query, " b.proxy_ip_addr, b.home_url, b.pdp_protocol, "); //9, 10 , 11
-       strcat(query, " b.linger_time, b.traffic_class, b.is_static_ip_addr, b.ip_addr,"); //12, 13, 14, 15
-       strcat(query, " b.is_static_dns_addr, b.dns_addr1, b.dns_addr2, b.svc_category_id, b.hidden, b.editable, b.default_internet_con"); //16,17, 18, 19, 20, 21, 22
-       strcat(query, " from network_info a, pdp_profile b");
-       strcat(query, " where a.mccmnc= ? and a.network_info_id = b.network_info_id ");
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcpy(szQuery, "select");
+       strcat(szQuery, " a.network_info_id, a.network_name, a.mccmnc,"); //0 , 1, 2
+       strcat(szQuery, " b.profile_id, b.profile_name, b.apn, "); //3, 4, 5
+       strcat(szQuery, " b.auth_type, b.auth_id, b.auth_pwd,"); //6, 7, 8
+       strcat(szQuery, " b.proxy_ip_addr, b.home_url, b.pdp_protocol, "); //9, 10 , 11
+       strcat(szQuery, " b.linger_time, b.traffic_class, b.is_static_ip_addr, b.ip_addr,"); //12, 13, 14, 15
+       strcat(szQuery, " b.is_static_dns_addr, b.dns_addr1, b.dns_addr2, b.svc_category_id, b.hidden, b.editable, b.default_internet_con, b.user_defined, b.attach_apn"); //16,17, 18, 19, 20, 21, 22, 23, 24
+       strcat(szQuery, " from network_info a, pdp_profile b");
+       strcat(szQuery, " where a.mccmnc= ? and a.network_info_id = b.network_info_id ");
 
-       g_hash_table_insert(in_param, "1", g_strdup(mccmnc));
-       tcore_storage_read_query_database(strg_db, handle, query, in_param, out_param, 23);
+       g_hash_table_insert(in_param, "1", g_strdup(mdm->operator));
+
+       for( retry = 0; retry < 5; retry++) {
+               rv = tcore_storage_read_query_database(strg_db, handle, szQuery, in_param, out_param, 26);
+               if(rv != FALSE) {
+                       break;
+               }
+       }
+       ps_dbg_ex_co(co_modem, "Read Database: [%s], Retry[%d]", (rv == TRUE ? "SUCCESS" : "FAIL"), retry);
 
        g_hash_table_iter_init(&iter, out_param);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
                gchar *path = NULL;
                gpointer object = NULL;
 
-               object = __ps_context_create_context(conn, p, mccmnc, (GHashTable *) value);
+               /* Create new 'context' */
+               object = __ps_context_create_context(mdm->conn, mdm->plg, mdm->operator, (GHashTable *)value, mdm->cp_name);
                path = _ps_context_ref_path(object);
 
-               g_hash_table_insert(contexts, g_strdup(path), object);
-               dbg("context (%p, %s) insert to hash", object, path);
+               g_hash_table_insert(mdm->contexts, g_strdup(path), object);
+               ps_dbg_ex_co(co_modem, "context (%p, %s) insert to hash", object, path);
        }
 
+       /*
+        * In case of specific operator, CP should attach to ESM with 'ESM flag 0'.
+        * in order to that, CP need to has 'NULL APN' on default profile.
+        * For example, need 'NULL APN' to support UICC mobility between Korea Mobile Operators.
+        * (TTAK.KO-06.0357, 2014.07)
+        */
+       __ps_context_create_null_apn_context(mdm);
+
        g_hash_table_destroy(in_param);
        g_hash_table_destroy(out_param);
+
+       /* De-initialize Storage */
+       tcore_storage_remove_handle(strg_db, handle);
+
        dbg("Exiting");
-       return contexts;
+       return mdm->contexts;
 }
 
-GHashTable* _ps_context_ref_hashtable(void)
+GHashTable* _ps_context_ref_hashtable(gpointer modem)
 {
-       tcore_check_return_value(contexts != NULL, NULL);
-       return contexts;
+       ps_modem_t *mdm = modem;
+       g_return_val_if_fail(mdm != NULL, NULL);
+       return mdm->contexts;
 }
 
 gboolean _ps_context_add_context(gpointer modem, gchar *operator, GHashTable *property)
 {
        GHashTable *services = NULL;
        gpointer context = NULL;
+       ps_modem_t *mdm = modem;
 
        GHashTableIter iter;
        gpointer key, value;
-       gint network_id = 0;
-       gint profile_id = 0;
+       int network_id = 0;
+       int profile_id = 0;
 
-       network_id = __ps_context_get_network_id(operator);
-       if (network_id <= 0) {
-               err("fail to add network info");
+       network_id = __ps_context_get_network_id(operator, mdm->cp_name);
+       if(network_id <= 0){
+               dbg("fail to add network info");
                return FALSE;
        }
 
-       profile_id = __ps_context_insert_profile_to_database(property, network_id);
-       if (profile_id <= 0) {
-               err("fail to insert profile info to database");
+       profile_id = __ps_context_insert_profile_to_database(property, network_id, mdm->cp_name);
+       if(profile_id <= 0){
+               dbg("fail to insert profile info to database");
                return FALSE;
        }
 
        context = __ps_context_add_context(modem, operator, profile_id);
-       if (!context) {
-               err("fail to add context");
+       if(!context)
                return FALSE;
-       }
+
        services = _ps_modem_ref_services(modem);
-       if (!services) {
-               err("Fail to ref service ");
+       if(!services)
                return FALSE;
-       }
+
        g_hash_table_iter_init(&iter, services);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
                _ps_service_ref_context(value, context);
@@ -1315,111 +1841,227 @@ gboolean _ps_context_add_context(gpointer modem, gchar *operator, GHashTable *pr
 
 gboolean _ps_context_get_properties_handler(gpointer object, GVariantBuilder *properties)
 {
-       TcoreContextState state;
+       int context_state = 0;
        gboolean active = FALSE;
-       PsContext *context = object;
-       gchar *ip4, *dns1, *dns2, *gw, *proxy, *dev_name;
+       ps_context_t *context = object;
+       char *dev_name = NULL;
+       char *proxy = NULL;
+       char *ipv4_address,*ipv4_gateway,*ipv4_dns1,*ipv4_dns2;
+       char *ipv6_address,*ipv6_gateway,*ipv6_dns1,*ipv6_dns2;
+
 
        dbg("get context properties");
-       tcore_check_return_value(context != NULL, FALSE);
-       tcore_check_return_value(properties != NULL, FALSE);
+       g_return_val_if_fail(context != NULL, FALSE);
+       g_return_val_if_fail(properties != NULL, FALSE);
 
-       tcore_context_get_state(context->co_context, &state);
-       if (state == TCORE_CONTEXT_STATE_ACTIVATED)
+       context_state =    tcore_context_get_state(context->co_context);
+       if (context_state == CONTEXT_STATE_ACTIVATED)
                active = TRUE;
 
-       tcore_context_get_ipv4_addr(context->co_context,&ip4);
-       tcore_context_get_ipv4_gw(context->co_context, &gw);
-       tcore_context_get_ipv4_dns1(context->co_context, &dns1);
-       tcore_context_get_ipv4_dns2(context->co_context, &dns2);
-       tcore_context_get_proxy(context->co_context, &proxy);
-       tcore_context_get_ipv4_devname(context->co_context, &dev_name);
+       /* IPV4 data */
+       ipv4_address = tcore_context_get_ipv4_addr(context->co_context);
+       ipv4_gateway = tcore_context_get_ipv4_gw(context->co_context);
+       ipv4_dns1 = tcore_context_get_ipv4_dns1(context->co_context);
+       ipv4_dns2 = tcore_context_get_ipv4_dns2(context->co_context);
+
+       /* IPV6 data */
+       ipv6_address = tcore_context_get_ipv6_addr(context->co_context);
+       ipv6_gateway = tcore_context_get_ipv6_gw(context->co_context);
+       ipv6_dns1 = tcore_context_get_ipv6_dns1(context->co_context);
+       ipv6_dns2 = tcore_context_get_ipv6_dns2(context->co_context);
+
+       proxy = tcore_context_get_proxy(context->co_context);
+       dev_name = tcore_context_get_ipv4_devname(context->co_context);
 
        g_variant_builder_open(properties, G_VARIANT_TYPE("a{ss}"));
 
-       g_variant_builder_add(properties, "{ss}", "path", g_strdup(context->path));
-       g_variant_builder_add(properties, "{ss}", "active",g_strdup(BOOL2STRING(active)));
-       if (ip4) {
-               g_variant_builder_add(properties, "{ss}", "ipv4_address", ip4);
+       g_variant_builder_add(properties, "{ss}", "path", (context->path));
+       g_variant_builder_add(properties, "{ss}", "active",(BOOL2STRING(active)));
+
+       /* Adding IPV4 data to builder */
+       if(ipv4_address){
+               g_variant_builder_add(properties, "{ss}", "ipv4_address", ipv4_address);
        }
-       if (gw) {
-               g_variant_builder_add(properties, "{ss}", "ipv4_gateway", gw);
+       if(ipv4_gateway){
+               g_variant_builder_add(properties, "{ss}", "ipv4_gateway", ipv4_gateway);
        }
-       if (dns1) {
-               g_variant_builder_add(properties, "{ss}", "ipv4_dns1", dns1);
+       if(ipv4_dns1){
+               g_variant_builder_add(properties, "{ss}", "ipv4_dns1", ipv4_dns1);
        }
-       if (dns2) {
-               g_variant_builder_add(properties, "{ss}", "ipv4_dns2", dns2);
+       if(ipv4_dns2){
+               g_variant_builder_add(properties, "{ss}", "ipv4_dns2", ipv4_dns2);
        }
-       g_variant_builder_add(properties, "{ss}", "ipv6_address", g_strdup("::"));
-       g_variant_builder_add(properties, "{ss}", "ipv6_gateway", g_strdup("::"));
-       g_variant_builder_add(properties, "{ss}", "ipv6_dns1", g_strdup("::"));
-       g_variant_builder_add(properties, "{ss}", "ipv6_dns2", g_strdup("::"));
-       if (proxy) {
+
+       /* Adding IPV6 data to builder */
+       g_variant_builder_add(properties, "{ss}", "ipv6_address",
+               (ipv6_address == NULL ? "::" : ipv6_address));
+       g_variant_builder_add(properties, "{ss}", "ipv6_gateway",
+               (ipv6_gateway == NULL ? "::" : ipv6_gateway));
+       g_variant_builder_add(properties, "{ss}", "ipv6_dns1",
+               (ipv6_dns1 == NULL ? "::" : ipv6_dns1));
+       g_variant_builder_add(properties, "{ss}", "ipv6_dns2",
+               (ipv6_dns2 == NULL ? "::" : ipv6_dns2));
+
+       if(proxy){
                g_variant_builder_add(properties, "{ss}", "proxy", proxy);
        }
-       if (dev_name) {
+       if(dev_name){
                g_variant_builder_add(properties, "{ss}", "dev_name", dev_name);
        }
-       g_variant_builder_add(properties, "{ss}", "default_internet_conn", g_strdup(BOOL2STRING(context->default_internet)));
+       g_variant_builder_add(properties, "{ss}", "default_internet_conn", (BOOL2STRING(context->default_internet)));
        g_variant_builder_close(properties);
 
+       /* Freeing local memory */
+       g_free(ipv4_address);
+       g_free(ipv4_gateway);
+       g_free(ipv4_dns1);
+       g_free(ipv4_dns2);
+       g_free(ipv6_address);
+       g_free(ipv6_gateway);
+       g_free(ipv6_dns1);
+       g_free(ipv6_dns2);
+       g_free(proxy);
+       g_free(dev_name);
+
+       dbg("Exiting");
        return TRUE;
 }
 
 
 GVariant * _ps_context_get_properties(gpointer object, GVariantBuilder *properties)
 {
-       TcoreContextState context_state ;
+       int context_state = 0;
        gboolean active = FALSE;
-       PsContext *context = object;
-       gchar *dev_name = NULL;
-       gchar *proxy = NULL;
-       gchar *ipv4_address,*ipv4_gateway,*ipv4_dns1,*ipv4_dns2;
+       ps_context_t *context = object;
+       char *dev_name = NULL;
+       char *proxy = NULL;
+       char *ipv4_address,*ipv4_gateway,*ipv4_dns1,*ipv4_dns2;
+       char *ipv6_address,*ipv6_gateway,*ipv6_dns1,*ipv6_dns2;
+       pcscf_addr *pcscf_ipv4, *pcscf_ipv6;
+       unsigned int i;
+
+       ps_dbg_ex_co(_ps_service_ref_co_network(_ps_context_ref_service(context)), "get context properties");
+       g_return_val_if_fail(context != NULL, NULL);
+       g_return_val_if_fail(properties != NULL, NULL);
+
+       context_state =    tcore_context_get_state(context->co_context);
+       if (context_state == CONTEXT_STATE_ACTIVATED)
+               active = TRUE;
 
-       dbg("get context properties");
-       tcore_check_return_value(context != NULL, FALSE);
-       tcore_check_return_value(properties != NULL, FALSE);
+       active &= context->b_active;
 
-       tcore_context_get_state(context->co_context, &context_state);
-       if (context_state == TCORE_CONTEXT_STATE_ACTIVATED)
-               active = TRUE;
+       /* IPV4 data */
+       ipv4_address = tcore_context_get_ipv4_addr(context->co_context);
+       ipv4_gateway = tcore_context_get_ipv4_gw(context->co_context);
+       ipv4_dns1 = tcore_context_get_ipv4_dns1(context->co_context);
+       ipv4_dns2 = tcore_context_get_ipv4_dns2(context->co_context);
 
+       /* IPV6 data */
+       ipv6_address = tcore_context_get_ipv6_addr(context->co_context);
+       ipv6_gateway = tcore_context_get_ipv6_gw(context->co_context);
+       ipv6_dns1 = tcore_context_get_ipv6_dns1(context->co_context);
+       ipv6_dns2 = tcore_context_get_ipv6_dns2(context->co_context);
 
-       tcore_context_get_ipv4_addr(context->co_context, &ipv4_address) ;
-       tcore_context_get_ipv4_gw(context->co_context, &ipv4_gateway );
-       tcore_context_get_ipv4_dns1(context->co_context, &ipv4_dns1);
-       tcore_context_get_ipv4_dns2(context->co_context , &ipv4_dns2);
-       tcore_context_get_proxy(context->co_context, &proxy);
-       tcore_context_get_ipv4_devname(context->co_context, &dev_name);
+       /* P-CSCF data */
+       pcscf_ipv4 = tcore_context_get_pcscf_ipv4_addr(context->co_context);
+       pcscf_ipv6 = tcore_context_get_pcscf_ipv6_addr(context->co_context);
+
+       proxy = tcore_context_get_proxy(context->co_context);
+       dev_name = tcore_context_get_ipv4_devname(context->co_context);
 
        g_variant_builder_init(properties, G_VARIANT_TYPE("a{ss}"));
 
-       g_variant_builder_add(properties, "{ss}", "path", g_strdup(context->path));
-       g_variant_builder_add(properties, "{ss}", "active",g_strdup(BOOL2STRING(active)));
-       if (ipv4_address) {
+       g_variant_builder_add(properties, "{ss}", "path", (context->path));
+       g_variant_builder_add(properties, "{ss}", "active",(BOOL2STRING(active)));
+
+       /* Adding IPV4 data to builder */
+       if(ipv4_address){
                g_variant_builder_add(properties, "{ss}", "ipv4_address", ipv4_address);
        }
-       if (ipv4_gateway) {
+       if(ipv4_gateway){
                g_variant_builder_add(properties, "{ss}", "ipv4_gateway", ipv4_gateway);
        }
-       if (ipv4_dns1) {
+       if(ipv4_dns1){
                g_variant_builder_add(properties, "{ss}", "ipv4_dns1", ipv4_dns1);
        }
-       if (ipv4_dns2) {
+       if(ipv4_dns2){
                g_variant_builder_add(properties, "{ss}", "ipv4_dns2", ipv4_dns2);
        }
-       g_variant_builder_add(properties, "{ss}", "ipv6_address", g_strdup("::"));
-       g_variant_builder_add(properties, "{ss}", "ipv6_gateway", g_strdup("::"));
-       g_variant_builder_add(properties, "{ss}", "ipv6_dns1", g_strdup("::"));
-       g_variant_builder_add(properties, "{ss}", "ipv6_dns2", g_strdup("::"));
-       if (proxy) {
+
+       /* Adding IPV6 data to builder */
+       g_variant_builder_add(properties, "{ss}", "ipv6_address",
+               (ipv6_address == NULL ? "::" : ipv6_address));
+       g_variant_builder_add(properties, "{ss}", "ipv6_gateway",
+               (ipv6_gateway == NULL ? "::" : ipv6_gateway));
+       g_variant_builder_add(properties, "{ss}", "ipv6_dns1",
+               (ipv6_dns1 == NULL ? "::" : ipv6_dns1));
+       g_variant_builder_add(properties, "{ss}", "ipv6_dns2",
+               (ipv6_dns2 == NULL ? "::" : ipv6_dns2));
+
+       if(proxy){
                g_variant_builder_add(properties, "{ss}", "proxy", proxy);
        }
-       if (dev_name) {
+       if(dev_name){
                g_variant_builder_add(properties, "{ss}", "dev_name", dev_name);
        }
-       g_variant_builder_add(properties, "{ss}", "default_internet_conn", g_strdup(BOOL2STRING(context->default_internet)));
+
+       if (pcscf_ipv4) {
+               char *buf;
+
+               buf = g_strdup_printf("%d", pcscf_ipv4->count);
+               g_variant_builder_add(properties, "{ss}", "pcscf_ipv4_count", buf);
+               g_free(buf);
+
+               for (i = 0; i < pcscf_ipv4->count; i++) {
+                       buf = g_strdup_printf("%s_%d", "pcscf_ipv4_addr", i);
+                       g_variant_builder_add(properties, "{ss}", buf, pcscf_ipv4->addr[i]);
+                       g_free(buf);
+               }
+       } else {
+               /* Update pCSCF address (IPv4) count as '0' */
+               g_variant_builder_add(properties, "{ss}", "pcscf_ipv4_count", "0");
+       }
+
+       if (pcscf_ipv6) {
+               char *buf;
+
+               buf = g_strdup_printf("%d", pcscf_ipv6->count);
+               g_variant_builder_add(properties, "{ss}", "pcscf_ipv6_count", buf);
+               g_free(buf);
+
+               for (i = 0; i < pcscf_ipv6->count; i++) {
+                       buf = g_strdup_printf("%s_%d", "pcscf_ipv6_addr", i);
+                       g_variant_builder_add(properties, "{ss}", buf, pcscf_ipv6->addr[i]);
+                       g_free(buf);
+               }
+       } else {
+               /* Update pCSCF address (IPv6) count as '0' */
+               g_variant_builder_add(properties, "{ss}", "pcscf_ipv6_count", "0");
+       }
+
+       g_variant_builder_add(properties, "{ss}", "default_internet_conn", BOOL2STRING(context->default_internet));
+
+       /* Freeing local memory */
+       if (pcscf_ipv4) {
+               for (i = 0; i < pcscf_ipv4->count; i++)
+                       g_free(pcscf_ipv4->addr[i]);
+               g_free(pcscf_ipv4);
+       }
+       if (pcscf_ipv6) {
+               for (i = 0; i < pcscf_ipv6->count; i++)
+                       g_free(pcscf_ipv6->addr[i]);
+               g_free(pcscf_ipv6);
+       }
+       g_free(ipv4_address);
+       g_free(ipv4_gateway);
+       g_free(ipv4_dns1);
+       g_free(ipv4_dns2);
+       g_free(ipv6_address);
+       g_free(ipv6_gateway);
+       g_free(ipv6_dns1);
+       g_free(ipv6_dns2);
+       g_free(proxy);
+       g_free(dev_name);
 
        dbg("Exiting");
        return g_variant_builder_end(properties);
@@ -1427,27 +2069,27 @@ GVariant * _ps_context_get_properties(gpointer object, GVariantBuilder *properti
 
 gboolean _ps_context_set_alwayson_enable(gpointer object, gboolean enabled)
 {
-       PsContext *context = object;
-       TcoreContextRole role;
-       tcore_check_return_value(context != NULL, FALSE);
+       ps_context_t *context = object;
+       int role = CONTEXT_ROLE_UNKNOWN;
+       g_return_val_if_fail(context != NULL, FALSE);
 
-       tcore_context_get_role(context->co_context, &role);
+       role = tcore_context_get_role(context->co_context);
 
-       if (role == TCORE_CONTEXT_ROLE_INTERNET && context->default_internet) {
+       if ((role == CONTEXT_ROLE_INTERNET) && context->default_internet) {
                context->alwayson = enabled;
        }
 
        return TRUE;
 }
 
-gboolean _ps_context_get_default_internet(gpointer object)
+gboolean _ps_context_get_default_context(gpointer object, int svc_cat_id)
 {
-       PsContext *context = object;
-       TcoreContextRole role;
-       tcore_check_return_value(context != NULL, FALSE);
+       ps_context_t *context = object;
+       int role = CONTEXT_ROLE_UNKNOWN;
+       g_return_val_if_fail(context != NULL, FALSE);
 
-       tcore_context_get_role(context->co_context, &role);
-       if (role == TCORE_CONTEXT_ROLE_INTERNET && context->default_internet) {
+       role = tcore_context_get_role(context->co_context);
+       if(role == svc_cat_id && context->default_internet){
                return TRUE;
        }
 
@@ -1456,8 +2098,8 @@ gboolean _ps_context_get_default_internet(gpointer object)
 
 gboolean _ps_context_set_service(gpointer object, gpointer service)
 {
-       PsContext *context = object;
-       tcore_check_return_value(context != NULL, FALSE);
+       ps_context_t *context = object;
+       g_return_val_if_fail(context != NULL, FALSE);
 
        context->p_service = service;
        return TRUE;
@@ -1465,32 +2107,32 @@ gboolean _ps_context_set_service(gpointer object, gpointer service)
 
 gpointer _ps_context_ref_service(gpointer object)
 {
-       PsContext *context = object;
-       tcore_check_return_value(context != NULL, FALSE);
+       ps_context_t *context = object;
+       g_return_val_if_fail(context != NULL, NULL);
 
        return context->p_service;
 }
 
 gchar* _ps_context_ref_path(gpointer object)
 {
-       PsContext *context = object;
-       tcore_check_return_value(context != NULL, NULL);
+       ps_context_t *context = object;
+       g_return_val_if_fail(context != NULL, NULL);
 
        return context->path;
 }
 
 gboolean _ps_context_get_alwayson_enable(gpointer object)
 {
-       PsContext *context = object;
-       tcore_check_return_value(context != NULL, FALSE);
+       ps_context_t *context = object;
+       g_return_val_if_fail(context != NULL, FALSE);
 
        return context->alwayson;
 }
 
 gpointer _ps_context_ref_co_context(gpointer object)
 {
-       PsContext *context = object;
-       tcore_check_return_value(context != NULL, NULL);
+       ps_context_t *context = object;
+       g_return_val_if_fail(context != NULL, NULL);
 
        return context->co_context;
 }
@@ -1498,72 +2140,129 @@ gpointer _ps_context_ref_co_context(gpointer object)
 gboolean _ps_context_set_connected(gpointer object, gboolean enabled)
 {
        gchar *ipv4 = NULL;
-       PsContext *context = object;
+       gchar *ipv6 = NULL;
+       ps_context_t *context = object;
+       Storage *strg_vconf = NULL;
+       gpointer p_modem = NULL;
+
+       gboolean b_roaming_checker = TRUE;
+       gboolean data_allowed = FALSE;
+       gboolean b_mms_checker = FALSE;
+       gboolean b_ims_checker = TRUE;
+
+       enum co_context_role role = CONTEXT_ROLE_UNKNOWN;
+
+       g_return_val_if_fail(context != NULL, FALSE);
+
+       strg_vconf = tcore_server_find_storage(tcore_plugin_ref_server(context->plg), "vconf");
+       data_allowed = tcore_storage_get_bool(strg_vconf, STORAGE_KEY_3G_ENABLE);
+       ipv4 = tcore_context_get_ipv4_addr(context->co_context);
+       ipv6 = tcore_context_get_ipv6_addr(context->co_context);
+       role = tcore_context_get_role(context->co_context);
+       p_modem = _ps_service_ref_modem(context->p_service);
+
+       if( role == CONTEXT_ROLE_MMS || role == CONTEXT_ROLE_PREPAID_MMS){
+               b_mms_checker = TRUE;
+       }
+
+       if( role == CONTEXT_ROLE_IMS || role == CONTEXT_ROLE_IMS_EMERGENCY){
+               b_ims_checker = TRUE;
+       }
+
+#if !defined(TIZEN_SUPPORT_MMS_CONNECT_FORCE)
+               ps_dbg_ex_co(_ps_service_ref_co_network(_ps_context_ref_service(context)), "csc runtime feature disabled");
+               b_mms_checker = FALSE;
+#endif
 
-       tcore_context_get_ipv4_addr(context->co_context, &ipv4);
-       dbg("IPv4 Address: [%s]", ipv4);
+       context->b_active = enabled;
+       if( (_ps_modem_get_roaming(p_modem)) && !(_ps_modem_get_data_roaming_allowed(p_modem)) ){
+               dbg("roaming network is not allowed");
+               b_roaming_checker = FALSE;
+       }
 
        if (enabled) {
-               dbg("Set state - ACTIVATED");
-               tcore_context_set_state(context->co_context, TCORE_CONTEXT_STATE_ACTIVATED);
 
-               if ( g_str_equal(ipv4, "0.0.0.0") == TRUE ) {
-                       dbg("ip address is 0.0.0.0");
+               tcore_context_set_state(context->co_context, CONTEXT_STATE_ACTIVATED);
+
+               if(context->deact_required == TRUE) {
+                       warn("Deactivation is required for context(%p)", context);
                        _ps_service_deactivate_context(context->p_service, context);
+                       context->deact_required = FALSE;
                        return TRUE;
                }
 
-               _ps_service_reset_connection_timer(context);
+               if((g_str_equal(ipv4, "0.0.0.0") == TRUE) && (ipv6 == NULL)) {
+                       dbg("ip address is NULL");
+                       _ps_service_deactivate_context(context->p_service, context);
+                       free(ipv4);
+                       g_free(ipv6);
+                       return TRUE;
+               }
 
-       } else {
-               dbg("Set state - DEACTIVATED");
-               tcore_context_set_state(context->co_context, TCORE_CONTEXT_STATE_DEACTIVATED);
+               _ps_service_reset_connection_timer(context);
 
-               /* Reset device information */
+               if(b_roaming_checker && (data_allowed || b_mms_checker || b_ims_checker) )
+                       __ps_context_emit_property_changed_signal(context);
+       }
+       else {
+               if(context->delete_required == TRUE) {
+                       warn("Delete of context(%p) is required", context);
+                       __ps_context_remove_context(context);
+                       return TRUE;
+               }
+               tcore_context_set_state(context->co_context, CONTEXT_STATE_DEACTIVATED);
                tcore_context_reset_devinfo(context->co_context);
-
-               /* Reset connection timer */
-        _ps_service_connection_timer(context->p_service, context);
+               __ps_context_emit_property_changed_signal(context);
        }
 
-       /* Emit Property changed signal */
-       __ps_context_emit_property_changed_signal(context);
-
-       /* Free memory */
-       g_free(ipv4);
+       free(ipv4);
+       g_free(ipv6);
        return TRUE;
 }
 
-gboolean _ps_context_set_ps_defined(gpointer *object, gboolean value, int cid)
+gboolean _ps_context_set_ps_defined(gpointer *object, gboolean value)
 {
-       PsContext *context = (PsContext *)object;
-       guint id;
-       tcore_check_return_value(context != NULL, FALSE);
-       tcore_context_get_id(context->co_context, &id);
-       if (id == (unsigned int)cid) {
-               context->ps_defined = value;
-               dbg("context(%p) ps_defined(%d) cid(%d)", context, context->ps_defined, cid);
-               return TRUE;
-       }
-       dbg("context(%p) does not have cid(%d)",context, cid);
+       ps_context_t *context = (ps_context_t *)object;
+       CoreObject *co_network = _ps_service_ref_co_network(_ps_context_ref_service(context));
 
-       return FALSE;
+       g_return_val_if_fail(context != NULL, FALSE);
+
+       context->ps_defined = value;
+       ps_dbg_ex_co(co_network, "context(%p) ps_defined(%d)", context, context->ps_defined);
+       return TRUE;
 }
 
 gboolean _ps_context_get_ps_defined(gpointer *object)
 {
-       PsContext *context = (PsContext *)object;
+       ps_context_t *context = (ps_context_t *)object;
 
-       dbg("context(%p), ps_defined(%d)", context, context->ps_defined);
+       ps_dbg_ex_co(_ps_service_ref_co_network(_ps_context_ref_service(context)), "context(%p), ps_defined(%d)", context, context->ps_defined);
 
        return context->ps_defined;
 }
 
+gboolean _ps_context_set_only_attach(gpointer *object, gboolean value)
+{
+       ps_context_t *context = (ps_context_t *)object;
+       g_return_val_if_fail(context != NULL, FALSE);
+
+       context->b_only_attach = value;
+       return TRUE;
+}
+
+gboolean _ps_context_get_only_attach(gpointer *object)
+{
+       ps_context_t *context = (ps_context_t *)object;
+       g_return_val_if_fail(context != NULL, FALSE);
+
+       return context->b_only_attach;
+}
+
 gboolean _ps_context_reset_user_data(gpointer object)
 {
-       PsContext *context = (PsContext *)object;
+       ps_context_t *context = (ps_context_t *)object;
 
-       tcore_check_return_value(context != NULL, FALSE);
+       g_return_val_if_fail(context != NULL, FALSE);
        context->user_data = NULL;
 
        return TRUE;
@@ -1571,30 +2270,69 @@ gboolean _ps_context_reset_user_data(gpointer object)
 
 gpointer _ps_context_get_user_data(gpointer object)
 {
-       PsContext *context = (PsContext *)object;
+       ps_context_t *context = (ps_context_t *)object;
        return context->user_data;
 }
 
-TelReturn _ps_connection_hdlr(gpointer object)
+TReturn _ps_connection_hdlr(gpointer object)
 {
-       TelReturn rv = TEL_RETURN_FAILURE;
-       PsContext *pscontext = object;
+       int rv = TCORE_RETURN_FAILURE;
+       ps_context_t *pscontext = object;
+       CoreObject *co_network = _ps_service_ref_co_network(_ps_context_ref_service(pscontext));
 
        _ps_context_set_alwayson_enable(pscontext, TRUE);
        rv = _ps_service_activate_context(pscontext->p_service, pscontext);
-       if (rv != TEL_RETURN_SUCCESS) {
-               dbg("fail to activate context connection");
+       if (rv != TCORE_RETURN_SUCCESS) {
+               ps_dbg_ex_co(co_network, "fail to activate context connection");
                return rv;
        }
 
-       dbg("success to activate context");
+       ps_dbg_ex_co(co_network, "success to activate context");
+       return rv;
+}
+
+gboolean _ps_context_create_cdma_profile(gchar* mccmnc, gchar* cp_name)
+{
+       gpointer handle;
+       gboolean rv = FALSE;
+       GHashTable *in_param;
+       char szQuery[5000];
+
+       /* Initialize Storage */
+       if(g_str_has_suffix(cp_name, "1"))
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_1);
+       else
+               handle = tcore_storage_create_handle(strg_db, DATABASE_PATH_0);
+       if (handle == NULL) {
+               err("Failed to get Storage handle");
+               return FALSE;
+       }
+
+       /* Make default MMS profile for CDMA */
+       memset(szQuery, 0, 5000);
+       strcpy(szQuery," update pdp_profile set ");
+       strcat(szQuery," home_url = ? ");
+       strcat(szQuery," where profile_id = 1 and svc_category_id = 2 ");
+
+       in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+
+       g_hash_table_insert(in_param, "1", g_strdup("http://mms.vtext.com/servlets/mms")); // home_url
+
+       rv = tcore_storage_insert_query_database(strg_db, handle, szQuery, in_param);
+       dbg("insert into pdp_profile result(%d)", rv);
+       g_hash_table_destroy(in_param);
+
+       /* De-initialize Storage */
+       tcore_storage_remove_handle(strg_db, handle);
+
        return rv;
 }
 
 void _ps_default_connection_hdlr(gpointer object)
 {
-       //int rv = TEL_RETURN_FAILURE;
-       PsContext *pscontext = (PsContext *)object;
+       int rv = TCORE_RETURN_FAILURE;
+       ps_context_t *pscontext = (ps_context_t *)object;
+       CoreObject *co_network = _ps_service_ref_co_network(_ps_context_ref_service(pscontext));
 
        _ps_service_reset_connection_timer(pscontext);
        __ps_context_update_default_internet_to_db(pscontext, TRUE);
@@ -1603,30 +2341,30 @@ void _ps_default_connection_hdlr(gpointer object)
        __ps_context_set_default_connection_enable(pscontext, TRUE);
        _ps_context_set_alwayson_enable(pscontext, TRUE);
        __ps_context_emit_property_changed_signal(pscontext);
-#if 0
+
        //request to connect
        rv = _ps_service_connect_default_context(pscontext->p_service);
-       if (rv == TEL_RETURN_PS_NETWORK_NOT_READY) {
-               int cid = -1;
-               PsService * p_service = (PsService *)pscontext->p_service;
+       if (rv == TCORE_RETURN_PS_NETWORK_NOT_READY) {
+               unsigned char cid = -1;
+               ps_service_t * p_service = (ps_service_t *)pscontext->p_service;
 
-               dbg("PS is not attached yet, release resources.");
+               ps_dbg_ex_co(co_network, "PS is not attached yet, release resources.");
 
-               tcore_context_get_id(pscontext->co_context , &cid);
-               _ps_context_set_ps_defined((gpointer)pscontext, FALSE, cid);
+               cid = tcore_context_get_id(pscontext->co_context);
+               _ps_context_set_ps_defined((gpointer)pscontext, FALSE);
                tcore_ps_set_cid_active(p_service->co_ps, cid, FALSE);
                tcore_ps_clear_context_id(p_service->co_ps, pscontext->co_context);
        }
-#endif
-       dbg("complete to change the default connection");
+
+       ps_dbg_ex_co(co_network, "complete to change the default connection");
        return;
 }
 
-gint _ps_context_get_number_of_pdn(gchar *operator)
+gint _ps_context_get_number_of_pdn(gchar *operator, gchar *cp_name)
 {
        gint num_of_pdn = 0;
 
-       num_of_pdn = __ps_context_load_num_of_pdn_from_database(operator);
+       num_of_pdn = __ps_context_load_num_of_pdn_from_database(operator, cp_name);
        dbg("loaded num_of_pdn (%d)", num_of_pdn);
 
        return num_of_pdn;
@@ -1634,17 +2372,18 @@ gint _ps_context_get_number_of_pdn(gchar *operator)
 
 gboolean _ps_context_handle_ifaceup(gpointer user_data)
 {
-       PsContext *pscontext = user_data;
-       TcoreContextState context_state ;
-       gchar *devname = NULL;
-       tcore_context_get_state(pscontext->co_context , &context_state);
-       dbg("context_state: %d", context_state);
-       if (context_state == TCORE_CONTEXT_STATE_ACTIVATED) {
-               tcore_context_get_ipv4_devname(pscontext->co_context, &devname );
-               dbg("Celluar profile: Emit property signal to provide IP configuration, devname(%s)", devname);
+       ps_context_t *pscontext = user_data;
+       CoreObject *co_network = _ps_service_ref_co_network(_ps_context_ref_service(pscontext));
+       int context_state = 0;
+
+       context_state =  tcore_context_get_state(pscontext->co_context);
+       ps_dbg_ex_co(co_network, "context_state: %d", context_state);
+       if (context_state == CONTEXT_STATE_ACTIVATED) {
+               char * devname = tcore_context_get_ipv4_devname(pscontext->co_context);
+               ps_dbg_ex_co(co_network, "Celluar profile: Emit property signal to provide IP configuration, devname(%s)", devname);
                pscontext->b_active = TRUE;
-               if (TEL_RETURN_SUCCESS != tcore_util_netif(devname, TRUE)) {
-                       dbg("Failed to bring up interface");
+               if (TCORE_RETURN_SUCCESS != tcore_util_netif_up(devname)){
+                       ps_dbg_ex_co(co_network, "Failed to bring up interface");
                }
                /*
                 * 20131212, Deprecated: Fixed by HTTP stack.
@@ -1657,36 +2396,36 @@ gboolean _ps_context_handle_ifaceup(gpointer user_data)
                 * ===============================================================================
                 */
                __ps_context_emit_property_changed_signal(pscontext);
+               g_free(devname);
                return TRUE;
        }
        return FALSE;
 }
-#if 0
+
 gboolean _ps_context_handle_ifacedown(gpointer user_data)
 {
-       PsContext *pscontext = user_data;
-       gchar * devname;
-       gchar *ipv4;
-       TcoreContextState context_state ;
-
-       tcore_context_get_state(pscontext->co_context, &context_state);
-       dbg("context_state: %d", context_state);
-       if (context_state == TCORE_CONTEXT_STATE_ACTIVATED) {
-               tcore_context_get_ipv4_devname(pscontext->co_context, &devname);
-               dbg("Cellular profile: Do not send PDP deactivation request message to Modem.");
+       ps_context_t *pscontext = user_data;
+       CoreObject *co_network = _ps_service_ref_co_network(_ps_context_ref_service(pscontext));
+               int context_state = 0;
+
+       context_state =  tcore_context_get_state(pscontext->co_context);
+       ps_dbg_ex_co(co_network, "context_state: %d", context_state);
+       if (context_state == CONTEXT_STATE_ACTIVATED) {
+               char * devname = tcore_context_get_ipv4_devname(pscontext->co_context);
+               ps_dbg_ex_co(co_network, "Cellular profile: Do not send PDP deactivation request message to Modem.");
                pscontext->b_active = FALSE;
-               dbg("reset socket connections, devname(%s)", devname);
-               tcore_context_get_ipv4_addr(pscontext->co_context, &ipv4);
-               tcore_util_reset_ipv4_socket(devname, ipv4);
-               if (TEL_RETURN_SUCCESS != tcore_util_netif(devname, FALSE)) {
-                       dbg("Failed to bring down interface");
+               ps_dbg_ex_co(co_network, "reset socket connections, devname(%s)", devname);
+               tcore_util_reset_ipv4_socket(devname, tcore_context_get_ipv4_addr(pscontext->co_context));
+               if (TCORE_RETURN_SUCCESS != tcore_util_netif_down(devname)){
+                       ps_dbg_ex_co(co_network, "Failed to bring down interface");
                }
                __ps_context_emit_property_changed_signal(pscontext);
+               g_free(devname);
                return TRUE;
        }
        return FALSE;
 }
-#endif
+
 
 static gboolean on_context_get_properties (PacketServiceContext *obj_context,
                GDBusMethodInvocation *invocation,
@@ -1695,6 +2434,9 @@ static gboolean on_context_get_properties (PacketServiceContext *obj_context,
        GVariant *gv = NULL;
        GVariantBuilder property;
 
+       if (!ps_util_check_access_control (invocation, AC_PS_PUBLIC, "r"))
+               return TRUE;
+
        dbg("Entered");
        gv = _ps_context_get_properties(user_data, &property);
        packet_service_context_complete_get_properties(obj_context, invocation, gv);
@@ -1708,9 +2450,13 @@ static gboolean on_context_get_profile (PacketServiceContext *obj_context,
        GVariant *gv = NULL;
        GVariantBuilder profile;
 
+       if (!ps_util_check_access_control (invocation, AC_PS_PUBLIC, "r"))
+               return TRUE;
+
        dbg("Entered");
        gv = __ps_context_get_profile_properties(user_data, &profile);
        packet_service_context_complete_get_profile(obj_context, invocation, gv);
+
        return TRUE;
 }
 
@@ -1718,151 +2464,172 @@ static gboolean on_context_handle_activate (PacketServiceContext *obj_context,
                GDBusMethodInvocation *invocation,
                gpointer user_data)
 {
-       gint rv = 0;
-       TelReturn result = TEL_RETURN_FAILURE;
+       gboolean rv = FALSE;
+       TReturn result = TCORE_RETURN_FAILURE;
 
        gchar *apn = NULL;
-       TcoreContextState context_state = 0;
+       int context_state = 0;
+       unsigned int max_pdn = 0, num_of_active_cids = 0;
        gpointer p_service = NULL; gpointer co_ps = NULL;
-       gpointer c_def_context = NULL; unsigned int cid_def = 0;
+       gpointer c_def_context = NULL; unsigned char cid_def = 0;
+       GSList *active_cids = NULL;
+       CoreObject *co_network;
+
+       ps_context_t *pscontext = user_data;
 
-       PsContext *pscontext = user_data;
+       if (!ps_util_check_access_control (invocation, AC_PS_PRIVATE, "w"))
+               return TRUE;
 
        dbg("Entered");
-       if (pscontext == NULL) {
+       if(pscontext == NULL){
                err("activation request object is NULL");
                FAIL_RESPONSE(invocation,  PS_ERR_NO_PROFILE);
                return TRUE;
        }
 
        p_service = pscontext->p_service;
-       if (!p_service) {
+       if(!p_service){
                err("service object is null");
                FAIL_RESPONSE(invocation,  PS_ERR_NO_PROFILE);
                return TRUE;
        }
 
+       co_network = _ps_service_ref_co_network(_ps_context_ref_service(pscontext));
        co_ps = _ps_service_ref_co_ps(p_service);
-       if (!co_ps) {
-               err("core object is null");
+       if(!co_ps){
+               ps_err_ex_co(co_network, "core object is null");
                FAIL_RESPONSE(invocation,  PS_ERR_NO_PROFILE);
                return TRUE;
        }
 
-       dbg("activate context(%s)", _ps_context_ref_path(pscontext));
+       ps_dbg_ex_co(co_network, "activate context(%s)", _ps_context_ref_path(pscontext));
 
-       tcore_context_get_apn(pscontext->co_context, &apn);
-       if (!apn) {
-               err("requested apn is null");
-               FAIL_RESPONSE(invocation,  PS_ERR_NO_PROFILE);
-               return TRUE;
-       }
+       apn = (gchar *)tcore_context_get_apn(pscontext->co_context);
 
-       tcore_context_get_state(pscontext->co_context, &context_state);
-       if (context_state != TCORE_CONTEXT_STATE_DEACTIVATED) {
-               warn("operation is in progress");
+       context_state = tcore_context_get_state(pscontext->co_context);
+       if(context_state != CONTEXT_STATE_DEACTIVATED){
+               ps_warn_ex_co(co_network, "operation is in progress");
                FAIL_RESPONSE(invocation,  PS_ERR_INTERNAL);
                return TRUE;
        }
 
-       dbg("requested context(%p) co_context(%p) apn (%s)", pscontext, pscontext->co_context, apn);
+       ps_dbg_ex_co(co_network, "requested context(%p) co_context(%p) apn (%s)", pscontext, pscontext->co_context, apn);
        //check apn is activated or not
-       rv = tcore_ps_is_active_apn(co_ps, (const gchar*)apn);
-       if (rv) {
-               dbg("requested apn is already activated");
+       rv = tcore_ps_is_active_apn(co_ps, (const char*)apn);
+       if(rv){
+               ps_dbg_ex_co(co_network, "requested apn is already activated");
 
                result = _ps_connection_hdlr(pscontext);
-               if (result != TEL_RETURN_SUCCESS) {
+               if(result != TCORE_RETURN_SUCCESS){
                        FAIL_RESPONSE(invocation,  PS_ERR_INTERNAL);
                        return TRUE;
                }
 
                packet_service_context_complete_activate(obj_context, invocation, pscontext->path);
-               tcore_context_get_state(pscontext->co_context, &context_state);
-               if (context_state == TCORE_CONTEXT_STATE_ACTIVATED) {
-                       dbg("context is already connected");
+               context_state = tcore_context_get_state(pscontext->co_context);
+               if (context_state == CONTEXT_STATE_ACTIVATED) {
+                       ps_dbg_ex_co(co_network, "context is already connected");
                        _ps_context_set_connected(pscontext, TRUE);
                }
 
-               dbg("success to open connection request");
+               ps_dbg_ex_co(co_network, "success to open connection request");
+               return TRUE;
+       }
+
+       active_cids = tcore_ps_get_active_cids(co_ps);
+       num_of_active_cids = g_slist_length(active_cids);
+       max_pdn = tcore_ps_get_num_of_pdn(co_ps);
+       ps_dbg_ex_co(co_network, "activate cids(%d), max pdn(%d)", num_of_active_cids, max_pdn);
+       if(num_of_active_cids < max_pdn){
+               ps_dbg_ex_co(co_network, "enough to active another pdn");
+               result = _ps_connection_hdlr(pscontext);
+               if(result != TCORE_RETURN_SUCCESS){
+                       FAIL_RESPONSE(invocation,  PS_ERR_INTERNAL);
+                       return TRUE;
+               }
+
+               ps_dbg_ex_co(co_network, "success to open connection request");
+               packet_service_context_complete_activate(obj_context, invocation, pscontext->path);
                return TRUE;
        }
 
        //find the current default connection
-       c_def_context = _ps_service_return_default_context(p_service);
-       tcore_context_get_id(((PsContext *)c_def_context)->co_context, &cid_def );
-       if (cid_def == 0) {
-               err("it is not avaiable to open connection");
+       c_def_context = _ps_service_return_default_context(p_service, CONTEXT_ROLE_INTERNET);
+       cid_def = tcore_context_get_id(((ps_context_t *)c_def_context)->co_context);
+       if(cid_def == 0){
+               ps_err_ex_co(co_network, "it is not avaiable to open connection");
                FAIL_RESPONSE(invocation,  PS_ERR_NO_PROFILE);
                return TRUE;
        }
 
        //check the status of def context
-       tcore_context_get_state(((PsContext *)c_def_context)->co_context, &context_state);
-       if (context_state != TCORE_CONTEXT_STATE_ACTIVATED) {
-               err("default connection is in progress");
+       context_state = tcore_context_get_state(((ps_context_t *)c_def_context)->co_context);
+       if (context_state != CONTEXT_STATE_ACTIVATED) {
+               ps_err_ex_co(co_network, "default connection is in progress");
                FAIL_RESPONSE(invocation,  PS_ERR_NO_PROFILE);
                return TRUE;
        }
 
        _ps_service_reset_connection_timer(c_def_context);
-
-#if 0
-       ((PsContext *)c_def_context)->user_data = pscontext;
+       ((ps_context_t *)c_def_context)->user_data = pscontext;
        result = tcore_ps_deactivate_cid(co_ps, cid_def);
-       if (result != TEL_RETURN_SUCCESS) {
-               err("fail to deactivate exist network connection");
+       if(result != TCORE_RETURN_SUCCESS){
+               ps_err_ex_co(co_network, "fail to deactivate exist network connection");
                FAIL_RESPONSE(invocation,  PS_ERR_NO_PROFILE);
                return TRUE;
        }
-#endif
+
        packet_service_context_complete_activate(obj_context, invocation, pscontext->path);
        return TRUE;
 
 }
 
-static gboolean on_context_handle_deactivate (PacketServiceContext *obj_context,
+static gboolean on_context_handle_deactiavte (PacketServiceContext *obj_context,
                GDBusMethodInvocation *invocation,
                gpointer user_data)
 {
 
        gboolean rv = FALSE;
+       CoreObject *co_network;
+       int context_state = 0;
+       ps_context_t *pscontext = user_data;
 
-       TcoreContextState context_state;
-       PsContext *pscontext = user_data;
+       if (!ps_util_check_access_control (invocation, AC_PS_PRIVATE, "w"))
+               return TRUE;
 
        dbg("Entered");
-       if (pscontext == NULL) {
+       if(pscontext == NULL){
                err("deactivation request object is NULL");
                FAIL_RESPONSE(invocation,  PS_ERR_NO_PROFILE);
                return TRUE;
        }
 
-       tcore_context_get_state(pscontext->co_context, &context_state);
-       if (context_state != TCORE_CONTEXT_STATE_ACTIVATED) {
-               err("operation is in progress");
+       co_network = _ps_service_ref_co_network(_ps_context_ref_service(pscontext));
+       context_state = tcore_context_get_state(pscontext->co_context);
+       if(context_state != CONTEXT_STATE_ACTIVATED){
+               ps_err_ex_co(co_network, "operation is in progress");
                FAIL_RESPONSE(invocation,  PS_ERR_INTERNAL);
                return TRUE;
        }
 
-       dbg("deactivate context(%s)", _ps_context_ref_path(pscontext));
+       ps_dbg_ex_co(co_network, "deactivate context(%s)", _ps_context_ref_path(pscontext));
 
        _ps_service_reset_connection_timer(pscontext);
        _ps_context_set_alwayson_enable(pscontext, FALSE);
 
        rv = _ps_service_deactivate_context(pscontext->p_service, pscontext);
-       if (rv != TEL_RETURN_SUCCESS) {
-               err("fail to deactivate context connection");
+       if (rv != TCORE_RETURN_SUCCESS) {
+               ps_err_ex_co(co_network, "fail to deactivate context connection");
                FAIL_RESPONSE(invocation,  PS_ERR_TRASPORT);
                return TRUE;
        }
 
-       dbg("success to deactivate context");
+       ps_dbg_ex_co(co_network, "success to deactivate context");
        packet_service_context_complete_deactivate(obj_context, invocation, pscontext->path);
 
-       tcore_context_get_state(pscontext->co_context, &context_state);
-       if (context_state == TCORE_CONTEXT_STATE_DEACTIVATED) {
-               dbg("context is already disconnected");
+       context_state =  tcore_context_get_state(pscontext->co_context);
+       if (context_state == CONTEXT_STATE_DEACTIVATED) {
+               ps_dbg_ex_co(co_network, "context is already disconnected");
                pscontext->ps_defined = FALSE;
                _ps_context_set_connected(pscontext, FALSE);
        }
@@ -1874,67 +2641,71 @@ static gboolean on_context_set_default_connection (PacketServiceContext *obj_con
                GDBusMethodInvocation *invocation,
                gpointer user_data)
 {
-       TcoreContextRole role;
-       TcoreContextState context_state;
+       int rv = 0;
+       int role = CONTEXT_ROLE_UNKNOWN;
 
        gpointer co_ps = NULL;
        gpointer service = NULL;
        gpointer cur_default_ctx = NULL;
-       PsContext *pscontext = user_data;
+       ps_context_t *pscontext = user_data;
+       CoreObject *co_network;
+
+       if (!ps_util_check_access_control (invocation, AC_PS_PROFILE, "w"))
+               return TRUE;
 
-       dbg("enter set default connection PsContext(%p)", pscontext);
-       if (pscontext == NULL) {
+       dbg("enter set default connection ps_context_t(%p)", pscontext);
+       if(pscontext == NULL){
                err("activation request object is NULL");
                FAIL_RESPONSE(invocation, PS_ERR_NO_PROFILE);
                return TRUE;
        }
 
-       dbg("start default connection");
-       tcore_context_get_role(pscontext->co_context, &role);
-       if (role != TCORE_CONTEXT_ROLE_INTERNET) {
-               warn("only internet profile type can be set to default internet profile");
+       co_network = _ps_service_ref_co_network(_ps_context_ref_service(pscontext));
+       ps_dbg_ex_co(co_network, "start default connection");
+       role = tcore_context_get_role(pscontext->co_context);
+       if(role != CONTEXT_ROLE_INTERNET){
+               ps_warn_ex_co(co_network, "only internet profile type can be set to default internet profile");
                FAIL_RESPONSE(invocation, PS_ERR_WRONG_PROFILE);
                return TRUE;
        }
 
        service = pscontext->p_service;
-       cur_default_ctx = _ps_service_return_default_context(service);
-       dbg("current default connection (%p)", cur_default_ctx);
+       cur_default_ctx = _ps_service_return_default_context(service, role);
+       ps_dbg_ex_co(co_network, "current default connection (%p)", cur_default_ctx);
 
-       if (!cur_default_ctx) {
-               err("No current default connection.");
+       if(!cur_default_ctx) {
+               ps_err_ex_co(co_network, "No current default connection.");
                goto OUT;
        }
 
-       if (pscontext == cur_default_ctx) {
-               err("already default internet connection.");
+       if(pscontext == cur_default_ctx){
+               ps_err_ex_co(co_network, "already default internet connection.");
                goto OUT;
        }
-#if 0
+
        // First, send deactivation request first.
-       rv = _ps_service_deactivate_context(((PsContext *)cur_default_ctx)->p_service, cur_default_ctx);
-       if (rv == TEL_RETURN_PS_ACTIVATING) {
-               dbg("fail to deactivate default connection, rv(%d)", rv);
+       rv = _ps_service_deactivate_context(((ps_context_t *)cur_default_ctx)->p_service, cur_default_ctx);
+       if (rv == TCORE_RETURN_PS_ACTIVATING) {
+               ps_dbg_ex_co(co_network, "fail to deactivate default connection, rv(%d)", rv);
                FAIL_RESPONSE(invocation, PS_ERR_INTERNAL);
                return TRUE;
        }
-#endif
+
        /* Normal deactivation case. */
-       tcore_context_get_state(((PsContext *)cur_default_ctx)->co_context, &context_state);
-       if (context_state == TCORE_CONTEXT_STATE_DEACTIVATING) {
-               dbg("deactivation request in current ps (%p)", cur_default_ctx);
-               ((PsContext *)cur_default_ctx)->user_data = pscontext;
+       if(tcore_context_get_state(((ps_context_t *)cur_default_ctx)->co_context) == CONTEXT_STATE_DEACTIVATING) {
+               ps_dbg_ex_co(co_network, "deactivation request in current ps (%p)", cur_default_ctx);
+               ((ps_context_t *)cur_default_ctx)->user_data = pscontext;
        }
        else{
-               guint cid = 0;
+               int cid = -1;
 
-               dbg("[Not normal] deactivation request in current ps (%p)", cur_default_ctx);
+               ps_dbg_ex_co(co_network, "[Not normal] deactivation request in current ps (%p)", cur_default_ctx);
 
-               tcore_context_get_id(((PsContext *)cur_default_ctx)->co_context, &cid);
-               _ps_context_set_ps_defined(cur_default_ctx, FALSE, cid);
+               cid = tcore_context_get_id(((ps_context_t *)cur_default_ctx)->co_context);
+               _ps_context_set_ps_defined(cur_default_ctx, FALSE);
                co_ps = _ps_service_ref_co_ps(service);
-               //tcore_ps_set_cid_active((CoreObject *)co_ps, cid, FALSE);
-               tcore_ps_clear_context_id((CoreObject *)co_ps, ((PsContext *)cur_default_ctx)->co_context);
+               tcore_ps_set_cid_active((CoreObject *)co_ps, cid, FALSE);
+               tcore_ps_clear_context_id((CoreObject *)co_ps, ((ps_context_t *)cur_default_ctx)->co_context);
        }
 
        //unset default info of previous connection
@@ -1942,12 +2713,12 @@ static gboolean on_context_set_default_connection (PacketServiceContext *obj_con
        __ps_context_set_default_connection_enable(cur_default_ctx, FALSE);
 
        //db update - release default connection
-       dbg("context(%p): release default connection property.", cur_default_ctx);
-       __ps_context_update_default_internet_to_db((PsContext *)cur_default_ctx, FALSE);
+       ps_dbg_ex_co(co_network, "context(%p): release default connection property.", cur_default_ctx);
+       __ps_context_update_default_internet_to_db((ps_context_t *)cur_default_ctx, FALSE);
        /* Allow Connman to update profile information. */
        __ps_context_emit_property_changed_signal(cur_default_ctx);
 
-       dbg("activation requeset in new ps (%p)", pscontext);
+       ps_dbg_ex_co(co_network, "activation requeset in new ps (%p)", pscontext);
 OUT:
        _ps_default_connection_hdlr(pscontext);
        packet_service_context_complete_set_default_connection(obj_context, invocation, TRUE);
@@ -1955,120 +2726,129 @@ OUT:
 
 }
 
-static gboolean on_context_modify_profile(PacketServiceContext *obj_context,
-       GDBusMethodInvocation *invocation,
-       GVariant *property, gpointer user_data)
+static gboolean on_context_modify_profile (PacketServiceContext *obj_context,
+               GDBusMethodInvocation *invocation,
+               GVariant *property,
+               gpointer user_data)
 {
        GVariantIter g_iter;
        gchar *g_value;
        gchar *g_key;
 
-       gboolean result = FALSE;
-       TcoreContextState context_state = 0;
-       PsContext *context = user_data;
-       GHashTable *profile_property = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL);
-
-       dbg("modify context's profile properties");
+       gboolean rv = FALSE;
+       int context_state = 0;
+       ps_context_t *context = user_data;
+       CoreObject *co_network = _ps_service_ref_co_network(_ps_context_ref_service(context));
+       GHashTable *profile_property = NULL;
 
-       tcore_context_get_state(context->co_context, &context_state);
-       if (context_state == TCORE_CONTEXT_STATE_ACTIVATING) {
-               FAIL_RESPONSE(invocation,  PS_ERR_INTERNAL);
+       if (!ps_util_check_access_control (invocation, AC_PS_PROFILE, "w"))
                return TRUE;
+
+       ps_dbg_ex_co(co_network, "modify context's profile properties");
+
+       context_state = tcore_context_get_state(context->co_context);
+       if(context_state == CONTEXT_STATE_ACTIVATING) {
+               ps_dbg_ex_co(co_network, "Modify profile in activating state, set deactivate flag.");
+               context->deact_required = TRUE;
+               goto EXIT;
        }
 
-       /* Creating the profile property hash for for internal handling */
-       /* Create a hash table for the profile property as all fucntion already use ghash table */
+       /*Creating the profile property hash for for internal handling*/
+       /*Create a hash table for the profile property as all fucntion already use ghash table */
+       profile_property = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL);
        g_variant_iter_init (&g_iter, property);
-       while (g_variant_iter_next (&g_iter, "{ss}", &g_key, &g_value)) {
-               g_hash_table_insert(profile_property, g_strdup(g_key), g_strdup(g_value));
+       while (g_variant_iter_next (&g_iter, "{ss}", &g_key, &g_value)){
 
+               g_hash_table_insert(profile_property,g_strdup(g_key),g_strdup(g_value));
                /* must free data for ourselves */
                g_free (g_value);
                g_free (g_key);
        }
 
-       result = __ps_context_update_profile(context, profile_property);
-       if (result != TRUE) {
+       rv = __ps_context_update_profile(context, profile_property);
+       if (rv != TRUE) {
                FAIL_RESPONSE(invocation,  PS_ERR_INTERNAL);
+               g_hash_table_destroy(profile_property);
                return TRUE;
        }
 
        _ps_service_deactivate_context(context->p_service, context);
-       if (context_state == TCORE_CONTEXT_STATE_DEACTIVATED) {
-               dbg("context is already disconnected");
+       if(context_state == CONTEXT_STATE_DEACTIVATED){
+               ps_dbg_ex_co(co_network, "context is already disconnected");
                _ps_context_set_connected(context, FALSE);
        }
-
+EXIT:
        packet_service_context_complete_modify_profile(obj_context, invocation, TRUE);
+       g_hash_table_destroy(profile_property);
        return TRUE;
 }
 
 static gboolean on_context_remove_profile (PacketServiceContext *obj_context,
-       GDBusMethodInvocation *invocation, gpointer user_data)
+               GDBusMethodInvocation *invocation,
+               gpointer user_data)
 {
-       PsContext *context = user_data;
-       gboolean result = FALSE;
+       ps_context_t *context = user_data;
+       CoreObject *co_network = _ps_service_ref_co_network(_ps_context_ref_service(context));
+
+       if (!ps_util_check_access_control (invocation, AC_PS_PROFILE, "w"))
+               return TRUE;
 
        dbg("Entered");
 
        __ps_context_remove_database(context);
-       result = __ps_context_remove_context(context);
-       if (result) {
-               gchar *ctx_path = g_strdup(_ps_context_ref_path(context));
 
-               /* Remove context from HASH table */
-               g_hash_table_remove(contexts, ctx_path);
-               g_free(ctx_path);
-       }
-       else {
-               err("Failed to remove context [%p]", context);
+       if(CONTEXT_STATE_DEACTIVATED == tcore_context_get_state(context->co_context)) {
+               ps_dbg_ex_co(co_network, "Remove context.");
+               __ps_context_remove_context(context);                           
+       } else {
+               ps_warn_ex_co(co_network, "Remove profile not in deactivated state, set delete flag.");
+               context->delete_required = TRUE;
+               _ps_service_deactivate_context(context->p_service, context);
        }
 
-       packet_service_context_complete_remove_profile(obj_context, invocation, result);
-
+       packet_service_context_complete_remove_profile(obj_context, invocation, TRUE);
+       ps_dbg_ex_co(co_network, "Exit");
        return TRUE;
 }
 
-static void _ps_context_setup_interface(PacketServiceContext *context,
-       PsContext *context_data)
+static void _ps_context_setup_interface(PacketServiceContext *context, ps_context_t *context_data)
 {
        dbg("Entered");
-
        g_signal_connect (context,
-               "handle-get-properties",
-               G_CALLBACK (on_context_get_properties),
-               context_data);
+                       "handle-get-properties",
+                       G_CALLBACK (on_context_get_properties),
+                       context_data);
 
        g_signal_connect (context,
-               "handle-get-profile",
-               G_CALLBACK (on_context_get_profile),
-               context_data);
+                       "handle-get-profile",
+                       G_CALLBACK (on_context_get_profile),
+                       context_data);
 
        g_signal_connect (context,
-               "handle-activate",
-               G_CALLBACK (on_context_handle_activate),
-               context_data);
+                       "handle-activate",
+                       G_CALLBACK (on_context_handle_activate),
+                       context_data);
 
        g_signal_connect (context,
-               "handle-deactivate",
-               G_CALLBACK (on_context_handle_deactivate),
-               context_data);
+                       "handle-deactivate",
+                       G_CALLBACK (on_context_handle_deactiavte),
+                       context_data);
 
        g_signal_connect (context,
-               "handle-set-default-connection",
-               G_CALLBACK (on_context_set_default_connection),
-               context_data);
+                       "handle-set-default-connection",
+                       G_CALLBACK (on_context_set_default_connection),
+                       context_data);
 
        g_signal_connect (context,
-               "handle-modify-profile",
-               G_CALLBACK (on_context_modify_profile),
-               context_data);
+                       "handle-modify-profile",
+                       G_CALLBACK (on_context_modify_profile),
+                       context_data);
 
        g_signal_connect (context,
-               "handle-remove-profile",
-               G_CALLBACK (on_context_remove_profile),
-               context_data);
-
+                       "handle-remove-profile",
+                       G_CALLBACK (on_context_remove_profile),
+                       context_data);
        dbg("Exiting");
        return;
 }
+
diff --git a/src/desc.c b/src/desc.c
new file mode 100644 (file)
index 0000000..036fa2b
--- /dev/null
@@ -0,0 +1,54 @@
+/*
+ * PacketService Control Module
+ *
+ * Copyright (c) 2012 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Contact: DongHoo Park <donghoo.park@samsung.com>
+ *                     Arun Shukla <arun.shukla@samsung.com>
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include "main.h"
+
+#include <tcore.h>
+#include <plugin.h>
+
+static gboolean on_load()
+{
+       dbg("i'm load!");
+       return TRUE;
+}
+
+static gboolean on_init(TcorePlugin *plugin)
+{
+       dbg("i'm init!");
+       return ps_main_init(plugin);
+}
+
+static void on_unload(TcorePlugin *plugin)
+{
+       dbg("i'm unload!");
+       ps_main_exit(plugin);
+}
+
+EXPORT_API struct tcore_plugin_define_desc plugin_define_desc =
+{
+       .name = "PACKETSERVICE",
+       .priority = TCORE_PLUGIN_PRIORITY_MID + 1,
+       .version = 1,
+       .load = on_load,
+       .init = on_init,
+       .unload = on_unload
+};
diff --git a/src/dump_packetservice.sh b/src/dump_packetservice.sh
new file mode 100755 (executable)
index 0000000..f5cc3ee
--- /dev/null
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+#--------------------------------------------
+#                PacketService
+#-------------------------------------------
+
+PS_DEBUG_DIR=$1/packetservice
+mkdir -p ${PS_DEBUG_DIR}
+
+cp /opt/dbspace/.dnet.db ${PS_DEBUG_DIR}/dnet.db
index ab01694..26f1a9f 100644 (file)
@@ -1,7 +1,10 @@
 /*
- * tel-plugin-packetservice
+ * PacketService Control Module
  *
- * Copyright (c) 2013 Samsung Electronics Co. Ltd. All rights reserved.
+ * Copyright (c) 2012 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Contact: DongHoo Park <donghoo.park@samsung.com>
+ *                     Arun Shukla <arun.shukla@samsung.com>
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
+ *
  */
 
-#include <glib.h>
+#include "main.h"
 
-#include <tcore.h>
-#include <plugin.h>
+#include <stdio.h>
+#include <glib.h>
 
 #include <ps.h>
 
-PsCustom *ps_ctx = NULL;
+static ps_custom_t *ps_ctx = NULL;
 
-void _packet_service_cleanup()
+
+static void _packet_service_cleanup()
 {
        dbg("Entered");
 
@@ -35,6 +40,9 @@ void _packet_service_cleanup()
        /*Unowning the Gdbus */
        g_bus_unown_name(ps_ctx->bus_id);
 
+       /* Free GDBusConnection */
+       g_object_unref(ps_ctx->conn);
+
        /*Freeing the memory allocated to the custom data for Packet Service*/
        g_free(ps_ctx);
        ps_ctx =  NULL;
@@ -43,29 +51,7 @@ void _packet_service_cleanup()
        return;
 }
 
-
-TcoreHookReturn __on_hook_modem_added(Server *server,
-       TcoreServerNotification command,
-       guint data_len, void *data, void *user_data)
-{
-       gpointer *master = user_data;
-       gboolean rv = FALSE;
-       dbg("Entered");
-
-       rv = _ps_master_create_modems(master);
-       dbg("Modem Added hook operation: [%s]", (rv ? "SUCCESS" : "FAIL"));
-
-       return TCORE_HOOK_RETURN_CONTINUE;
-}
-
-static gboolean on_load()
-{
-       dbg("PacketService plugin load!");
-       return TRUE;
-}
-
-static void on_bus_acquired(GDBusConnection *conn,
-       const gchar *name, gpointer user_data)
+static void on_bus_acquired(GDBusConnection *conn, const gchar *name, gpointer user_data)
 {
        gboolean rv=FALSE;
        gpointer *master = NULL;
@@ -74,11 +60,8 @@ static void on_bus_acquired(GDBusConnection *conn,
 
        dbg("Bus is acquired");
 
-       /*Storing the GDbus connection in custom data */
-       ps_ctx->conn = conn;
-
        master = _ps_master_create_master(conn, p);
-       if (!master) {
+       if(!master){
                err("Unable to Intialize the Packet Service");
                _packet_service_cleanup();
                return;
@@ -86,8 +69,8 @@ static void on_bus_acquired(GDBusConnection *conn,
 
        ps_ctx->master = g_slist_append(ps_ctx->master, master);
 
-       rv = _ps_master_create_modems(master);
-       if (!rv) {
+       rv = _ps_master_create_modems(master, NULL);
+       if (!rv){
                dbg("_ps_master_create_modems failed");
                _packet_service_cleanup();
        }
@@ -96,7 +79,7 @@ static void on_bus_acquired(GDBusConnection *conn,
        return ;
 }
 
-static gboolean on_init(TcorePlugin *p)
+gboolean ps_main_init(TcorePlugin *p)
 {
        guint id;
        gboolean rv=FALSE;
@@ -108,13 +91,13 @@ static gboolean on_init(TcorePlugin *p)
                return FALSE;
 
        rv = _ps_context_initialize(p);
-       if (rv != TRUE) {
+       if(rv != TRUE){
                dbg("fail to initialize context global variable");
                return FALSE;
        }
 
-       ps_ctx = g_try_malloc0(sizeof(PsCustom));
-       if (!ps_ctx) {
+       ps_ctx = g_try_malloc0(sizeof(ps_custom_t));
+       if(!ps_ctx){
                err("Memory allocation failed for the custom data of PS");
                return FALSE;
        }
@@ -125,44 +108,33 @@ static gboolean on_init(TcorePlugin *p)
        dbg("address of the bus  [%s]", address);
 
        conn = g_dbus_connection_new_for_address_sync(address,
-               G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_CLIENT |
-               G_DBUS_CONNECTION_FLAGS_MESSAGE_BUS_CONNECTION,
-               NULL, NULL, &error);
+                       G_DBUS_CONNECTION_FLAGS_AUTHENTICATION_CLIENT |
+                       G_DBUS_CONNECTION_FLAGS_MESSAGE_BUS_CONNECTION,
+                       NULL, NULL,&error);
        g_assert_no_error(error);
-       if (!conn) {
-               dbg("connection failed");
+       if (!conn){
+               dbg("connection failed"); //TODO, cleanup
        }
 
-       id = g_bus_own_name_on_connection(conn,
-               PS_DBUS_SERVICE,
-               G_BUS_NAME_OWNER_FLAGS_REPLACE,
-               on_bus_acquired, NULL,
-               p, NULL);
+       /*Storing the GDbus connection in custom data */
+       ps_ctx->conn = conn;
+
+       id = g_bus_own_name_on_connection(conn, PS_DBUS_SERVICE,
+                       G_BUS_NAME_OWNER_FLAGS_REPLACE,
+                       on_bus_acquired, NULL,
+                       p, NULL);
 
        dbg("id=[%d]", id);
 
 
-       /* Initializing the custom data for PacketService */
+       /*Initializing the custom data for PacketService*/
        ps_ctx->bus_id = id;
-       ps_ctx->conn = NULL;
        ps_ctx->master = NULL;
        ps_ctx->p = p;
-
        return TRUE;
 }
 
-static void on_unload(TcorePlugin *p)
+void ps_main_exit(TcorePlugin *p)
 {
-       dbg("i'm unload!");
-
        _packet_service_cleanup();
 }
-
-EXPORT_API struct tcore_plugin_define_desc plugin_define_desc = {
-       .name = "PACKETSERVICE",
-       .priority = TCORE_PLUGIN_PRIORITY_MID + 1,
-       .version = 1,
-       .load = on_load,
-       .init = on_init,
-       .unload = on_unload
-};
index 48b941a..63629d7 100644 (file)
@@ -1,7 +1,10 @@
 /*
- * tel-plugin-packetservice
+ * PacketService Control Module
  *
- * Copyright (c) 2013 Samsung Electronics Co. Ltd. All rights reserved.
+ * Copyright (c) 2012 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Contact: DongHoo Park <donghoo.park@samsung.com>
+ *         Arun Shukla <arun.shukla@samsung.com>
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -14,6 +17,7 @@
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
+ *
  */
 
 #include <unistd.h>
 #include <plugin.h>
 #include <storage.h>
 #include <hal.h>
+#include <user_request.h>
 
-#define PS_MASTER_PATH         "/"
+#define PS_MASTER_PATH "/"
 #define PROP_DEFAULT           FALSE
 #define PROP_DEFAULT_STR       NULL
 #define BOOL2STRING(a)         ((a==TRUE) ? ("TRUE"):("FALSE"))
 
+/* [Wearable][sap-stack] SAPInterface.h */
+#define SAP_CONN_TYPE_ALL      0x00
+#define SAP_CONN_TYPE_BT       0x01
+#define SAP_CONN_TYPE_MOBILE   0x10 // scs
 
-static void __ps_master_emit_modem_added_signal(PsMaster *master, gpointer modem);
-/* static void __ps_master_emit_modem_removed_signal(PsMaster *master, gpointer modem); */
-static void _ps_master_setup_interface(PacketServiceMaster *master, PsMaster *master_data);
+static void __ps_master_emit_modem_added_signal(ps_master_t *master, gpointer modem);
+/*static void __ps_master_emit_modem_removed_signal(ps_master_t *master, gpointer modem);*/
+static void _ps_master_setup_interface(PacketServiceMaster *master, ps_master_t *master_data);
 
-static void __ps_master_register_key_callback(gpointer master, TcoreStorageKey key);
-static void __ps_master_storage_key_callback(TcoreStorageKey key, void *value, void *user_data);
+static void __ps_master_register_key_callback(gpointer master, enum tcore_storage_key key);
+static void __ps_master_storage_key_callback(enum tcore_storage_key key, void *value, void *user_data);
 
-#if 0
-static void __ps_master_handle_contexts(gchar *request)
+static void __ps_master_handle_contexts(gpointer master, gchar *request)
 {
-       GHashTableIter iter;
-       gpointer key, value;
-       GHashTable *contexts = NULL;
-
+       GHashTableIter modem_iter;
+       gpointer modem_key, modem_value;
        dbg("send dbus %s requeset", request);
 
-       contexts = _ps_context_ref_hashtable();
-       if (contexts == NULL) {
-               err("no profiles");
-               return;
-       }
+       g_hash_table_iter_init(&modem_iter, ((ps_master_t*)master)->modems);
+       while (g_hash_table_iter_next(&modem_iter, &modem_key, &modem_value) == TRUE) {
+               GHashTableIter iter;
+               gpointer key, value;
+               GHashTable *contexts = NULL;
 
-       g_hash_table_iter_init(&iter, contexts);
-       while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
-               gchar *s_path = NULL;
-
-               s_path = _ps_context_ref_path(value);
-               dbg("key(%s), value(%p), path(%s)", (gchar *)key, value, s_path);
-               if (!g_strcmp0(request, "InterfaceDown")) {
-                       _ps_context_handle_ifacedown(value);
-               } else if (!g_strcmp0(request, "InterfaceUp")) {
-                       _ps_context_handle_ifaceup(value);
+               contexts = _ps_context_ref_hashtable(modem_value);
+               if (contexts == NULL) {
+                       err("no profiles");
+                       return;
+               }
+
+               g_hash_table_iter_init(&iter, contexts);
+               while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
+                       gchar *s_path = NULL;
+
+                       s_path = _ps_context_ref_path(value);
+                       dbg("key(%s), value(%p), path(%s)", (gchar *)key, value, s_path);
+                       if(!g_strcmp0(request, "InterfaceDown")) {
+                               _ps_context_handle_ifacedown(value);
+                       } else if(!g_strcmp0(request, "InterfaceUp")) {
+                               _ps_context_handle_ifaceup(value);
+                       }
                }
        }
        return;
 }
-#endif
 
 void __remove_master(gpointer data, gpointer user_data)
 {
-       PsMaster *master = data;
+       ps_master_t *master = data;
 
        dbg("Entered");
 
-       /* Need to remove the compelete hash table */
+       /*Deinit alarm*/
+       alarmmgr_fini();
+
+       /*Need to remove the compelete hash table*/
        g_hash_table_remove_all(master->modems);
 
-       /* Need to UNexport and Unref the master Object */
+       /*Need to UNexport and Unref the master Object */
        g_dbus_interface_skeleton_unexport(G_DBUS_INTERFACE_SKELETON(master->if_obj));
 
        g_object_unref(master->if_obj);
 
-       /* Need to free the memory allocated for the members of the master */
+       /*Need to free the memory allocated for the members of the master*/
        g_free(master->path);
        g_free(master);
 
@@ -92,7 +107,7 @@ void __remove_master(gpointer data, gpointer user_data)
        return;
 }
 
-static void __ps_master_emit_modem_added_signal(PsMaster *master, gpointer modem)
+static void __ps_master_emit_modem_added_signal(ps_master_t *master, gpointer modem)
 {
        GVariant *gv = NULL;
        GVariantBuilder properties;
@@ -106,20 +121,18 @@ static void __ps_master_emit_modem_added_signal(PsMaster *master, gpointer modem
        return;
 }
 
-/*
-static void __ps_master_emit_modem_removed_signal(PsMaster *master, gpointer modem)
+/*static void __ps_master_emit_modem_removed_signal(ps_master_t *master, gpointer modem)
 {
        g_signal_emit(master, signals[SIG_MASTER_MODEM_REMOVED], 0, _ps_modem_ref_path(modem));
        dbg("master (%p) emit the modem(%p) removed signal", master, modem);
        return;
-}
-*/
+}*/
 
-static void __ps_master_register_key_callback(gpointer object, TcoreStorageKey key)
+static void __ps_master_register_key_callback(gpointer object, enum tcore_storage_key key)
 {
-       PsMaster *master = (PsMaster *) object;
+       ps_master_t *master = (ps_master_t *) object;
        Server *s = tcore_plugin_ref_server(master->plg);
-       TcoreStorage *strg = NULL;
+       static Storage *strg;
 
        strg = tcore_server_find_storage(s, "vconf");
        tcore_storage_set_key_callback(strg, key, __ps_master_storage_key_callback, object);
@@ -127,62 +140,193 @@ static void __ps_master_register_key_callback(gpointer object, TcoreStorageKey k
        return;
 }
 
-static void __ps_master_storage_key_callback(TcoreStorageKey key, void *value, void *user_data)
+static void __ps_master_storage_key_callback(enum tcore_storage_key key, void *value, void *user_data)
 {
        GVariant *tmp = NULL;
        GHashTableIter iter;
        gpointer h_key, h_value;
        gboolean type_check = FALSE;
-       PsMaster *master = (PsMaster *)user_data;
+       ps_master_t *master = (ps_master_t *)user_data;
 
        dbg("storage key(%d) callback", key);
        g_return_if_fail(master != NULL);
 
        tmp = (GVariant *)value;
-       if (!tmp) {
+       if(!tmp){
                err("value is null");
                return;
        }
 
-       type_check = g_variant_is_of_type(tmp, G_VARIANT_TYPE_BOOLEAN);
-       if (!type_check) {
-               err("wrong variant data type");
-               g_variant_unref(tmp);
-               return;
+       switch(key) {
+               case KEY_3G_ENABLE:
+               case KEY_DATA_ROAMING_SETTING:
+               case KEY_DATA_ROAMING_APP_SETTING:
+               case KEY_NETWORK_RESTRICT_MODE:
+               {
+                       type_check = g_variant_is_of_type(tmp, G_VARIANT_TYPE_BOOLEAN);
+                       if(!type_check){
+                               err("wrong variant data type");
+                               g_variant_unref(tmp);
+                               return;
+                       }
+               } break;
+               case KEY_POWER_SAVING_MODE:
+               case KEY_PM_STATE:
+#ifdef POWER_SAVING_FEATURE_WEARABLE
+               case KEY_WECONN_ALL_CONNECTED:
+#endif         
+               {
+                       type_check = g_variant_is_of_type(tmp, G_VARIANT_TYPE_INT32);
+                       if(!type_check){
+                               dbg("wrong variant data type");
+                               g_variant_unref(tmp);
+                               return;
+                       }
+               } break;
+               default: {
+                       warn("unknown key");
+                       return;
+               } break;
        }
 
        g_hash_table_iter_init(&iter, master->modems);
        while (g_hash_table_iter_next(&iter, &h_key, &h_value) == TRUE) {
-               if(key == STORAGE_KEY_DATA_ENABLE) {
+               if(key == KEY_3G_ENABLE){
                        gboolean data_allowed = g_variant_get_boolean(tmp);
+#if defined(TIZEN_PS_FORCE_ATTACH_DETACH)
+                       if (_ps_master_get_storage_value_int(master, KEY_WECONN_ALL_CONNECTED) > 0) {
+                               if (data_allowed) {
+                                       int sap_conn_type = SAP_CONN_TYPE_ALL;
+                                       sap_conn_type = _ps_master_get_storage_value_int(master, KEY_SAP_CONNECTION_TYPE);
+                                       if (sap_conn_type == SAP_CONN_TYPE_BT) {
+                                               dbg ("[Companion mode] ignore data_allowed.");
+                                               return;
+                                       }
+                               }
+                       }
+#endif
                        _ps_modem_set_data_allowed(h_value, data_allowed);
-               } else if(key == STORAGE_KEY_SETAPPL_STATE_DATA_ROAMING) {
+               }
+               else if(key == KEY_DATA_ROAMING_SETTING){
                        gboolean roaming_allowed = g_variant_get_boolean(tmp);
-                       _ps_modem_set_data_roaming_allowed(h_value, roaming_allowed);
+                       gboolean roaming_allowed_app_setting = _ps_master_get_storage_value_bool(master, KEY_DATA_ROAMING_APP_SETTING);
+
+                       if(!roaming_allowed_app_setting){
+                               _ps_modem_set_data_roaming_allowed(h_value, roaming_allowed);
+                       }
+                       else{
+                               _ps_modem_set_data_roaming_allowed(h_value, TRUE);
+                       }
+               }
+               else if(key == KEY_DATA_ROAMING_APP_SETTING){
+                       gboolean roaming_allowed =_ps_master_get_storage_value_bool(master, KEY_DATA_ROAMING_SETTING);
+                       gboolean roaming_allowed_app_setting = g_variant_get_boolean(tmp);
+
+                       if(!roaming_allowed_app_setting){
+                               _ps_modem_set_data_roaming_allowed(h_value, roaming_allowed);
+                       }
+                       else{
+                               _ps_modem_set_data_roaming_allowed(h_value, TRUE);
+                       }
+               }
+               else if(key == KEY_POWER_SAVING_MODE){
+                       gint ps_mode = g_variant_get_int32(tmp);
+                       gboolean f_mode = _ps_modem_get_flght_mode(h_value);
+                       gboolean f_mode_ups = _ps_modem_get_flght_mode_ups(h_value);
+                       struct treq_modem_set_flightmode data = {0};
+
+                       dbg ("f_mode: %d, f_mode_ups: %d", f_mode, f_mode_ups);
+                       _ps_modem_set_psmode(h_value, ps_mode);
+                       if (ps_mode == POWER_SAVING_MODE_NORMAL) {
+                               if (f_mode_ups != f_mode) {
+                                       dbg ("set flight mode off");
+                                       data.enable = f_mode_ups;
+                               }
+                       } else if (ps_mode == POWER_SAVING_MODE_WEARABLE) {
+                               if (!f_mode) {
+                                       dbg ("set flight mode on");
+                                       // save flight mode state when UPS off.
+                                       _ps_modem_set_flght_mode_ups(h_value, _ps_modem_get_flght_mode(h_value));
+                                       data.enable = TRUE;
+                               }
+                       } else {
+                               err("Not supported");
+                               return;
+                       }
+                       _ps_modem_send_filght_mode_request(h_value, &data);
                }
+               else if(key == KEY_PM_STATE){
+                       gint pm_state = g_variant_get_int32(tmp);
+                       gint ps_mode = _ps_modem_get_psmode(h_value);
+                       dbg("current power saving mode: %d", ps_mode);
+                       if(pm_state == 3) {// LCD Off
+                               if (ps_mode > POWER_SAVING_MODE_NORMAL && ps_mode < POWER_SAVING_MODE_WEARABLE) {
+                                       dbg("deactivate contexts");
+                                       // send dbus request pdp context deactivation.
+                                       __ps_master_handle_contexts(master, "InterfaceDown");
+                               }
+                       } else { // LCD On or dimming
+                               if (ps_mode > POWER_SAVING_MODE_NORMAL && ps_mode < POWER_SAVING_MODE_WEARABLE) {
+                                       dbg ("activates contexts");
+                                       // send dbus request pdp context activation.
+                                       __ps_master_handle_contexts(master, "InterfaceUp");
+                               }
+                       }
+               }
+               else if(key == KEY_NETWORK_RESTRICT_MODE) {
+                       gboolean b_network_restrict = g_variant_get_boolean(tmp);
+                       if(b_network_restrict){
+                               dbg("network restricted mode on");
+                               _ps_modem_set_data_allowed(h_value, FALSE);
+                       }
+                       else{
+                               gboolean key_3g_enable = FALSE;
+                               dbg("network restricted mode off");
+                               key_3g_enable = _ps_master_get_storage_value_bool(master, KEY_3G_ENABLE);
+                               _ps_modem_set_data_allowed(h_value, key_3g_enable);
+                       }
+               }
+#ifdef STORAGE_KEY_WECONN_ALL_CONNECTED                
+               else if (key == KEY_WECONN_ALL_CONNECTED) {
+                       int b_wms_connected = g_variant_get_int32(tmp);
+                       if (b_wms_connected) {
+                               int sap_conn_type = SAP_CONN_TYPE_ALL;
+
+                               sap_conn_type = _ps_master_get_storage_value_int(master, KEY_SAP_CONNECTION_TYPE);
+                               if (sap_conn_type == SAP_CONN_TYPE_BT) {
+                                       dbg ("[Wearable] Companinon mode.");
+                                       _ps_modem_set_data_allowed(h_value, FALSE);
+                               }
+                       } else {
+                               gboolean key_3g_enable = FALSE;
+                               dbg ("[Wearable] Standalone mode.");
+                               key_3g_enable = _ps_master_get_storage_value_bool(master, KEY_3G_ENABLE);
+                               _ps_modem_set_data_allowed(h_value, key_3g_enable);
+                       }
+               }
+#endif         
        }
 
-       g_variant_unref(tmp);
        return;
 }
 
 gpointer _ps_master_create_master(GDBusConnection *conn, TcorePlugin *p)
 {
        PacketServiceMaster *master = NULL;
-       PsMaster *new_master = NULL;
+       ps_master_t *new_master = NULL;
        GError *error = NULL;
 
        dbg("master object create");
-       tcore_check_return_value(conn != NULL, NULL);
+       g_return_val_if_fail(conn != NULL, NULL);
 
-       /* creating the master object for the interface com.tcore.ps.master */
+       /*creating the master object for the interface com.tcore.ps.master*/
        master = packet_service_master_skeleton_new();
-       tcore_check_return_value(master != NULL, NULL);
+       g_return_val_if_fail(master != NULL, NULL);
 
 
-       /* Initializing the master list for internal referencing */
-       new_master = g_try_malloc0(sizeof(PsMaster));
-       if (NULL == new_master) {
+       /*Initializing the master list for internal referencing*/
+       new_master = g_try_malloc0(sizeof(ps_master_t));
+       if(NULL == new_master){
                err("Unable to allocate memory for master");
                goto FAILURE;
        }
@@ -191,132 +335,230 @@ gpointer _ps_master_create_master(GDBusConnection *conn, TcorePlugin *p)
        new_master->path = g_strdup(PS_MASTER_PATH);
        new_master->plg = p;
        new_master->if_obj = master;
-       new_master->modems =
-               g_hash_table_new_full(g_str_hash, g_str_equal,
-                       g_free, __remove_modem_handler);
+       new_master->modems = g_hash_table_new_full(g_str_hash,g_str_equal, g_free, __remove_modem_handler);
 
-       /* Setting Up the call backs for the interface */
+       /*Setting Up the call backs for the interface*/
        _ps_master_setup_interface(master, new_master);
 
-       /* exporting the interface object to the path mention for master */
+       /*exporting the interface object to the path mention for master*/
        g_dbus_interface_skeleton_export(G_DBUS_INTERFACE_SKELETON(master),
-                       conn, PS_MASTER_PATH, &error);
+                       conn,
+                       PS_MASTER_PATH,
+                       &error);
+
        g_assert_no_error (error);
 
-       /* Registering the key callbacks for values in storage settings */
-       __ps_master_register_key_callback(new_master,
-               STORAGE_KEY_DATA_ENABLE);
-       __ps_master_register_key_callback(new_master,
-               STORAGE_KEY_SETAPPL_STATE_DATA_ROAMING);
+       /*Registering the key callbacks for values in storage settings */
+       __ps_master_register_key_callback(new_master, KEY_3G_ENABLE);
+       __ps_master_register_key_callback(new_master, KEY_DATA_ROAMING_SETTING);
+       __ps_master_register_key_callback(new_master, KEY_DATA_ROAMING_APP_SETTING);
+#if defined(TIZEN_UPS_ENABLED)
+       __ps_master_register_key_callback(new_master, KEY_POWER_SAVING_MODE);
+#endif
+       //__ps_master_register_key_callback(new_master, KEY_PM_STATE);
+#if defined(TIZEN_PS_FORCE_ATTACH_DETACH)
+       __ps_master_register_key_callback(new_master, KEY_WECONN_ALL_CONNECTED);
+#endif
 
-       /* Adding Hook for modem addition laters */
+       /*Alarm manager init*/
+       dbg("init alarm manager.");
+       if (alarmmgr_init("packetservice") != ALARMMGR_RESULT_SUCCESS) {
+               err("Failed to init alarm manager");
+               goto FAILURE;
+       }
+       /*Adding Hook for modem addition laters*/
        tcore_server_add_notification_hook(tcore_plugin_ref_server(p),
-               TCORE_SERVER_NOTIFICATION_ADDED_MODEM_PLUGIN,
-               __on_hook_modem_added, new_master);
+               TNOTI_SERVER_ADDED_MODEM_PLUGIN, __on_hook_modem_added, new_master);
 
        dbg("Successfully created the master");
        return new_master;
 
 FAILURE:
-       err("Unable to create master");
-       g_object_unref(master);
-       return NULL;
+               err("Unable to create master");
+               g_object_unref(master);
+               return NULL;
 }
 
-gboolean _ps_master_create_modems(gpointer object)
+gboolean _ps_master_create_modems(gpointer object, TcorePlugin *modem_plg)
 {
-       Server *s = NULL;
-       GSList *plist = NULL;
-       PsMaster *master = NULL;
 
-       TcorePlugin *plugin;
-       gchar *modem_name;
-       CoreObject *co_modem;
-       gpointer modem, modem_node;
+       gpointer modem = NULL, tmp = NULL;
+       ps_master_t *master = NULL;
+       CoreObject *co_modem = NULL;
+       GSList *modemlists = NULL;
+       gchar *modem_name = NULL;
+       gchar *cp_name = NULL;
 
        dbg("create modem objects");
-       tcore_check_return_value(object != NULL, FALSE);
-
-       master = (PsMaster *)object;
-       s = tcore_plugin_ref_server(master->plg);
-       plist = tcore_server_get_modem_plugin_list(s);
-       for (; plist; plist = plist->next) {
-               plugin = plist->data;
-               co_modem = tcore_plugin_ref_core_object(plugin, CORE_OBJECT_TYPE_MODEM);
-               if (co_modem == NULL)
-                       continue;
-
-               dbg("create modem objects %p", co_modem);
-               modem_name = g_strdup_printf("/%s",
-               tcore_server_get_cp_name_by_plugin(plugin));
-
-               modem_node = g_hash_table_lookup(master->modems, modem_name);
-               if (modem_node != NULL) {
-                       dbg("modem '%s' already exists", modem_name);
+       g_return_val_if_fail(object != NULL, FALSE);
+
+       master = (ps_master_t *)object;
+       if(modem_plg){
+               cp_name = (gchar *)tcore_server_get_cp_name_by_plugin(modem_plg);
+               modem_name = g_strdup_printf("/%s", cp_name);
+               tmp = g_hash_table_lookup(master->modems, modem_name);
+               if (tmp != NULL) {
+                       dbg("modem (%p) already existed", tmp);
                        g_free(modem_name);
+                       return FALSE;
+               }
 
-                       continue;
+               modemlists = tcore_plugin_get_core_objects_bytype(modem_plg, CORE_OBJECT_TYPE_MODEM);
+               dbg("plug-in %p, modemlists(%p)", modem_plg, modemlists);
+               if (!modemlists) {
+                       g_free(modem_name);
+                       return FALSE;
                }
+               co_modem = modemlists->data;
+               g_slist_free(modemlists);
 
-               /*  Create Modem */
-               modem = _ps_modem_create_modem(master->conn,
-               master->plg, master, modem_name, co_modem);
+               modem = _ps_modem_create_modem(master->conn, master->plg, master, modem_name, co_modem, cp_name);
                if (modem == NULL) {
-                       err("Failed to Create modem '%s'", modem_name);
+                       dbg("fail to create modem");
                        g_free(modem_name);
-
                        return FALSE;
                }
 
                g_hash_table_insert(master->modems, g_strdup(modem_name), modem);
-               dbg("Created modem '%s'", modem_name);
+               dbg("modem (%p) created at path %s", modem , modem_name);
 
-               /*  Emit signal: Modem added */
                __ps_master_emit_modem_added_signal(master, modem);
 
                g_free(modem_name);
-       }
+       } else {
+
+               /*Need to walk through all modem if any present before packet service intialization*/
+               Server *s;
+               TcorePlugin *p = NULL;
+               GSList *plist_head = NULL;
+               GSList *plist = NULL;
+               GSList *modemlist_head = NULL;
+               GSList *modemlist = NULL;
+
+               s = tcore_plugin_ref_server(master->plg);
+               plist_head = tcore_server_get_modem_plugin_list(s);
 
+               if(!plist_head){
+                       dbg("Modem plugin is not present");
+                       return TRUE;
+               }
+
+               plist = plist_head;
+
+               while(plist){
+                       p = plist->data;
+                       modemlist_head = tcore_plugin_get_core_objects_bytype(p, CORE_OBJECT_TYPE_MODEM);
+                       if(!modemlist_head){
+                               dbg("Found no modem core-objects");
+                               plist = plist->next;
+                               continue;
+                       }
+                       modemlist = modemlist_head;
+                       while(modemlist){
+                               co_modem = modemlist->data;
+                               cp_name = (gchar *)tcore_server_get_cp_name_by_plugin(tcore_object_ref_plugin(co_modem));
+                               modem_name = g_strdup_printf("/%s", cp_name);
+                               tmp = g_hash_table_lookup(master->modems, modem_name);
+                               if (tmp != NULL) {
+                                       dbg("modem (%p) already existed", tmp);
+                                       modemlist = modemlist->next;
+                                       g_free(modem_name);
+                                       continue;
+                               }
+
+                               modem = _ps_modem_create_modem(master->conn, master->plg, master, modem_name, co_modem, cp_name);
+                               if(!modem){
+                                       dbg("Fail to create modem ");
+                                       modemlist = modemlist->next;
+                                       g_free(modem_name);
+                                       continue;
+                               }
+
+                               g_hash_table_insert(master->modems, g_strdup(modem_name), modem);
+                               dbg("modem (%p) created at path %s", modem , modem_name);
+
+                               __ps_master_emit_modem_added_signal(master, modem);
+
+                               g_free(modem_name);
+                               modemlist = modemlist->next;
+                       }
+                       g_slist_free(modemlist_head);
+                       plist = plist->next;
+               }
+
+               g_slist_free(plist_head);
+       }
        return TRUE;
 }
 
-gboolean _ps_master_get_storage_value_bool(gpointer object, TcoreStorageKey key)
+gboolean _ps_master_get_storage_value_bool(gpointer object, enum tcore_storage_key key)
 {
        Server *s = NULL;
-       TcoreStorage *strg = NULL;
-       PsMaster *master = object;
+       Storage *strg = NULL;
+       ps_master_t *master = object;
 
-       tcore_check_return_value(master != NULL, FALSE);
+       g_return_val_if_fail(master != NULL, FALSE);
        s = tcore_plugin_ref_server(master->plg);
        strg = tcore_server_find_storage(s, "vconf");
 
-       return tcore_storage_get_bool(strg, key);
+       return tcore_storage_get_bool(strg, key);;
 }
 
-gboolean _ps_master_set_storage_value_bool(gpointer object,TcoreStorageKey key, gboolean value)
+gint _ps_master_get_storage_value_int(gpointer object, enum tcore_storage_key key)
 {
        Server *s = NULL;
-       TcoreStorage *strg = NULL;
-       PsMaster *master = object;
+       Storage *strg = NULL;
+       ps_master_t *master = object;
 
-       tcore_check_return_value(master != NULL, FALSE);
+       g_return_val_if_fail(master != NULL, FALSE);
+       s = tcore_plugin_ref_server(master->plg);
+       strg = tcore_server_find_storage(s, "vconf");
+
+       return tcore_storage_get_int(strg, key);;
+}
+
+gboolean _ps_master_set_storage_value_bool(gpointer object, enum tcore_storage_key key, gboolean value)
+{
+       Server *s = NULL;
+       Storage *strg = NULL;
+       ps_master_t *master = object;
+
+       g_return_val_if_fail(master != NULL, FALSE);
        s = tcore_plugin_ref_server(master->plg);
        strg = tcore_server_find_storage(s, "vconf");
 
        return tcore_storage_set_bool(strg, key, value);
 }
 
+gboolean _ps_master_set_storage_value_int(gpointer object, enum tcore_storage_key key, gint value)
+{
+       Server *s = NULL;
+       Storage *strg = NULL;
+       ps_master_t *master = object;
+
+       g_return_val_if_fail(master != NULL, FALSE);
+       s = tcore_plugin_ref_server(master->plg);
+       strg = tcore_server_find_storage(s, "vconf");
+
+       return tcore_storage_set_int(strg, key, value);
+}
+
 static gboolean on_master_get_modems (PacketServiceMaster *obj_master,
-       GDBusMethodInvocation *invocation, gpointer user_data)
+               GDBusMethodInvocation *invocation,
+               gpointer user_data)
 {
        GVariantBuilder b_modem;
        GVariant *modems;
 
        GHashTableIter iter;
        gpointer key, value;
-       PsMaster *master = user_data;
+       ps_master_t *master = user_data;
+
+       if (!ps_util_check_access_control (invocation, AC_PS_PUBLIC, "r"))
+               return TRUE;
 
        dbg("Entered");
+       
        if (master->modems == NULL) {
                err("No modem Present");
                FAIL_RESPONSE(invocation, PS_ERR_INTERNAL);
@@ -327,14 +569,14 @@ static gboolean on_master_get_modems (PacketServiceMaster *obj_master,
 
        g_hash_table_iter_init(&iter, master->modems);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
-               gchar *path = NULL;
 
+               gchar *path = NULL;
                path = _ps_modem_ref_path(value);
                dbg("modem path [%s]",path);
 
                g_variant_builder_open(&b_modem, G_VARIANT_TYPE("{sa{ss}}"));
                g_variant_builder_add(&b_modem, "s", g_strdup(path));
-               if (FALSE == _ps_modem_get_properties_handler(value, &b_modem)) {
+               if(FALSE == _ps_modem_get_properties_handler(value, &b_modem)){
                        err("Unable to get the modem properties");
                        g_variant_builder_close(&b_modem);
                        FAIL_RESPONSE(invocation, PS_ERR_INTERNAL);
@@ -348,198 +590,14 @@ static gboolean on_master_get_modems (PacketServiceMaster *obj_master,
        return TRUE;
 }
 
-static gboolean on_master_get_profile_list (PacketServiceMaster *obj_master,
-       GDBusMethodInvocation *invocation, gpointer user_data)
-{
-       int index = 0;
-       GHashTableIter iter;
-       gpointer key, value;
-
-       guint len =0;
-       gchar **strv = NULL;
-       GHashTable *contexts = NULL;
-       GSList *profiles = NULL;
-
-       dbg("master get the profile list");
-
-       contexts = _ps_context_ref_hashtable();
-       if (contexts == NULL) {
-               err("no profiles");
-               FAIL_RESPONSE(invocation, PS_ERR_NO_PROFILE);
-               return TRUE;
-       }
-
-       g_hash_table_iter_init(&iter, contexts);
-       while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
-               gchar *s_path = NULL;
-
-               s_path = _ps_context_ref_path(value);
-               dbg("key(%s), value(%p), path(%s)", (gchar *)key, value, s_path);
-               if (s_path)
-                       profiles = g_slist_append(profiles, g_strdup((const gchar*)s_path));
-       }
-
-       if (profiles == NULL) {
-               err("no profiles");
-               FAIL_RESPONSE(invocation, PS_ERR_NO_PROFILE);
-               return TRUE;
-       }
-
-       len = g_slist_length(profiles);
-       strv = g_new(gchar *, len+1);
-
-       while (profiles) {
-               strv[index] = g_strdup(profiles->data);
-               index++;
-
-               profiles = profiles->next;
-       }
-       strv[index] = NULL;
-
-       packet_service_master_complete_get_profile_list(obj_master,
-                               invocation,(const gchar *const *)strv);
-
-       g_strfreev(strv);
-       profiles = g_slist_nth(profiles, 0);
-       g_slist_free_full(profiles, g_free);
-       return TRUE;
-}
-
-static gboolean on_master_add_profile (PacketServiceMaster *obj_master,
-       GDBusMethodInvocation *invocation,
-       GVariant *property, gpointer user_data)
-{
-       GVariantIter g_iter;
-       gchar *g_value;
-       gchar *g_key;
-
-       GHashTableIter iter;
-       gpointer key, value;
-       gboolean rv = FALSE;
-       gchar *operator = NULL;
-       PsMaster *master = user_data;
-       GHashTable *profile_property =
-               g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free);
-
-       dbg("add profile request");
-
-       g_hash_table_iter_init(&iter, master->modems);
-       while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
-               operator = _ps_modem_ref_operator(value);
-               if (operator)
-                       break;
-       }
-
-       if (!operator) {
-               err("there is no active modem");
-               FAIL_RESPONSE(invocation, PS_ERR_INTERNAL);
-               return TRUE;
-       }
-
-       /* Create a hash table for the profile property as all fucntion already use ghash table */
-       g_variant_iter_init (&g_iter, property);
-       while (g_variant_iter_next (&g_iter, "{ss}", &g_key, &g_value)) {
-               dbg(" '%s' value '%s'", g_key, g_value);
-
-               g_hash_table_insert(profile_property, g_strdup(g_key), g_strdup(g_value));
-
-               /*  must free data for ourselves */
-               g_free (g_value);
-               g_free (g_key);
-       }
-
-       rv = _ps_context_add_context(value, operator, profile_property);
-       if (rv != TRUE) {
-               err("Failed to add the Profile");
-               FAIL_RESPONSE(invocation, PS_ERR_INTERNAL);
-               return TRUE;
-       }
-
-       packet_service_master_complete_add_profile(obj_master, invocation, TRUE);
-
-       g_hash_table_destroy(profile_property);
-       return TRUE;
-}
-
-static gboolean on_master_reset_profile (PacketServiceMaster *obj_master,
-       GDBusMethodInvocation *invocation,
-       gint type, gpointer user_data)
-{
-       GHashTableIter iter;
-       gpointer key, value;
-       gboolean rv = FALSE;
-       int b_check = 0;
-       PsMaster *master = user_data;
-
-       dbg("reset profile request type(%d)", type);
-
-       if (master->modems == NULL) {
-               err("modem does not exist");
-               FAIL_RESPONSE(invocation,PS_ERR_INTERNAL);
-               return TRUE;
-       }
-
-       if (type == 0) {
-               b_check = access("/opt/system/csc-default/data/csc-default-data-connection.ini", F_OK);
-               if (b_check != 0 ) {
-                       err("csc file was not there");
-                       FAIL_RESPONSE(invocation,PS_ERR_INTERNAL);
-                       return TRUE;
-               }
-       }
-
-       g_hash_table_iter_init(&iter, master->modems);
-       while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
-               err("key(%s), value(%p) context", key, value);
-               _ps_modem_processing_power_enable(value, FALSE);
-               _ps_modem_set_sim_enabled(value, FALSE);
-       }
-
-       dbg("Reseting the hash table");
-       _ps_context_reset_hashtable();
-
-       if (type == 0) {
-               _ps_context_reset_profile_table();
-               rv = _ps_context_fill_profile_table_from_ini_file();
-       }
-
-       g_hash_table_iter_init(&iter, master->modems);
-       while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
-               _ps_get_co_modem_values(value);
-       }
-
-       if (type == 0 && !rv) {
-               err("csc data was wrong");
-               FAIL_RESPONSE(invocation, PS_ERR_INTERNAL);
-               return TRUE;
-       }
-
-       packet_service_master_complete_reset_profile(obj_master, invocation, TRUE);
-       return TRUE;
-}
-
-static void _ps_master_setup_interface(PacketServiceMaster *master,
-       PsMaster *master_data)
+static void _ps_master_setup_interface(PacketServiceMaster *master, ps_master_t *master_data)
 {
        dbg("Entered");
 
        g_signal_connect (master,
-               "handle-get-modems",
-               G_CALLBACK (on_master_get_modems),
-               master_data);
-
-       g_signal_connect (master,
-               "handle-get-profile-list",
-               G_CALLBACK (on_master_get_profile_list),
-               master_data);
-
-       g_signal_connect (master,
-               "handle-add-profile",
-               G_CALLBACK (on_master_add_profile),
-               master_data);
+                       "handle-get-modems",
+                       G_CALLBACK (on_master_get_modems),
+                       master_data);
+       return;
 
-       g_signal_connect (master,
-               "handle-reset-profile",
-               G_CALLBACK (on_master_reset_profile),
-               master_data);
 }
old mode 100644 (file)
new mode 100755 (executable)
index 279a19e..9847a29
@@ -1,7 +1,10 @@
 /*
- * tel-plugin-packetservice
+ * PacketService Control Module
  *
- * Copyright (c) 2013 Samsung Electronics Co. Ltd. All rights reserved.
+ * Copyright (c) 2012 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Contact: DongHoo Park <donghoo.park@samsung.com>
+ *         Arun Shukla <arun.shukla@samsung.com>
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -14,6 +17,7 @@
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
+ *
  */
 
 #include "ps.h"
 
 #include <server.h>
 #include <plugin.h>
+#include <user_request.h>
 #include <core_object.h>
+#include <co_context.h>
+#include <co_ps.h>
+
+#define PROP_DEFAULT   FALSE
+#define PROP_DEFAULT_STR   NULL
+#define BOOL2STRING(a) ((a==TRUE) ? ("TRUE"):("FALSE"))
+#define CHAR2STRING(a) g_strdup_printf("%c", a)
+
+struct ps_thread_data {
+       ps_modem_t* modem;
+       GThread *selfi;
+};
+
+static void __ps_modem_emit_property_changed_signal(ps_modem_t *modem);
+static void __ps_modem_emit_service_added_signal(ps_modem_t *modem, gpointer service);
+/*static void __ps_modem_emit_service_removed_signal(ps_modem_t *modem, gpointer service);*/
+static void __ps_modem_emit_dedicated_bearer_info_signal(ps_modem_t *modem,
+       struct tnoti_ps_dedicated_bearer_info *bearer_info);
+static void _ps_modem_setup_interface(PacketServiceModem *modem, ps_modem_t *modem_data);
+
+static void    __ps_modem_create_service(GDBusConnection *conn, TcorePlugin *p,
+                               gpointer modem, CoreObject *co_modem);
+static void __ps_modem_remove_service(ps_modem_t *modem, gpointer service);
+static void __ps_modem_get_ps_setting_from_storage(ps_modem_t *object);
+static void __ps_modem_processing_modem_event(gpointer object);
+
+static gboolean __ps_modem_set_powered(ps_modem_t *modem, int value);
+static gboolean __ps_modem_set_sim_complete(ps_modem_t *modem, gboolean value, gchar *operator);
+
+static gboolean __ps_modem_thread_finish_cb(gpointer data)
+{
+       struct ps_thread_data *thread_data = data;
+       ps_modem_t * modem;
+       GHashTableIter iter;
+       gpointer key, value;
 
-#define PROP_DEFAULT           FALSE
-#define PROP_DEFAULT_STR       NULL
-#define BOOL2STRING(a)         ((a==TRUE) ? ("TRUE"):("FALSE"))
+       if(!thread_data) {
+               err("thread_data is NULL !!");
+               return FALSE;
+       }
 
-static void __ps_modem_emit_property_changed_signal(PsModem *modem);
-static void __ps_modem_emit_service_added_signal(PsModem *modem, gpointer service);
-/* static void __ps_modem_emit_service_removed_signal(PsModem *modem, gpointer service); */
-static void _ps_modem_setup_interface(PacketServiceModem *modem, PsModem *modem_data);
+       modem = thread_data->modem;
 
-static void __ps_modem_create_service(GDBusConnection *conn,
-       TcorePlugin *p, gpointer modem, CoreObject *co_modem);
-static void __ps_modem_remove_service(PsModem *modem, gpointer service);
-static void __ps_modem_get_ps_setting_from_storage(PsModem *object);
-static void __ps_modem_processing_modem_event(gpointer object);
+       dbg("Thread %p return is complete", thread_data->selfi);
 
-static gboolean __ps_modem_set_powered(PsModem *modem, gboolean value);
-static gboolean __ps_modem_set_sim_complete(PsModem *modem,
-       gboolean value, gchar *operator);
+       _ps_get_co_modem_values(thread_data->modem);
+       _ps_modem_set_reset_profile(thread_data->modem, FALSE);
+       packet_service_modem_complete_reset_profile(thread_data->modem->if_obj, thread_data->modem->invocation, TRUE);
+
+       g_thread_join(thread_data->selfi);
+       dbg("Clean up of thread %p is complete", thread_data->selfi);
+       thread_data->modem->invocation = NULL;
+       _ps_modem_remove_profile_reset_gsource(thread_data->modem);
+       thread_data->modem = NULL;
+       thread_data->selfi = NULL;
+       g_free(thread_data);
+
+       /* Try to re-connect default contexts after reset profile is complete */
+       g_hash_table_iter_init(&iter, modem->services);
+       while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
+               _ps_service_connect_default_context(value);
+       }
+
+       return FALSE;
+}
+
+static gpointer __ps_modem_regenerate_database(gpointer data)
+{
+       gboolean rv = FALSE;
+       ps_modem_t *modem = data;
+       struct ps_thread_data *thread_data = NULL;
+
+       thread_data = g_try_malloc0(sizeof(*thread_data));
+       if(!thread_data) {
+               err("mamory alloc is fail !!!");
+               return NULL;
+       }
+       thread_data->modem = modem;
+       thread_data->selfi = g_thread_self();
+
+       _ps_context_reset_profile_table(modem->cp_name);
+       /* Re-generate global APN database */
+       if(g_str_has_suffix(modem->cp_name, "1"))
+               rv = ps_util_system_command("/usr/bin/sqlite3 /opt/dbspace/.dnet2.db < /usr/share/ps-plugin/dnet_db_init.sql");
+       else
+               rv = ps_util_system_command("/usr/bin/sqlite3 /opt/dbspace/.dnet.db < /usr/share/ps-plugin/dnet_db_init.sql");
+       ps_dbg_ex_co(modem->co_modem, "system command sent, rv(%d)", rv);
+       rv = _ps_context_fill_profile_table_from_ini_file(modem->cp_name);
+
+       if (TRUE == ps_util_thread_dispatch(g_main_context_default(), G_PRIORITY_LOW, (GSourceFunc)__ps_modem_thread_finish_cb, thread_data)) {
+               dbg("Thread %p processing is complete", thread_data->selfi);
+       }
+       return NULL;
+}
 
 void __remove_modem_handler(gpointer data)
 {
-       PsModem *modem = data;
+       ps_modem_t *modem = data;
 
-       dbg("Entered");
-       if (!modem) {
+       ps_dbg_ex_co(_ps_modem_ref_co_modem(modem), "Entered");
+       if(!modem){
                dbg("Modem is NULL");
                return;
        }
 
-       /* Need to remove the compelete hash table */
+       __ps_modem_cp_reset_send_pending_request_response(modem);
+
+       /*Need to remove the compelete hash table*/
        g_hash_table_remove_all(modem->services);
 
-       /* Need to UNexport and Unref the master Object */
+       /*Need to UNexport and Unref the master Object */
        g_dbus_interface_skeleton_unexport(G_DBUS_INTERFACE_SKELETON(modem->if_obj));
 
        g_object_unref(modem->if_obj);
 
-       /* Need to free memory allocated for the internal structure */
+       /*Need to free memory allocated for the internal structure*/
+       g_queue_free(modem->work_queue);
        g_free(modem->path);
        g_free(modem->operator);
+       g_free(modem->cp_name);
+
+       _ps_modem_remove_profile_reset_gsource(modem);
+
        g_free(modem);
 
        dbg("Exiting");
+       return;
 }
 
-static void __ps_modem_emit_property_changed_signal(PsModem *modem)
+static void __ps_modem_emit_property_changed_signal(ps_modem_t *modem)
 {
        GVariant *gv = NULL;
        GVariantBuilder properties;
 
-       dbg("get modem properties");
+       ps_dbg_ex_co(_ps_modem_ref_co_modem(modem), "get modem properties");
 
        gv = _ps_modem_get_properties(modem, &properties);
        packet_service_modem_emit_property_changed(modem->if_obj, gv);
+
+       return;
 }
 
-static void __ps_modem_emit_service_added_signal(PsModem *modem, gpointer service)
+static void __ps_modem_emit_service_added_signal(ps_modem_t *modem, gpointer service)
 {
        GVariant *gv = NULL;
        GVariantBuilder property;
 
-       dbg("get service properties");
+       ps_dbg_ex_co(_ps_modem_ref_co_modem(modem), "get service properties");
 
        gv = _ps_service_get_properties(service, &property);
        packet_service_modem_emit_service_added(modem->if_obj, gv);
+       return;
 }
-
-/*  blocked may be used later
-static void __ps_modem_emit_service_removed_signal(PsModem *modem, gpointer service)
+/* blocked may be used later
+static void __ps_modem_emit_service_removed_signal(ps_modem_t *modem, gpointer service)
 {
-       PsService *psservice = service;
+       ps_service_t *psservice = service;
        packet_service_modem_emit_service_removed(modem->if_obj,psservice->path);
        return;
 }
 */
 
-static void __ps_modem_create_service(GDBusConnection *conn,
-       TcorePlugin *p, gpointer modem, CoreObject *co_modem)
+static void __ps_modem_emit_dedicated_bearer_info_signal(ps_modem_t *modem,
+       struct tnoti_ps_dedicated_bearer_info *bearer_info)
+{
+       GVariant *gv = NULL;
+       GVariantBuilder properties;
+       guint i = 0;
+       char *num_dedicated_bearer, *profile_id, *qci, *gbr_dl, *gbr_ul, *max_br_dl, *max_br_ul;
+
+       dbg("dedicated bearer information");
+
+       g_return_if_fail(modem != NULL);
+       g_return_if_fail(bearer_info != NULL);
+
+       g_variant_builder_init(&properties, G_VARIANT_TYPE("a{ss}"));
+
+       num_dedicated_bearer = CHAR2STRING(bearer_info->num_dedicated_bearer);
+       g_variant_builder_add(&properties, "{ss}", "num_dedicated_bearer", num_dedicated_bearer);
+       g_free(num_dedicated_bearer);
+
+       for (i = 0; i < bearer_info->num_dedicated_bearer ; i++) {
+               char *buf;
+               buf = g_strdup_printf("%s_%d", "profile_id", i);
+               profile_id = CHAR2STRING(bearer_info->dedicated_bearer[i].profile_id);
+               g_variant_builder_add(&properties, "{ss}", buf, profile_id);
+               g_free(buf);
+               g_free(profile_id);
+
+               buf = g_strdup_printf("%s_%d", "qci", i);
+               qci = CHAR2STRING(bearer_info->dedicated_bearer[i].qci);
+               g_variant_builder_add(&properties, "{ss}", buf, qci);
+               g_free(buf);
+               g_free(qci);
+
+               buf = g_strdup_printf("%s_%d", "gbr_dl", i);
+               gbr_dl = CHAR2STRING(bearer_info->dedicated_bearer[i].gbr_dl);
+               g_variant_builder_add(&properties, "{ss}", buf, gbr_dl);
+               g_free(buf);
+               g_free(gbr_dl);
+
+               buf = g_strdup_printf("%s_%d", "gbr_ul", i);
+               gbr_ul = CHAR2STRING(bearer_info->dedicated_bearer[i].gbr_ul);
+               g_variant_builder_add(&properties, "{ss}", buf, gbr_ul);
+               g_free(buf);
+               g_free(gbr_ul);
+
+               buf = g_strdup_printf("%s_%d", "max_br_dl", i);
+               max_br_dl = CHAR2STRING(bearer_info->dedicated_bearer[i].max_br_dl);
+               g_variant_builder_add(&properties, "{ss}", buf, max_br_dl);
+               g_free(buf);
+               g_free(max_br_dl);
+
+               buf = g_strdup_printf("%s_%d", "max_br_ul", i);
+               max_br_ul = CHAR2STRING(bearer_info->dedicated_bearer[i].max_br_ul);
+               g_variant_builder_add(&properties, "{ss}", buf, max_br_ul);
+               g_free(buf);
+               g_free(max_br_ul);
+       }
+       gv = g_variant_builder_end(&properties);
+
+       packet_service_modem_emit_dedicated_bearer_info(modem->if_obj, gv);
+}
+
+static void __ps_modem_create_service(GDBusConnection *conn, TcorePlugin *p,
+               gpointer modem, CoreObject *co_modem)
 {
        gchar *t_path = NULL;
        GObject *object = NULL;
 
+       GSList *co_pslist = NULL;
+       GSList *co_networks = NULL;
        CoreObject *co_ps = NULL;
        CoreObject *co_network = NULL;
        TcorePlugin *target_plg = NULL;
 
        target_plg = tcore_object_ref_plugin(co_modem);
+       co_pslist = tcore_plugin_get_core_objects_bytype(target_plg, CORE_OBJECT_TYPE_PS);
+       if (!co_pslist)
+               return;
+       co_ps = co_pslist->data;
+       g_slist_free(co_pslist);
 
-       co_ps = tcore_plugin_ref_core_object(target_plg, CORE_OBJECT_TYPE_PS);
-
-       co_network = tcore_plugin_ref_core_object(target_plg, CORE_OBJECT_TYPE_NETWORK);
-
-       if (!co_ps || !co_network) {
-               err("Either ps or network core object not Present");
+       co_networks = tcore_plugin_get_core_objects_bytype(target_plg, CORE_OBJECT_TYPE_NETWORK);
+       if (!co_networks)
                return;
-       }
+       co_network = co_networks->data;
+       g_slist_free(co_networks);
 
-       t_path = g_strdup_printf("%s_ps", _ps_modem_ref_path(modem));
-       dbg("service path (%s)", t_path);
+       if(!co_ps || !co_network)
+               return;
 
-       /*  Create service object */
+       t_path = g_strdup_printf("%s/%s", _ps_modem_ref_path(modem), "umts_ps");
+       ps_dbg_ex_co(co_modem, "service path (%s)", t_path);
        object = _ps_service_create_service(conn,p, modem, co_network, co_ps, t_path);
+       if(object == NULL) {
+               err("Failed to create service ");
+               return;
+       }
 
-       g_hash_table_insert( ((PsModem *) modem)->services, g_strdup(t_path), object);
-       dbg("service (%p) insert to hash", object);
-
-       /*  Emit signal for service added  */
-       __ps_modem_emit_service_added_signal((PsModem *) modem, object);
+       g_hash_table_insert( ((ps_modem_t *) modem)->services, g_strdup(t_path), object);
+       ps_dbg_ex_co(co_modem, "service (%p) insert to hash", object);
+       __ps_modem_emit_service_added_signal((ps_modem_t *) modem, object);
 
        g_free(t_path);
+
+       return;
 }
 
-static void __ps_modem_remove_service(PsModem *modem, gpointer service)
+static void __ps_modem_remove_service(ps_modem_t *modem, gpointer service)
 {
-       PsService *psservice = service;
+       ps_service_t *psservice = service;
 
-       dbg("Entered");
+       ps_dbg_ex_co(_ps_modem_ref_co_modem(modem), "Entered");
 
-       /* Unexporting the interface for the modem */
-       if (psservice->if_obj) {
+       /*Unexporting the interface for the modem*/
+       if(psservice->if_obj){
                g_dbus_interface_skeleton_unexport(G_DBUS_INTERFACE_SKELETON(psservice->if_obj));
                g_object_unref(psservice->if_obj);
                psservice->if_obj = NULL;
@@ -151,75 +312,104 @@ static void __ps_modem_remove_service(PsModem *modem, gpointer service)
        g_hash_table_remove(modem->services, _ps_service_ref_path(service));
 
        dbg("Successfully removed the service from the modem");
+       return;
 }
 
-static gboolean __ps_modem_set_powered(PsModem *modem, gboolean value)
+static gboolean __ps_modem_set_powered(ps_modem_t *modem, gboolean value)
 {
-       tcore_check_return_value(modem != NULL, FALSE);
+       g_return_val_if_fail(modem != NULL, FALSE);
 
        modem->powered = value;
-
-       dbg("modem(%p) powered(%d)", modem, modem->powered);
+       ps_dbg_ex_co(_ps_modem_ref_co_modem(modem), "modem(%p) powered(%d)", modem, modem->powered);
        __ps_modem_emit_property_changed_signal(modem);
-
        return TRUE;
 }
 
-static gboolean __ps_modem_set_sim_complete(PsModem *modem, gboolean value, gchar *operator)
+static gboolean __ps_modem_set_sim_complete(ps_modem_t *modem, gboolean value, gchar *operator)
 {
-       tcore_check_return_value(modem != NULL, FALSE);
+       g_return_val_if_fail(modem != NULL, FALSE);
 
+       /* Update SIM init status */
        modem->sim_init = value;
        if (value && operator != NULL && !modem->operator)
                modem->operator = g_strdup(operator);
+       ps_dbg_ex_co(_ps_modem_ref_co_modem(modem), "modem [%p] SIM-Init [%s]", modem, (modem->sim_init ? "INITIALIZED" : "UNINITIALIZED"));
 
-       dbg("modem(%p) sim init(%d) operator(%s)", modem, modem->sim_init, modem->operator);
        __ps_modem_emit_property_changed_signal(modem);
 
        return TRUE;
 }
 
-static gboolean __ps_modem_set_flght_mode(PsModem *modem, gboolean value)
+static gboolean __ps_modem_set_flght_mode(ps_modem_t *modem, gboolean value)
 {
-       tcore_check_return_value(modem != NULL, FALSE);
+       g_return_val_if_fail(modem != NULL, FALSE);
 
        modem->flight_mode = value;
-
-       dbg("modem(%p) flight_mode(%d)", modem, modem->flight_mode);
+       ps_dbg_ex_co(_ps_modem_ref_co_modem(modem), "modem(%p) flight_mode(%d)", modem, modem->flight_mode);
        __ps_modem_emit_property_changed_signal(modem);
        __ps_modem_processing_modem_event(modem);
 
        return TRUE;
 }
 
-static void __ps_modem_get_ps_setting_from_storage(PsModem *object)
+static void __ps_modem_get_ps_setting_from_storage(ps_modem_t *object)
 {
        gboolean key_3g_enable = FALSE, key_roaming_allowed = FALSE;
-       PsModem *modem = NULL;
-
-       modem = (PsModem *) object;
-       key_3g_enable = _ps_master_get_storage_value_bool(modem->p_master, STORAGE_KEY_DATA_ENABLE);
-       key_roaming_allowed = _ps_master_get_storage_value_bool(modem->p_master, STORAGE_KEY_SETAPPL_STATE_DATA_ROAMING);
+       gboolean key_nw_restrict_mode = FALSE, key_roaming_allowed_app_setting = FALSE;
+       gint key_ps_mode = 0;
+       ps_modem_t *modem = NULL;
+       CoreObject *co_modem;
+#if defined(TIZEN_UPS_ENABLED)
+       struct treq_modem_set_flightmode data = {0};
+#endif
+
+       modem = (ps_modem_t *) object;
+       co_modem = _ps_modem_ref_co_modem(modem);
+       key_3g_enable = _ps_master_get_storage_value_bool(modem->p_master, KEY_3G_ENABLE);
+       key_roaming_allowed = _ps_master_get_storage_value_bool(modem->p_master, KEY_DATA_ROAMING_SETTING);
+       key_roaming_allowed_app_setting = _ps_master_get_storage_value_bool(modem->p_master, KEY_DATA_ROAMING_APP_SETTING);
+       key_ps_mode = _ps_master_get_storage_value_int(modem->p_master, KEY_POWER_SAVING_MODE);
+       key_nw_restrict_mode = _ps_master_get_storage_value_bool(modem->p_master, KEY_NETWORK_RESTRICT_MODE);
 
        _ps_modem_set_data_allowed(modem, key_3g_enable);
 
-       _ps_modem_set_data_roaming_allowed(modem, key_roaming_allowed);
+       if(!key_roaming_allowed_app_setting){
+               _ps_modem_set_data_roaming_allowed(modem, key_roaming_allowed);
+       }
+       else{
+               _ps_modem_set_data_roaming_allowed(modem, TRUE);
+       }
 
-       dbg("data allowed(%d) roaming allowed(%d) ", key_3g_enable, key_roaming_allowed);
+#if defined(TIZEN_UPS_ENABLED)
+       _ps_modem_set_psmode(modem, key_ps_mode);
+       if(key_ps_mode == POWER_SAVING_MODE_NORMAL){
+               dbg("set flight mode off");
+               data.enable = FALSE;
+       } else if(key_ps_mode == POWER_SAVING_MODE_WEARABLE) {
+               dbg("set flight mode on");
+               data.enable = TRUE;
+       } else {
+               err("Not supported");
+               goto OUT;
+       }
+       _ps_modem_send_filght_mode_request(modem, &data);
+OUT:
+#endif
+       ps_dbg_ex_co(co_modem, "data allowed(%d) roaming allowed(%d) power saving mode(%d), network restrict mode (%d)",
+               key_3g_enable, key_roaming_allowed, key_ps_mode, key_nw_restrict_mode);
+       return;
 }
 
 static void __ps_modem_processing_modem_event(gpointer object)
 {
-       PsModem * modem = object;
+       ps_modem_t * modem = object;
        GHashTableIter iter;
        gpointer key, value;
 
        g_return_if_fail(modem != NULL);
 
-       if (!modem->services) {
-               err("Null Service");
+       if(!modem->services)
                return;
-       }
 
        g_hash_table_iter_init(&iter, modem->services);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
@@ -228,7 +418,7 @@ static void __ps_modem_processing_modem_event(gpointer object)
                s_roaming = _ps_service_get_roaming(value);
                _ps_update_cellular_state_key(value);
 
-               if (!modem->powered) {
+               if(modem->powered == PS_MODEM_STATE_OFFLINE){
                        _ps_service_remove_contexts(value);
                        _ps_free_co_ps_event(value);
                        _ps_free_co_network_event(value);
@@ -236,34 +426,66 @@ static void __ps_modem_processing_modem_event(gpointer object)
                        continue;
                }
 
-               if (modem->flight_mode || !modem->data_allowed || (s_roaming && !modem->roaming_allowed)) {
+               if (modem->flight_mode || (s_roaming && !modem->roaming_allowed)) {
                        _ps_service_disconnect_contexts(value);
                        continue;
+               } else if (!modem->data_allowed) {
+                       _ps_service_disconnect_internet_mms_contexts(value);
+                       continue;
                }
 
                //only available case
                _ps_service_connect_default_context(value);
        }
+
+       return;
 }
 
-gpointer _ps_modem_create_modem(GDBusConnection *conn,
-       TcorePlugin *p, gpointer master, gchar* modem_name, gpointer co_modem)
+static enum tcore_hook_return on_hook_modem_dedicated_bearerinfo(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data,
+               void *user_data)
+{
+       struct tnoti_ps_dedicated_bearer_info *bearer_info;
+       ps_modem_t *modem = user_data;
+
+       g_return_val_if_fail(modem != NULL, TCORE_HOOK_RETURN_STOP_PROPAGATION);
+       g_return_val_if_fail(data != NULL, TCORE_HOOK_RETURN_STOP_PROPAGATION);
+
+       bearer_info = (struct tnoti_ps_dedicated_bearer_info *)data;
+       dbg("Dedicated bearer information event! Count: [%d]", bearer_info->num_dedicated_bearer);
+
+       __ps_modem_emit_dedicated_bearer_info_signal(modem, bearer_info);
+
+       return TCORE_HOOK_RETURN_CONTINUE;
+}
+
+gpointer _ps_modem_create_modem(GDBusConnection *conn, TcorePlugin *p, gpointer master,
+                               gchar* modem_name, gpointer co_modem , gchar *cp_name)
 {
        PacketServiceModem *modem;
-       PsModem *new_modem;
+       ps_modem_t *new_modem;
        GError *error = NULL;
 
-       dbg("modem object create");
-       tcore_check_return_value(conn != NULL, NULL);
-       tcore_check_return_value(master != NULL, NULL);
+       ps_dbg_ex_co(co_modem, "modem object create");
+       g_return_val_if_fail(conn != NULL, NULL);
+       g_return_val_if_fail(master != NULL, NULL);
 
-       /* creating the master object for the interface com.tcore.ps.modem */
+       /*creating the master object for the interface com.tcore.ps.modem*/
        modem = packet_service_modem_skeleton_new();
 
-       /* Initializing the modem list for internal referencing */
-       new_modem = g_try_malloc0(sizeof(PsModem));
-       if (NULL == new_modem) {
-               err("Unable to allocate memory for modem");
+       /*Initializing the modem list for internal referencing*/
+       new_modem = g_try_malloc0(sizeof(ps_modem_t));
+       if(NULL == new_modem){
+               ps_err_ex_co(co_modem, "Unable to allocate memory for modem");
+               return NULL;
+       }
+
+       /*Add work queue to keep user request in case of handling active PDP context*/
+       new_modem->hook_flag = 0x00;
+       new_modem->work_queue = g_queue_new();
+       if( NULL == new_modem->work_queue ){
+               ps_err_ex_co(co_modem, "Unable to get work queue for modem");
+               g_free(new_modem);
                return NULL;
        }
 
@@ -272,61 +494,130 @@ gpointer _ps_modem_create_modem(GDBusConnection *conn,
        new_modem->plg = p;
        new_modem->co_modem = co_modem;
        new_modem->path = g_strdup(modem_name);
+       new_modem->cp_name = g_strdup(cp_name);
        new_modem->if_obj = modem;
-       new_modem->services =
-               g_hash_table_new_full(g_str_hash, g_str_equal,
-                       g_free, __remove_service_handler);
+       new_modem->services = g_hash_table_new_full(g_str_hash,g_str_equal, g_free, __remove_service_handler);
+       new_modem->contexts = g_hash_table_new_full(g_str_hash,g_str_equal, g_free, NULL);
 
-       dbg("core object of modem %p", co_modem);
-
-       dbg("core object of modem %p", new_modem->co_modem);
        __ps_modem_get_ps_setting_from_storage(new_modem);
        _ps_hook_co_modem_event(new_modem);
        _ps_get_co_modem_values(new_modem);
 
-       /* Setting the interface call backs functions */
+       /*Setting the interface call backs functions*/
        _ps_modem_setup_interface(modem, new_modem);
 
-       /* exporting the interface object to the path mention for modem */
+       /*exporting the interface object to the path mention for modem*/
        g_dbus_interface_skeleton_export((G_DBUS_INTERFACE_SKELETON(modem)),
-                       conn, modem_name, &error);
+                       conn,
+                       modem_name,
+                       &error);
+
        g_assert_no_error (error);
 
-       dbg("Successfully created the modem");
+       /* Adding hooks for special Network Requests */
+       tcore_server_add_request_hook(tcore_plugin_ref_server(p),
+                       TREQ_NETWORK_SEARCH,
+                       ps_handle_hook, new_modem);
+       tcore_server_add_request_hook(tcore_plugin_ref_server(p),
+                       TREQ_NETWORK_SET_PLMN_SELECTION_MODE,
+                       ps_handle_hook, new_modem);
+       tcore_server_add_request_hook(tcore_plugin_ref_server(p),
+                       TREQ_NETWORK_SET_MODE,
+                       ps_handle_hook, new_modem);
+       tcore_server_add_request_hook(tcore_plugin_ref_server(p),
+                       TREQ_NETWORK_SET_CANCEL_MANUAL_SEARCH,
+                       ps_handle_hook, new_modem);
+       tcore_server_add_request_hook(tcore_plugin_ref_server(p),
+                       TREQ_NETWORK_SET_DEFAULT_DATA_SUBSCRIPTION,
+                       ps_handle_hook, new_modem);
+       tcore_server_add_request_hook(tcore_plugin_ref_server(p),
+                       TREQ_SIM_SET_POWERSTATE,
+                       ps_handle_hook, new_modem);
+       tcore_server_add_request_hook(tcore_plugin_ref_server(p),
+                       TREQ_MODEM_SET_FLIGHTMODE,
+                       ps_handle_hook, new_modem);
+       tcore_server_add_request_hook(tcore_plugin_ref_server(p),
+                       TREQ_MODEM_POWER_OFF,
+                       ps_handle_hook, new_modem);
+       tcore_server_add_request_hook(tcore_plugin_ref_server(p),
+                       TREQ_MODEM_POWER_LOW,
+                       ps_handle_hook, new_modem);
+       tcore_server_add_request_hook(tcore_plugin_ref_server(p),
+                       TREQ_MODEM_POWER_ON,
+                       ps_handle_hook, new_modem);
+
+       tcore_server_add_notification_hook(tcore_plugin_ref_server(p),
+               TNOTI_PS_DEDICATED_BEARER_INFO,
+               on_hook_modem_dedicated_bearerinfo, new_modem);
+
+       ps_err_ex_co(co_modem, "Successfully created the modem");
        return new_modem;
 }
 
+gboolean _ps_modem_send_filght_mode_request(gpointer value, void *data)
+{
+       CoreObject *co_modem = NULL, *co_ps = NULL;
+       UserRequest *ur = NULL;
+       ps_modem_t *modem = value;
+
+       co_modem = _ps_modem_ref_co_modem(modem);
+       co_ps = tcore_plugin_ref_core_object(tcore_object_ref_plugin(co_modem), CORE_OBJECT_TYPE_PS);
+       //deactivate contexts first.
+       tcore_ps_deactivate_contexts (co_ps);
+       tcore_ps_set_online (co_ps, FALSE);
+
+       ur = tcore_user_request_new(NULL, NULL);
+       tcore_user_request_set_data (ur, sizeof(struct treq_modem_set_flightmode), data);
+       tcore_user_request_set_command (ur, TREQ_MODEM_SET_FLIGHTMODE);
+       if(TCORE_RETURN_SUCCESS != tcore_object_dispatch_request(co_modem, ur)) {
+               err("fail to send user request");
+               tcore_user_request_unref(ur);
+               return FALSE;
+       }
+       return TRUE;
+}
+
 gboolean _ps_modem_processing_flight_mode(gpointer object, gboolean enable)
 {
-       PsModem * modem = object;
+       ps_modem_t * modem = object;
 
-       tcore_check_return_value(modem != NULL, FALSE);
+       g_return_val_if_fail(modem != NULL, FALSE);
 
        if (modem->flight_mode == enable)
                return TRUE;
 
        __ps_modem_set_flght_mode(modem, enable);
-
        return TRUE;
 }
 
 gboolean _ps_modem_processing_power_enable(gpointer object, gboolean enable)
 {
-       PsModem * modem = object;
+       ps_modem_t * modem = object;
 
-       tcore_check_return_value(modem != NULL, FALSE);
+       g_return_val_if_fail(modem != NULL, FALSE);
 
-       if (modem->powered == enable)
+       dbg("modem->powered -> [%d] & Modem->sim_init ->[%d] & Modem->reset_profile ->[%d]",
+               modem->powered, modem->sim_init, modem->reset_profile);
+
+       if (modem->sim_init  && (modem->powered == PS_MODEM_STATE_ONLINE) && !modem->reset_profile) {
                return TRUE;
+       }
 
        __ps_modem_set_powered(modem, enable);
-       if (enable) {
-               __ps_modem_create_service(modem->conn,
-                       modem->plg, modem, modem->co_modem);
 
-               if (modem->sim_init == TRUE && modem->operator != NULL) {
-                       GHashTable *contexts = NULL;
-                       contexts = _ps_context_ref_hashtable();
+       if (enable == PS_MODEM_STATE_ONLINE) {
+               if(!modem->initial_bootup) {
+                       dbg("initial bootup");
+                       modem->initial_bootup = TRUE;
+               } else {
+                       return TRUE;
+               }
+
+               __ps_modem_create_service(modem->conn, modem->plg, modem, modem->co_modem);
+               /* Populate Profile for operator as it was removed by fligh mode operation  */
+
+               if (modem->sim_init == TRUE && modem->operator != NULL){
+                       GHashTable *contexts = _ps_context_ref_hashtable(modem);;
 
                        if (contexts != NULL) {
                                GHashTableIter iter;
@@ -334,71 +625,187 @@ gboolean _ps_modem_processing_power_enable(gpointer object, gboolean enable)
                                g_hash_table_iter_init(&iter, modem->services);
 
                                while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
+                                       _ps_service_set_number_of_pdn_cnt(value, modem->operator);
                                        _ps_service_ref_contexts(value, contexts, modem->operator);
                                }
                        }
                }
        }
-       else {
+       else if(enable == PS_MODEM_STATE_OFFLINE) {
+               modem->initial_bootup = FALSE;
                __ps_modem_processing_modem_event(modem);
-               _ps_modem_set_sim_enabled(modem, FALSE);
+               /* SIM init should be set to FALSE during CP silent reset.
+                * MODEM_STATE_RESET -> PS_MODEM_STATE_OFFLINE.
+                * and will be updated when SIM initialized complete notification is received.
+                */
        }
-
        return TRUE;
 }
 
-gboolean _ps_modem_processing_sim_complete(gpointer object,
-       gboolean complete, gchar *operator)
+gboolean _ps_modem_processing_sim_complete(gpointer object, gboolean complete, gchar *operator)
 {
-       PsModem * modem = object;
-       GHashTable *contexts = NULL;
+       ps_modem_t *modem = object;
+       CoreObject *co_modem;
+       g_return_val_if_fail(modem != NULL, FALSE);
+
+       co_modem = _ps_modem_ref_co_modem(modem);
+       ps_dbg_ex_co(co_modem, "Entered: sim_init[%d]", modem->sim_init);
 
-       tcore_check_return_value(modem != NULL, FALSE);
-       dbg("Entered");
-       if (modem->sim_init == complete)
+       if (modem->sim_init == complete && !modem->reset_profile) {
+               ps_dbg_ex_co(co_modem, "No change in SIM state");
                return TRUE;
+       }
+       else {
+               gboolean different_sim = FALSE;
+
+               if (operator && (g_strcmp0(modem->operator, operator) != 0)) {
+                       ps_dbg_ex_co(co_modem, "Previous operator: [%s] Present operator: [%s]", modem->operator, operator);
+                       g_free(modem->operator);
 
-       __ps_modem_set_sim_complete(modem, complete, operator);
-       if (modem->sim_init == TRUE && modem->operator != NULL) {
-               contexts = _ps_context_create_hashtable(modem->conn,
-                       modem->plg, modem->operator);
-               dbg("Hash table created");
-       }
-
-       if (contexts != NULL) {
-               GHashTableIter iter;
-               gpointer key, value;
-               g_hash_table_iter_init(&iter, modem->services);
-               dbg("context not null as created the hash");
-               while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
-                       //_ps_service_set_number_of_pdn_cnt(value, modem->operator);
-                       _ps_service_ref_contexts(value, contexts, modem->operator);
+                       modem->operator = g_strdup(operator);
+                       different_sim = TRUE;
                }
-       }
 
+
+               /* free modem operator */
+               if( FALSE == complete ) {
+                       g_free(modem->operator);
+                       modem->operator = NULL;
+               }
+
+               /* Update SIM state */
+               __ps_modem_set_sim_complete(modem, complete, operator);
+               /* Tizen Telephony makes dummy profile for CDMA by default */
+               _ps_context_create_cdma_profile(modem->operator, modem->cp_name);
+
+               /* Modem power off notification coming due to which profile are removed */
+               /* and needed to be re inserted in db with sim off notification  */
+               /*
+                * Context table creation
+                *
+                * Create context if -
+                *      SIM is initiatized
+                * Initialzed SIM is different (if same SIM is re-initialized then need not create context)
+                * or Reset profile Operator is non-null
+                * Delete context if sim_init = FALSE;
+                * This will be coming when SIM power off or CARD error is received.
+                */
+               if(modem->sim_init == TRUE) {
+                       if((different_sim || modem->reset_profile) && (modem->operator != NULL)) {
+                               GHashTable *contexts;
+
+                               ps_dbg_ex_co(co_modem, "Creating Hash table...");
+                               contexts = _ps_context_create_hashtable(object);
+                               if (contexts != NULL) {
+                                       GHashTableIter iter;
+                                       gpointer key, value;
+
+                                       g_hash_table_iter_init(&iter, modem->services);
+                                       while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
+                                               _ps_service_set_number_of_pdn_cnt(value, modem->operator);
+                                               _ps_service_ref_contexts(value, contexts, modem->operator);
+                                       }
+                               }
+                               else {
+                                       ps_dbg_ex_co(co_modem, "Failed to create HASH table");
+                                       return FALSE;
+                               }
+                       }
+               } else {
+                       GHashTableIter iter;
+                       gpointer key, value;
+
+                       if(!modem->services)
+                               goto EXIT;
+
+                       g_hash_table_iter_init(&iter, modem->services);
+                       while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
+                               ps_dbg_ex_co(co_modem, "Remove contexts on service(%p)", value);
+                               _ps_service_remove_contexts(value);
+                       }
+               }
+       }
+EXIT:
        dbg("Exiting");
        return TRUE;
 }
 
+gboolean _ps_modem_set_reset_profile(gpointer object, gboolean value)
+{
+       ps_modem_t * modem = object;
+
+       g_return_val_if_fail(modem != NULL, FALSE);
+
+       modem->reset_profile = value;
+       dbg("modem(%p) reset_profile(%d)", modem, modem->reset_profile);
+       return TRUE;
+}
+
+gboolean _ps_modem_get_reset_profile(gpointer object)
+{
+       ps_modem_t * modem = object;
+
+       g_return_val_if_fail(modem != NULL, FALSE);
+
+       dbg("modem(%p) reset_profile(%d)", modem, modem->reset_profile);
+
+       return modem->reset_profile;
+}
+
+
+GSource * _ps_modem_get_profile_reset_gsource(gpointer object)
+{
+       ps_modem_t * modem = object;
+
+       g_return_val_if_fail(modem != NULL, NULL);
+
+       return modem->reset_profile_gsource;
+}
+
+gboolean _ps_modem_set_profile_reset_gsource(gpointer object, GSource * source)
+{
+       ps_modem_t * modem = object;
+
+       g_return_val_if_fail(modem != NULL, FALSE);
+
+       modem->reset_profile_gsource = source;
+
+       return TRUE;
+}
+
+gboolean  _ps_modem_remove_profile_reset_gsource(gpointer object)
+{
+       ps_modem_t * modem = object;
+
+       g_return_val_if_fail(modem != NULL, FALSE);
+
+       if (NULL != modem->reset_profile_gsource) {
+               g_source_unref(modem->reset_profile_gsource);
+               modem->reset_profile_gsource = NULL;
+       }
+
+       return TRUE;
+}
+
 gboolean _ps_modem_set_sim_enabled(gpointer object, gboolean value)
 {
-       PsModem * modem = object;
+       ps_modem_t * modem = object;
 
-       tcore_check_return_value(modem != NULL, FALSE);
+       g_return_val_if_fail(modem != NULL, FALSE);
 
        modem->sim_init = value;
-       dbg("modem(%p) sim_enabled(%d)", modem, modem->sim_init);
+       ps_dbg_ex_co(_ps_modem_ref_co_modem(modem), "modem(%p) sim_enabled(%d)", modem, modem->sim_init);
        return TRUE;
 }
 
 gboolean _ps_modem_set_data_allowed(gpointer object, gboolean value)
 {
-       PsModem * modem = object;
+       ps_modem_t * modem = object;
 
-       tcore_check_return_value(modem != NULL, FALSE);
+       g_return_val_if_fail(modem != NULL, FALSE);
 
        modem->data_allowed = value;
-       dbg("modem(%p) data allowed(%d)", modem, modem->data_allowed);
+       ps_dbg_ex_co(_ps_modem_ref_co_modem(modem), "modem(%p) data allowed(%d)", modem, modem->data_allowed);
        __ps_modem_emit_property_changed_signal(modem);
        __ps_modem_processing_modem_event(modem);
 
@@ -407,111 +814,177 @@ gboolean _ps_modem_set_data_allowed(gpointer object, gboolean value)
 
 gboolean _ps_modem_get_data_allowed(gpointer object)
 {
-       PsModem * modem = object;
-       tcore_check_return_value(modem != NULL, FALSE);
+       ps_modem_t * modem = object;
+       g_return_val_if_fail(modem != NULL, FALSE);
 
        return modem->data_allowed;
 }
 
-gboolean _ps_modem_set_data_roaming_allowed(gpointer object,
-       gboolean roaming_allowed)
+gboolean _ps_modem_set_data_roaming_allowed(gpointer object, gboolean roaming_allowed)
 {
-       PsModem * modem = object;
+       ps_modem_t * modem = object;
 
-       tcore_check_return_value(modem != NULL, FALSE);
+       g_return_val_if_fail(modem != NULL, FALSE);
 
        modem->roaming_allowed = roaming_allowed;
-       dbg("modem(%p) roaming allowed(%d)", modem, modem->roaming_allowed);
+       ps_dbg_ex_co(_ps_modem_ref_co_modem(modem), "modem(%p) roaming allowed(%d)", modem, modem->roaming_allowed);
        __ps_modem_emit_property_changed_signal(modem);
 
-       if (!modem->services)
+       if(!modem->services)
                return TRUE;
 
-       if (modem->roaming)
+       if(modem->roaming)
                __ps_modem_processing_modem_event(modem);
 
        return TRUE;
 }
 
+gboolean _ps_modem_set_psmode(gpointer object, gint value)
+{
+       ps_modem_t * modem = object;
+
+       g_return_val_if_fail(modem != NULL, FALSE);
+
+       modem->ps_mode= value;
+       ps_dbg_ex_co(_ps_modem_ref_co_modem(modem), "modem(%p) power saving mode(%d)", modem, modem->ps_mode);
+
+       return TRUE;
+}
+
 gboolean _ps_modem_get_roaming(gpointer object)
 {
-       PsModem * modem = object;
-       tcore_check_return_value(modem != NULL, FALSE);
+       ps_modem_t * modem = object;
+       g_return_val_if_fail(modem != NULL, FALSE);
 
        return modem->roaming;
 }
 
 void _ps_modem_set_roaming(gpointer object, gboolean value)
 {
-       PsModem * modem = object;
+       ps_modem_t * modem = object;
        g_return_if_fail(modem != NULL);
 
        modem->roaming = value;
-       dbg("modem(%p) roaming(%d)", modem, modem->roaming);
+       ps_dbg_ex_co(_ps_modem_ref_co_modem(modem), "modem(%p) roaming(%d)", modem, modem->roaming);
 
        return;
 }
 
+gint _ps_modem_get_psmode(gpointer object)
+{
+       ps_modem_t * modem = object;
+
+       g_return_val_if_fail(modem != NULL, FALSE);
+
+       return modem->ps_mode;
+}
+
+guchar _ps_modem_get_hook_flag(gpointer object)
+{
+       ps_modem_t * modem = object;
+
+       g_return_val_if_fail(modem != NULL, FALSE);
+
+       return modem->hook_flag;
+}
+
 gboolean _ps_modem_get_data_roaming_allowed(gpointer object)
 {
-       PsModem * modem = object;
-       tcore_check_return_value(modem != NULL, FALSE);
+       ps_modem_t * modem = object;
+       g_return_val_if_fail(modem != NULL, FALSE);
 
        return modem->roaming_allowed;
 }
 
 gboolean _ps_modem_get_flght_mode(gpointer object)
 {
-       PsModem * modem = object;
-       tcore_check_return_value(modem != NULL, FALSE);
+       ps_modem_t * modem = object;
+       g_return_val_if_fail(modem != NULL, FALSE);
 
        return modem->flight_mode;
 }
 
+void _ps_modem_set_flght_mode_ups(gpointer object, gboolean value)
+{
+       ps_modem_t * modem = object;
+       g_return_if_fail(modem != NULL);
+
+       modem->flight_mode_ups = value;
+       dbg("modem(%p) flight_mode_ups(%d)", modem, modem->flight_mode_ups);
+
+       return;
+}
+
+gboolean _ps_modem_get_flght_mode_ups(gpointer object)
+{
+       ps_modem_t * modem = object;
+       g_return_val_if_fail(modem != NULL, FALSE);
+
+       return modem->flight_mode_ups;
+}
+
 gboolean _ps_modem_get_sim_init(gpointer object)
 {
-       PsModem * modem = object;
-       tcore_check_return_value(modem != NULL, FALSE);
+       ps_modem_t * modem = object;
+       g_return_val_if_fail(modem != NULL, FALSE);
 
        return modem->sim_init;
 }
 
 gboolean _ps_modem_get_power(gpointer object)
 {
-       PsModem * modem = object;
-       tcore_check_return_value(modem != NULL, FALSE);
+       ps_modem_t * modem = object;
+       g_return_val_if_fail(modem != NULL, FALSE);
 
        return modem->powered;
 }
 
 gchar* _ps_modem_ref_operator(gpointer object)
 {
-       PsModem * modem = object;
-       tcore_check_return_value(modem != NULL, FALSE);
+       ps_modem_t * modem = object;
+       g_return_val_if_fail(modem != NULL, FALSE);
 
        return modem->operator;
 }
 
-gboolean _ps_modem_get_properties_handler(gpointer object,
-       GVariantBuilder *properties)
+ps_subs_type _ps_modem_get_subs_type(gpointer object)
 {
-       PsModem *modem = object;
+       ps_modem_t *modem = object;
+       const gchar *cp_name;
+
+       g_return_val_if_fail(modem != NULL, FALSE);
+
+       cp_name = modem->cp_name;
+       if (g_str_has_suffix(cp_name, "0")) {
+               return PS_SUBS_PRIMARY;
+       } else if (g_str_has_suffix(cp_name, "1")) {
+               return PS_SUBS_SECONDARY;
+       } else if (g_str_has_suffix(cp_name, "2")) {
+               return PS_SUBS_TERTIARY;
+       }
 
-       dbg("get modem properties");
-       tcore_check_return_value(modem != NULL, FALSE);
-       tcore_check_return_value(properties != NULL, FALSE);
+       return PS_SUBS_MAX;
+}
+
+gboolean _ps_modem_get_properties_handler(gpointer object, GVariantBuilder *properties)
+{
+       ps_modem_t *modem = object;
+
+       ps_dbg_ex_co(_ps_modem_ref_co_modem(modem), "get modem properties");
+       g_return_val_if_fail(modem != NULL, FALSE);
+       g_return_val_if_fail(properties != NULL, FALSE);
 
        g_variant_builder_open(properties,G_VARIANT_TYPE("a{ss}"));
-       g_variant_builder_add(properties, "{ss}", "path", g_strdup(modem->path));
+       g_variant_builder_add(properties, "{ss}", "path", modem->path);
 
-       if (modem->operator) {
-               g_variant_builder_add(properties, "{ss}", "operator", g_strdup(modem->operator));
+       if(modem->operator){
+               g_variant_builder_add(properties, "{ss}", "operator", modem->operator);
        }
-       g_variant_builder_add(properties, "{ss}", "powered", g_strdup(BOOL2STRING(modem->powered)));
-       g_variant_builder_add(properties, "{ss}", "sim_init", g_strdup(BOOL2STRING(modem->sim_init)));
-       g_variant_builder_add(properties, "{ss}", "flight_mode", g_strdup(BOOL2STRING(modem->flight_mode)));
-       g_variant_builder_add(properties, "{ss}", "roaming_allowed", g_strdup(BOOL2STRING(modem->roaming_allowed)));
-       g_variant_builder_add(properties, "{ss}", "data_allowed", g_strdup(BOOL2STRING(modem->data_allowed)));
+       g_variant_builder_add(properties, "{ss}", "powered", BOOL2STRING(modem->powered));
+       g_variant_builder_add(properties, "{ss}", "sim_init", BOOL2STRING(modem->sim_init));
+       g_variant_builder_add(properties, "{ss}", "flight_mode", BOOL2STRING(modem->flight_mode));
+       g_variant_builder_add(properties, "{ss}", "roaming_allowed", BOOL2STRING(modem->roaming_allowed));
+       g_variant_builder_add(properties, "{ss}", "data_allowed", BOOL2STRING(modem->data_allowed));
        g_variant_builder_close(properties);
 
        dbg("Exiting");
@@ -520,82 +993,95 @@ gboolean _ps_modem_get_properties_handler(gpointer object,
 
 GVariant *_ps_modem_get_properties(gpointer object, GVariantBuilder *properties)
 {
-       PsModem *modem = object;
+       ps_modem_t *modem = object;
 
-       dbg("get modem properties");
-       tcore_check_return_value(modem != NULL, FALSE);
-       tcore_check_return_value(properties != NULL, FALSE);
+       ps_dbg_ex_co(_ps_modem_ref_co_modem(modem), "get modem properties");
+       g_return_val_if_fail(modem != NULL, FALSE);
+       g_return_val_if_fail(properties != NULL, FALSE);
 
        g_variant_builder_init(properties, G_VARIANT_TYPE("a{ss}"));
 
-       g_variant_builder_add(properties, "{ss}", "path", g_strdup(modem->path));
+       g_variant_builder_add(properties, "{ss}", "path", modem->path);
 
-       if (modem->operator) {
-               g_variant_builder_add(properties, "{ss}", "operator", g_strdup(modem->operator));
+       if(modem->operator){
+               g_variant_builder_add(properties, "{ss}", "operator", modem->operator);
        }
-       g_variant_builder_add(properties, "{ss}", "powered", g_strdup(BOOL2STRING(modem->powered)));
-       g_variant_builder_add(properties, "{ss}", "sim_init", g_strdup(BOOL2STRING(modem->sim_init)));
-       g_variant_builder_add(properties, "{ss}", "flight_mode", g_strdup(BOOL2STRING(modem->flight_mode)));
-       g_variant_builder_add(properties, "{ss}", "roaming_allowed", g_strdup(BOOL2STRING(modem->roaming_allowed)));
-       g_variant_builder_add(properties, "{ss}", "data_allowed", g_strdup(BOOL2STRING(modem->data_allowed)));
-
-       dbg("Path: [%s]", modem->path);
-       dbg("Operator: [%s]", modem->operator);
-       dbg("Powered: [%s]", modem->powered ? "YES" : "NO");
-       dbg("SIM Init: [%s]", modem->sim_init ? "YES" : "NO");
-       dbg("Flight mode: [%s]", modem->flight_mode ? "ON" : "OFF");
-       dbg("Roaming allowed: [%s]", modem->roaming_allowed ? "YES" : "NO");
-       dbg("Data allowed: [%s]", modem->data_allowed ? "YES" : "NO");
+       g_variant_builder_add(properties, "{ss}", "powered", BOOL2STRING(modem->powered));
+       g_variant_builder_add(properties, "{ss}", "sim_init", BOOL2STRING(modem->sim_init));
+       g_variant_builder_add(properties, "{ss}", "flight_mode", BOOL2STRING(modem->flight_mode));
+       g_variant_builder_add(properties, "{ss}", "roaming_allowed", BOOL2STRING(modem->roaming_allowed));
+       g_variant_builder_add(properties, "{ss}", "data_allowed", BOOL2STRING(modem->data_allowed));
 
+       dbg("Exiting");
        return g_variant_builder_end(properties);
 }
 
 GHashTable* _ps_modem_ref_services(gpointer object)
 {
-       PsModem *modem = object;
-       tcore_check_return_value(modem != NULL, NULL);
+       ps_modem_t *modem = object;
+       g_return_val_if_fail(modem != NULL, NULL);
 
        return modem->services;
 }
 
 gchar* _ps_modem_ref_path(gpointer object)
 {
-       PsModem *modem = object;
-       tcore_check_return_value(modem != NULL, NULL);
+       ps_modem_t *modem = object;
+       g_return_val_if_fail(modem != NULL, NULL);
 
        return modem->path;
 }
 
 gpointer _ps_modem_ref_plugin(gpointer object)
 {
-       PsModem *modem = object;
-       tcore_check_return_value(modem != NULL, NULL);
+       ps_modem_t *modem = object;
+       g_return_val_if_fail(modem != NULL, NULL);
 
        return modem->plg;
 }
 
 gpointer _ps_modem_ref_dbusconn(gpointer object)
 {
-       PsModem *modem = object;
-       tcore_check_return_value(modem != NULL, NULL);
+       ps_modem_t *modem = object;
+       g_return_val_if_fail(modem != NULL, NULL);
 
        return modem->conn;
 }
 
 gpointer _ps_modem_ref_co_modem(gpointer object)
 {
-       PsModem *modem = object;
-       tcore_check_return_value(modem != NULL, NULL);
+       ps_modem_t *modem = object;
+       g_return_val_if_fail(modem != NULL, NULL);
 
        return modem->co_modem;
 }
 
+gpointer _ps_modem_ref_work_queue(gpointer object)
+{
+       ps_modem_t *modem = object;
+       g_return_val_if_fail(modem != NULL, NULL);
+
+       return modem->work_queue;
+}
+
+gchar *_ps_modem_ref_cp_name(gpointer object)
+{
+       ps_modem_t *modem = object;
+       g_return_val_if_fail(modem != NULL, NULL);
+
+       return modem->cp_name;
+}
+
 static gboolean on_modem_get_properties (PacketServiceModem *obj_modem,
-       GDBusMethodInvocation *invocation, gpointer user_data)
+               GDBusMethodInvocation *invocation,
+               gpointer user_data)
 {
        GVariant *gv = NULL;
        GVariantBuilder properties;
 
+       if (!ps_util_check_access_control (invocation, AC_PS_PUBLIC, "r"))
+               return TRUE;
+
        dbg("get modem properties");
 
        gv = _ps_modem_get_properties(user_data, &properties);
@@ -604,16 +1090,21 @@ static gboolean on_modem_get_properties (PacketServiceModem *obj_modem,
 }
 
 static gboolean on_modem_get_services (PacketServiceModem *obj_modem,
-       GDBusMethodInvocation *invocation, gpointer user_data)
+               GDBusMethodInvocation *invocation,
+               gpointer user_data)
 {
        GVariantBuilder b_service;
        GVariant *services;
 
        GHashTableIter iter;
        gpointer key, value;
-       PsModem *modem = user_data;
+       ps_modem_t *modem = user_data;
+       CoreObject *co_modem = _ps_modem_ref_co_modem(modem);
 
-       dbg("modem get service interface");
+       if (!ps_util_check_access_control (invocation, AC_PS_PUBLIC, "r"))
+               return TRUE;
+
+       ps_dbg_ex_co(co_modem, "modem get service interface");
 
        if (modem->services == NULL) {
                FAIL_RESPONSE(invocation,PS_ERR_INTERNAL);
@@ -627,9 +1118,9 @@ static gboolean on_modem_get_services (PacketServiceModem *obj_modem,
 
                g_variant_builder_open(&b_service,G_VARIANT_TYPE("{sa{ss}}"));
                path = _ps_service_ref_path(value);
-               dbg("path added [%s]", path);
+               ps_dbg_ex_co(co_modem, "path added [%s]", path);
                g_variant_builder_add(&b_service, "s", g_strdup(path));
-               if (FALSE == _ps_service_get_properties_handler(value, &b_service)) {
+               if(FALSE == _ps_service_get_properties_handler(value, &b_service)){
                        g_variant_builder_close(&b_service);
                        FAIL_RESPONSE(invocation,PS_ERR_INTERNAL);
                        return TRUE;
@@ -642,18 +1133,294 @@ static gboolean on_modem_get_services (PacketServiceModem *obj_modem,
        return TRUE;
 }
 
-static void _ps_modem_setup_interface(PacketServiceModem *modem,
-       PsModem *modem_data)
+static gboolean on_modem_go_dormant_all (PacketServiceModem *obj_modem,
+               GDBusMethodInvocation *invocation,
+               gpointer user_data)
+{
+       int result = -1;
+
+       GHashTableIter iter;
+       gpointer key, value;
+       ps_modem_t *modem = user_data;
+
+       if (!ps_util_check_access_control (invocation, AC_PS_PRIVATE, "w"))
+               return TRUE;
+
+       dbg("modem go dormant all interface");
+
+       if (modem->services == NULL) {
+               FAIL_RESPONSE(invocation,PS_ERR_INTERNAL);
+               return TRUE;
+       }
+
+       g_hash_table_iter_init(&iter,modem->services);
+       while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
+               ps_service_t *service = value;
+               dbg("service (%p), send dormant request, ", service);
+               result = tcore_ps_send_dormant_request(service->co_ps, NULL);
+       }
+
+       packet_service_modem_complete_go_dormant_all(obj_modem, invocation, result);
+       return TRUE;
+}
+
+static gboolean on_modem_get_profile_list (PacketServiceModem *obj_modem,
+               GDBusMethodInvocation *invocation,
+               gpointer user_data)
+{
+       int profile_index = 0;
+       GHashTableIter iter;
+       gpointer key, value;
+
+       guint len =0;
+       gchar **strv = NULL;
+       GSList *profiles = NULL;
+       ps_modem_t *modem = user_data;
+       CoreObject *co_modem = _ps_modem_ref_co_modem(modem);
+
+       if (!ps_util_check_access_control (invocation, AC_PS_PUBLIC, "r"))
+               return TRUE;
+
+       ps_dbg_ex_co(co_modem, "master get the profile list");
+
+       if(modem->contexts == NULL){
+               ps_err_ex_co(co_modem, "no profiles");
+               FAIL_RESPONSE(invocation, PS_ERR_NO_PROFILE);
+               return TRUE;
+       }
+
+       g_hash_table_iter_init(&iter, modem->contexts);
+       while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
+               gchar *s_path = NULL;
+
+               s_path = _ps_context_ref_path(value);
+               ps_dbg_ex_co(co_modem, "key(%s), value(%p), path(%s)", (gchar *)key, value, s_path);
+               if(s_path)
+                       profiles = g_slist_append(profiles, g_strdup((const gchar*)s_path));
+       }
+
+       if (profiles == NULL) {
+               ps_dbg_ex_co(co_modem, "no profiles");
+               FAIL_RESPONSE(invocation, PS_ERR_NO_PROFILE);
+               return TRUE;
+       }
+
+       len = g_slist_length(profiles);
+       strv = g_new(gchar *, len+1);
+
+       while (profiles) {
+               strv[profile_index] = g_strdup(profiles->data);
+               profile_index++;
+
+               profiles = profiles->next;
+       }
+       strv[profile_index] = NULL;
+
+       packet_service_modem_complete_get_profile_list(obj_modem,
+                               invocation,(const gchar *const *)strv);
+
+       g_strfreev(strv);
+       profiles = g_slist_nth(profiles, 0);
+       g_slist_free_full(profiles, g_free);
+       dbg("Exiting");
+       return TRUE;
+}
+
+static gboolean on_modem_add_profile (PacketServiceModem *obj_modem,
+               GDBusMethodInvocation *invocation,
+               GVariant *property,
+               gpointer user_data)
 {
-       dbg("Entered");
+       GVariantIter g_iter;
+       gchar *g_value;
+       gchar *g_key;
+
+       gboolean rv = FALSE;
+       gchar *operator = NULL;
+       ps_modem_t *modem = user_data;
+       CoreObject *co_modem = _ps_modem_ref_co_modem(modem);
+       GHashTable *profile_property = NULL;
+
+       if (!ps_util_check_access_control (invocation, AC_PS_PROFILE, "w"))
+               return TRUE;
+
+       ps_dbg_ex_co(co_modem, "add profile request");
+
+       operator = _ps_modem_ref_operator(modem);
+
+       if(!operator){
+               ps_dbg_ex_co(co_modem, "there is no active modem");
+               FAIL_RESPONSE(invocation, PS_ERR_INTERNAL);
+               return TRUE;
+       }
+
+       /*Create a hash table for the profile property as all fucntion already use ghash table */
+       profile_property = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free);
+       g_variant_iter_init (&g_iter, property);
+       while (g_variant_iter_next (&g_iter, "{ss}", &g_key, &g_value)){
+
+               ps_dbg_ex_co(co_modem, " '%s' value '%s'", g_key, g_value);
+               g_hash_table_insert(profile_property, g_strdup(g_key), g_strdup(g_value));
+               /* must free data for ourselves */
+               g_free (g_value);
+               g_free (g_key);
+       }
+
+       rv = _ps_context_add_context(modem, operator, profile_property);
+       if(rv != TRUE){
+               ps_err_ex_co(co_modem, "Failed to add the Profile");
+               FAIL_RESPONSE(invocation, PS_ERR_INTERNAL);
+               g_hash_table_destroy(profile_property);
+               return TRUE;
+       }
+
+       packet_service_modem_complete_add_profile(obj_modem, invocation, TRUE);
+
+       g_hash_table_destroy(profile_property);
+       dbg("Exiting");
+       return TRUE;
+}
+
+gboolean _ps_modem_initiate_reset_profile(gpointer value)
+{
+       CoreObject *co_modem;
+       ps_modem_t *modem = value;
+       GHashTableIter iter;
+       gpointer key, key_value;
+
+       g_return_val_if_fail(modem != NULL, FALSE);
+
+       co_modem = _ps_modem_ref_co_modem(modem);
+
+       _ps_modem_processing_power_enable(modem, PS_MODEM_STATE_OFFLINE);
+       ps_dbg_ex_co(co_modem, "Reseting the hash table");
+       _ps_context_reset_hashtable(modem);
+
+       if(modem->type == 0){
+               GThread *thread;
+               gchar *name = g_strdup_printf("REGEN-DB-%s", modem->cp_name);
+
+               thread = g_thread_new(name, __ps_modem_regenerate_database, modem);
+               g_free(name);
+               if (thread == NULL) {
+                       dbg("Thread is not created");
+                       FAIL_RESPONSE(modem->invocation ,PS_ERR_INTERNAL);
+                       _ps_modem_remove_profile_reset_gsource(modem);
+               } else {
+                       dbg("Thread(%p) is created", thread);
+               }
+
+               return FALSE;
+       }
+
+       _ps_get_co_modem_values(modem);
+       _ps_modem_set_reset_profile(modem, FALSE);
+       packet_service_modem_complete_reset_profile(modem->if_obj, modem->invocation, TRUE);
+       modem->invocation = NULL;
+
+       _ps_modem_remove_profile_reset_gsource(modem);
+
+       /* Try to re-connect default contexts after reset profile is complete */
+       g_hash_table_iter_init(&iter, modem->services);
+       while (g_hash_table_iter_next(&iter, &key, &key_value) == TRUE) {
+               //only available case
+               _ps_service_connect_default_context(key_value);
+       }
+
+       ps_dbg_ex_co(co_modem, "Exiting");
+
+       return FALSE;
+}
+
+static gboolean on_modem_reset_profile (PacketServiceModem *obj_modem,
+               GDBusMethodInvocation *invocation,
+               gint type,
+               gpointer user_data)
+{
+       TReturn rv;
+       gboolean contexts_active;
+       ps_modem_t *modem = user_data;
+       CoreObject *co_modem = _ps_modem_ref_co_modem(modem);
+       CoreObject *co_ps;
+       int state;
+
+       if (!ps_util_check_access_control (invocation, AC_PS_PROFILE, "w"))
+               return TRUE;
+
+       ps_dbg_ex_co(co_modem, "reset profile request type(%d)", type);
+
+       if (_ps_modem_get_reset_profile(modem) == TRUE) {
+               ps_err_ex_co(co_modem, "Reset Profile is already in Progress");
+               packet_service_modem_complete_reset_profile(obj_modem, invocation, FALSE);
+               ps_dbg_ex_co(co_modem, "Exiting");
+               return FALSE;
+       }
+
+       _ps_modem_set_reset_profile(modem, TRUE);
+
+       co_ps = tcore_plugin_ref_core_object(tcore_object_ref_plugin(_ps_modem_ref_co_modem(modem)),
+                                                                               CORE_OBJECT_TYPE_PS);
+
+       modem->invocation = invocation;
+       modem->type = type;
+
+       contexts_active = tcore_ps_any_context_activating_activated(co_ps, &state);
+
+       if(contexts_active == TRUE) {
+               ps_dbg_ex_co(co_modem, "Contexts are in [%d] state", state);
+               if (state == CONTEXT_STATE_ACTIVATED) {
+                       ps_dbg_ex_co(co_modem, "Contexts are in Actived state. Sending Diconnect Notification to all connected contexts");
+                       rv = tcore_ps_deactivate_contexts(co_ps);
+                       if(rv != TCORE_RETURN_SUCCESS){
+                               ps_dbg_ex_co(co_modem, "fail to deactivation");
+                       }
+               }else if (state == CONTEXT_STATE_ACTIVATING) {
+                       ps_dbg_ex_co(co_modem, "Contexts are in Activating state. Wait for them to connect");
+               }
+       }else {
+               ps_dbg_ex_co(co_modem, "No contexts are in activating or activated state");
+               ps_dbg_ex_co(co_modem, "Profiles reset is being initiated");
+               _ps_modem_initiate_reset_profile(modem);
+       }
+
+       return TRUE;
+}
+
+
+static void _ps_modem_setup_interface(PacketServiceModem *modem, ps_modem_t *modem_data)
+{
+       ps_dbg_ex_co(_ps_modem_ref_co_modem(modem_data), "Entered");
+
+       g_signal_connect (modem,
+                       "handle-get-properties",
+                       G_CALLBACK (on_modem_get_properties),
+                       modem_data);
 
        g_signal_connect (modem,
-               "handle-get-properties",
-               G_CALLBACK (on_modem_get_properties),
-               modem_data);
+                       "handle-get-services",
+                       G_CALLBACK (on_modem_get_services),
+                       modem_data);
 
        g_signal_connect (modem,
-               "handle-get-services",
-               G_CALLBACK (on_modem_get_services),
-               modem_data);
+                       "handle-go-dormant-all",
+                       G_CALLBACK (on_modem_go_dormant_all),
+                       modem_data);
+
+       g_signal_connect (modem,
+                       "handle-get-profile-list",
+                       G_CALLBACK (on_modem_get_profile_list),
+                       modem_data);
+
+       g_signal_connect (modem,
+                       "handle-add-profile",
+                       G_CALLBACK (on_modem_add_profile),
+                       modem_data);
+
+       g_signal_connect (modem,
+                       "handle-reset-profile",
+                       G_CALLBACK (on_modem_reset_profile),
+                       modem_data);
+
+       return;
 }
+
diff --git a/src/ps-plugin.conf b/src/ps-plugin.conf
deleted file mode 100644 (file)
index 92be767..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
- "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
-<busconfig>
-    <policy user="0">
-        <allow own=""/>
-        <allow send_destination="com.tcore.ps"/>
-        <allow send_interface="com.tcore.ps.master"/>
-        <allow send_interface="com.tcore.ps.modem"/>
-        <allow send_interface="com.tcore.ps.service"/>
-        <allow send_interface="com.tcore.ps.context"/>
-    </policy>
-    <policy user="5000">
-        <allow own="com.tcore.ps"/>
-        <allow send_destination="com.tcore.ps"/>
-        <allow send_interface="com.tcore.ps.master"/>
-        <allow send_interface="com.tcore.ps.modem"/>
-        <allow send_interface="com.tcore.ps.service"/>
-        <allow send_interface="com.tcore.ps.context"/>
-    </policy>
-    <policy at_console="true">
-        <allow send_destination="com.tcore.ps"/>
-    </policy>
-    <policy context="default">
-        <deny send_destination="com.tcore.ps"/>
-    </policy>
-</busconfig>
diff --git a/src/ps_log.c b/src/ps_log.c
new file mode 100644 (file)
index 0000000..5680c68
--- /dev/null
@@ -0,0 +1,36 @@
+/*
+ * PacketService Control Module
+ *
+ * Copyright (c) 2012 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Contact: DongHoo Park <donghoo.park@samsung.com>
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ *
+ */
+
+#include <tcore.h>
+#include <server.h>
+#include <core_object.h>
+
+#include <glib.h>
+
+gchar *ps_log_get_tag(CoreObject *co);
+
+gchar *ps_log_get_tag(CoreObject *co)
+{
+       const char *cp_name;
+       cp_name = tcore_server_get_cp_name_by_plugin(tcore_object_ref_plugin(co));
+
+       return g_strdup_printf("PS/%s", cp_name);
+}
\ No newline at end of file
old mode 100644 (file)
new mode 100755 (executable)
index f5ba56d..04dbab3
@@ -1,7 +1,10 @@
 /*
- * tel-plugin-packetservice
+ * PacketService Control Module
  *
- * Copyright (c) 2013 Samsung Electronics Co. Ltd. All rights reserved.
+ * Copyright (c) 2012 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Contact: DongHoo Park <donghoo.park@samsung.com>
+ *         Arun Shukla <arun.shukla@samsung.com>
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -14,6 +17,7 @@
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
+ *
  */
 
 #include "ps.h"
 #include <core_object.h>
 #include <co_ps.h>
 #include <co_context.h>
-
+#include <storage.h>
 
 #define PROP_DEFAULT   FALSE
 #define PROP_DEFAULT_STR   NULL
-#define BOOL2STRING(a) ((a == TRUE) ? ("TRUE"):("FALSE"))
+#define BOOL2STRING(a) ((a==TRUE) ? ("TRUE"):("FALSE"))
 
 #define TIMEOUT_DEFAULT                5
-#define TIMEOUT_MAX                    1280
+#define TIMEOUT_MAX                    1800
 
-guint connection_timeout;
-guint timer_src;
 
-static void __ps_service_emit_property_changed_signal(PsService *service);
-static void __ps_service_emit_context_added_signal(PsService *service, gpointer context);
-static void __ps_service_emit_context_removed_signal(PsService *service, gpointer context);
-static void _ps_service_setup_interface(PacketServiceService *service, PsService *service_data);
+static void __ps_service_emit_property_changed_signal(ps_service_t *service);
+static void __ps_service_emit_context_added_signal(ps_service_t *service, gpointer context);
+static void __ps_service_emit_context_removed_signal(ps_service_t *service, gpointer context);
+static void _ps_service_setup_interface(PacketServiceService *service, ps_service_t *service_data);
 
-static char *__ps_service_act2string(TelNetworkAct act);
+static char *  __ps_service_act2string(enum telephony_network_access_technology act);
 static gboolean __ps_service_check_connection_option(gpointer service, gpointer context);
-static gboolean __ps_service_connetion_timeout_handler(gpointer user_data);
+static int __ps_service_connetion_timeout_handler(alarm_id_t alarm_id, void *context);
 
 void __remove_service_handler(gpointer data)
 {
-       PsService *service = data;
+       ps_service_t *service = data;
 
        dbg("Entered");
-       if (!service) {
+       if(!service){
                dbg("Service is Null");
                return;
        }
@@ -57,7 +59,7 @@ void __remove_service_handler(gpointer data)
        g_hash_table_remove_all(service->contexts);
 
        /*Need to UNexport and Unref the master Object */
-       if (service->if_obj) {
+       if(service->if_obj){
                g_dbus_interface_skeleton_unexport(G_DBUS_INTERFACE_SKELETON(service->if_obj));
                g_object_unref(service->if_obj);
                service->if_obj = NULL;
@@ -66,56 +68,71 @@ void __remove_service_handler(gpointer data)
        /*Need to free the memory of the internal structure*/
        g_free(service->path);
        g_free(service);
+
+       dbg("Exiting");
+       return;
 }
 
-static void __ps_service_emit_property_changed_signal(PsService *service)
+static void __ps_service_emit_property_changed_signal(ps_service_t *service)
 {
        GVariant *gv = NULL;
        GVariantBuilder property;
 
-       dbg("get service properties");
+       ps_dbg_ex_co(_ps_service_ref_co_network(service), "get service properties");
 
        gv = _ps_service_get_properties(service, &property);
        packet_service_service_emit_property_changed(service->if_obj, gv);
 
        dbg("Exiting");
+       return;
 }
 
-static void __ps_service_emit_context_added_signal(PsService *service, gpointer context)
+static void __ps_service_emit_context_added_signal(ps_service_t *service, gpointer context)
 {
        GVariant *gv = NULL;
        GVariantBuilder property;
 
-       dbg("get service properties");
+       ps_dbg_ex_co(_ps_service_ref_co_network(service), "get service properties");
 
        gv = _ps_context_get_properties(context, &property);
        packet_service_service_emit_context_added(service->if_obj, gv);
 
        dbg("Exiting");
+       return;
 }
 
-static void __ps_service_emit_context_removed_signal(PsService *service, gpointer context)
+static void __ps_service_emit_context_removed_signal(ps_service_t *service, gpointer context)
 {
-       PsContext *pscontext = context;
+       ps_context_t *pscontext = context;
 
        dbg("Entered");
        packet_service_service_emit_context_removed(service->if_obj, pscontext->path);
 
        dbg("Exiting");
+       return;
 }
 
-static char *__ps_service_act2string(TelNetworkAct act)
+static char *__ps_service_act2string(enum telephony_network_access_technology act)
 {
        switch (act) {
-               case TEL_NETWORK_ACT_GSM:
-               case TEL_NETWORK_ACT_GPRS:
-               case TEL_NETWORK_ACT_EGPRS:
-               case TEL_NETWORK_ACT_UMTS:
-               case TEL_NETWORK_ACT_GSM_AND_UMTS:
+               case NETWORK_ACT_GSM:
+               case NETWORK_ACT_GPRS:
+               case NETWORK_ACT_EGPRS:
+               case NETWORK_ACT_UMTS:
+               case NETWORK_ACT_GSM_UTRAN:
                        return "GSM";
-               case TEL_NETWORK_ACT_LTE:
+               case NETWORK_ACT_IS95A:
+               case NETWORK_ACT_IS95B:
+               case NETWORK_ACT_CDMA_1X:
+               case NETWORK_ACT_EVDO_REV0:
+               case NETWORK_ACT_CDMA_1X_EVDO_REV0:
+               case NETWORK_ACT_EVDO_REVA:
+               case NETWORK_ACT_CDMA_1X_EVDO_REVA:
+               case NETWORK_ACT_EVDV:
+                       return "CDMA";
+               case NETWORK_ACT_LTE:
                        return "LTE";
-               case TEL_NETWORK_ACT_UNKNOWN:
+               case NETWORK_ACT_UNKNOWN:
                default:
                        return "unknown";
        }
@@ -126,42 +143,133 @@ static char *__ps_service_act2string(TelNetworkAct act)
 static gboolean __ps_service_check_connection_option(gpointer object, gpointer context)
 {
        gboolean b_connect = TRUE;
-       gboolean power, sim, data, flight;
-       PsService *service = object;
+       gboolean power = FALSE, sim = FALSE, data = FALSE, flight = FALSE, nw_ops = FALSE;
+       gboolean profile_reset = FALSE;
 
-       power = _ps_modem_get_power(service->p_modem);
-       b_connect &= power;
+       enum co_context_role role = CONTEXT_ROLE_UNKNOWN;
+       gint ps_mode;
+       guchar hook_flag;
 
-       sim = _ps_modem_get_sim_init(service->p_modem);
-       b_connect &= sim;
+       ps_service_t *service = object;
+       ps_modem_t *modem = _ps_service_ref_modem(service);
+       CoreObject *co_context = context;
+       CoreObject *co_network = _ps_service_ref_co_network(service);
+
+       role = tcore_context_get_role(co_context);
+       if(service->roaming){
+               b_connect &=_ps_modem_get_data_roaming_allowed(modem);
+       }
 
-       data = _ps_modem_get_data_allowed(service->p_modem);
-       b_connect &= data;
+       sim = _ps_modem_get_sim_init(modem);
+       data = _ps_modem_get_data_allowed(modem);
+       flight = _ps_modem_get_flght_mode(modem);
+       hook_flag = _ps_modem_get_hook_flag(modem);
+       profile_reset = _ps_modem_get_reset_profile(modem);
+       if(hook_flag != PS_NO_PENDING_REQUEST)
+               nw_ops = TRUE;
+       if(PS_MODEM_STATE_ONLINE == _ps_modem_get_power(modem))
+               power = TRUE;
 
-       if (service->roaming)
-               b_connect &= _ps_modem_get_data_roaming_allowed(service->p_modem);
+       b_connect &= power;
+       b_connect &= sim;
 
-       flight = _ps_modem_get_flght_mode(service->p_modem);
-       b_connect &= !flight;
+#if defined(TIZEN_SUPPORT_MMS_CONNECT_FORCE)
+               ps_dbg_ex_co(co_network, "csc runtime feature enabled");
+               if(role != CONTEXT_ROLE_MMS && role != CONTEXT_ROLE_PREPAID_MMS){
+                       b_connect &= data;
+               } else {
+                       char *tmp_apn = NULL;
+                       tmp_apn = tcore_context_get_apn(co_context);
+                       dbg("csc runtime feature is enabled: apn[%s]", tmp_apn);
+                       if(ps_feature_get_bool(PS_FEATURE_OPERATOR_SKT)) {
+                               if(data)
+                                       tcore_context_set_apn(co_context, "web.sktelecom.com");
+                               else
+                                       tcore_context_set_apn(co_context, "mmsonly.sktelecom.com");
+                       }
+               }
+#else
+       if (role == CONTEXT_ROLE_IMS || role == CONTEXT_ROLE_IMS_EMERGENCY) {
+               dbg("Do not check data allowed value in case of IMS type");
+       } else {
+               ps_dbg_ex_co(co_network, "csc runtime feature disabled");
+               b_connect &= data;
+       }
+#endif
 
+       b_connect &= !flight;
+       b_connect &= !nw_ops;
        b_connect &= !service->restricted;
-
-       dbg("power(%d), sim init(%d), data allowed(%d), flight mode(%d) ",
-               power, sim, data, flight);
+       b_connect &= !profile_reset;
+#ifndef TIZEN_PS_FORCE_ATTACH_DETACH
+       b_connect &= service->ps_attached;
+#endif
+       ps_mode = _ps_modem_get_psmode(modem);
+
+
+       if(service->initial_pdp_conn == FALSE) {
+               int wifi_state = PS_WIFI_STATE_OFF;
+               Server *s = NULL;
+               Storage *strg = NULL;
+
+               s = tcore_plugin_ref_server(service->plg);
+               strg = tcore_server_find_storage(s, "vconf");
+               wifi_state = tcore_storage_get_int(strg, KEY_WIFI_STATE);
+               if(wifi_state == PS_WIFI_STATE_CONNECTED) {
+                       if (service->wifi_connected_checked == FALSE) {
+                               ps_dbg_ex_co(co_network, "DO NOT set PDP retry timer when WiFi connected but PDP never been connected yet.");
+                               b_connect &= FALSE;
+                               service->wifi_connected_checked = TRUE;
+                       } else {
+                               ps_dbg_ex_co(co_network, "Wifi connected state was already checked.");
+                       }
+               }
+       }
+       ps_dbg_ex_co(co_network, "b_connect(%d), power(%d), sim init(%d), data allowed(%d), flight mode(%d) restricted(%d) ps_attached(%d), ps_mode(%d), fook_flag(%d)",
+               b_connect, power, sim, data, flight, service->restricted, service->ps_attached, ps_mode, hook_flag);
 
        return b_connect;
 }
 
-static gboolean __ps_service_connetion_timeout_handler(gpointer context)
+static int __ps_service_connetion_timeout_handler(alarm_id_t alarm_id, void *context)
 {
-       gint rv = 0;
-       PsService *service = NULL;
+       int rv = 0;
+       ps_service_t *service = _ps_context_ref_service(context);
+       if(service == NULL) {
+               err("service is NULL!!!");
+               return rv;
+       }
 
-       service = _ps_context_ref_service(context);
+       if (service->timer_src > 0) {
+               dbg("remove connection retry timer (%d)", service->timer_src);
+               alarmmgr_remove_alarm(service->timer_src);
+               service->timer_src = 0;
+       }
        rv = _ps_service_activate_context(service, context);
-       dbg("return rv(%d)", rv);
+       ps_dbg_ex_co(_ps_service_ref_co_network(service), "return rv(%d)", rv);
+       return rv;
+}
 
-       return FALSE;
+static void __ps_service_set_attach_apn(ps_service_t *service)
+{
+       GHashTableIter iter;
+       gpointer key, ps_context;
+       CoreObject *co_context;
+       gboolean attach_apn = FALSE;
+       enum co_context_role role;
+
+       g_hash_table_iter_init(&iter, service->contexts);
+       while (g_hash_table_iter_next(&iter, &key, &ps_context) == TRUE) {
+               co_context = _ps_context_ref_co_context(ps_context);
+               role = tcore_context_get_role(co_context);
+               attach_apn = tcore_context_get_attach_apn(co_context);
+               if (attach_apn) {
+                       dbg("Set 'Attach APN' [%p]", co_context);
+                       if (role != CONTEXT_ROLE_INTERNET)
+                               _ps_context_set_only_attach(ps_context, TRUE);
+                       tcore_ps_define_context(service->co_ps, co_context, NULL);
+               }
+       }
 }
 
 gpointer _ps_service_create_service(GDBusConnection *conn, TcorePlugin *p, gpointer p_modem,
@@ -169,19 +277,19 @@ gpointer _ps_service_create_service(GDBusConnection *conn, TcorePlugin *p, gpoin
 {
        PacketServiceService *service;
        GError *error = NULL;
-       PsService *new_service;
+       ps_service_t *new_service;
 
-       dbg("service object create");
-       tcore_check_return_value(conn != NULL, NULL);
-       tcore_check_return_value(p_modem != NULL, NULL);
+       ps_dbg_ex_co(co_network, "service object create");
+       g_return_val_if_fail(conn != NULL, NULL);
+       g_return_val_if_fail(p_modem != NULL, NULL);
 
        /*creating the master object for the interface com.tcore.ps.modem*/
        service = packet_service_service_skeleton_new();
 
        /*Initializing the modem list for internal referencing*/
-       new_service = g_try_malloc0(sizeof(PsService));
-       if (NULL == new_service) {
-               err("Unable to allocate memory for master");
+       new_service = g_try_malloc0(sizeof(ps_service_t));
+       if(NULL == new_service){
+               ps_err_ex_co(co_network, "Unable to allocate memory for master");
                goto FAILURE;
        }
 
@@ -194,6 +302,12 @@ gpointer _ps_service_create_service(GDBusConnection *conn, TcorePlugin *p, gpoin
        new_service->if_obj = service;
        new_service->contexts = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, NULL);
 
+       /*exporting the interface object to the path mention for master*/
+       if(TRUE != g_dbus_interface_skeleton_export((G_DBUS_INTERFACE_SKELETON(service)),       conn, path, &error)) {
+               ps_err_ex_co(co_network, "Failed to export interaface with message [%s] & ID[%d] ", error->message, error->code);
+               goto FAILURE;
+       }
+
        _ps_hook_co_network_event(new_service);
        _ps_get_co_network_values(new_service);
        _ps_hook_co_ps_event(new_service);
@@ -201,20 +315,14 @@ gpointer _ps_service_create_service(GDBusConnection *conn, TcorePlugin *p, gpoin
        /*Setting up the interface for the service */
        _ps_service_setup_interface(service, new_service);
 
-       /*exporting the interface object to the path mention for master*/
-       g_dbus_interface_skeleton_export((G_DBUS_INTERFACE_SKELETON(service)),
-                       conn,
-                       path,
-                       &error);
-
-       g_assert_no_error (error);
-
-       connection_timeout = TIMEOUT_DEFAULT;
-       dbg("Successfully Created the service");
+       new_service->connection_timeout = TIMEOUT_DEFAULT;
+       ps_dbg_ex_co(co_network, "Successfully Created the service");
        return new_service;
 
 FAILURE:
        /*To Do: Handle failure case*/
+       g_free(new_service);
+       g_assert_no_error (error);
        return NULL;
 }
 
@@ -222,27 +330,25 @@ gboolean _ps_service_ref_context(gpointer object, gpointer context)
 {
        gpointer tmp = NULL;
        gchar *s_path = NULL;
-       PsService *service = object;
+       ps_service_t *service = object;
+       CoreObject *co_network = NULL;
 
        dbg("service refer to context");
-       tcore_check_return_value(service != NULL, FALSE);
+       g_return_val_if_fail(service != NULL, FALSE);
 
+       co_network = _ps_service_ref_co_network(service);
        s_path = _ps_context_ref_path(context);
        tmp = g_hash_table_lookup(service->contexts, s_path);
        if (tmp != NULL) {
-               dbg("context(%p) already existed", tmp);
+               ps_dbg_ex_co(co_network, "context(%p) already existed", tmp);
                return FALSE;
        }
 
-       /* Setting service */
        _ps_context_set_service(context, service);
-
-       /* Insert conetxt to Hash Table */
+       tcore_ps_add_context(service->co_ps, (CoreObject *) _ps_context_ref_co_context(context));
        g_hash_table_insert(service->contexts, g_strdup(s_path), context);
 
-       dbg("context(%p) insert to hash", context);
-
-       /* Emit Context added signal */
+       ps_dbg_ex_co(co_network, "context(%p) insert to hash", context);
        __ps_service_emit_context_added_signal(service, context);
 
        //_ps_service_connect_default_context(service);
@@ -253,13 +359,15 @@ gboolean _ps_service_ref_contexts(gpointer object, GHashTable *contexts, gchar *
 {
        GHashTableIter iter;
        gpointer key, value;
-       PsService *service = object;
+       ps_service_t *service = object;
        gboolean ret = TRUE;
-       gint rv;
+       int rv;
+       CoreObject *co_network = NULL;
 
        dbg("service refer to contexts");
-       tcore_check_return_value(service != NULL, FALSE);
+       g_return_val_if_fail(service != NULL, FALSE);
 
+       co_network = _ps_service_ref_co_network(service);
        g_hash_table_iter_init(&iter, contexts);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
                gchar *s_path = NULL;
@@ -267,56 +375,42 @@ gboolean _ps_service_ref_contexts(gpointer object, GHashTable *contexts, gchar *
                gboolean f_awo = FALSE;
 
                s_path = _ps_context_ref_path(value);
-               dbg("Path: [%s]", s_path);
-
-               /* Hash lookup */
                tmp = g_hash_table_lookup(service->contexts, s_path);
                if (tmp != NULL) {
-                       dbg("context(%p) already existed", tmp);
+                       ps_dbg_ex_co(co_network, "context(%p) already existed", tmp);
                        continue;
                }
 
-               /* Setting service */
                _ps_context_set_service(value, service);
-
-               /* Insert context to Service  Hash Table */
+               tcore_ps_add_context(service->co_ps, (CoreObject *) _ps_context_ref_co_context(value));
                g_hash_table_insert(service->contexts, g_strdup(s_path), value);
 
-               dbg("Inserted context to Hash table - context [%p]", value);
-
-               /* Emit Context added signal */
+               ps_dbg_ex_co(co_network, "context(%p) insert to hash", value);
                __ps_service_emit_context_added_signal(service, value);
 
                f_awo = _ps_context_get_alwayson_enable(value);
-               if (f_awo) {
+               if(f_awo){
                        rv = _ps_service_define_context(service, value);
-                       dbg("return rv(%d)", rv);
+                       ps_dbg_ex_co(co_network, "return rv(%d)", rv);
                }
        }
 
-       /* Update cellular state key */
        _ps_update_cellular_state_key(service);
-
+       //_ps_service_connect_default_context(service);
        return ret;
 }
 
 gboolean _ps_service_unref_context(gpointer object, gpointer context)
 {
-       PsService *service = object;
+       ps_service_t *service = object;
 
        dbg("service unref contexts");
-       tcore_check_return_value(service != NULL, FALSE);
-       tcore_check_return_value(context != NULL, FALSE);
-
-       dbg("remove context(%p) from service(%p)", context, service);
+       g_return_val_if_fail(service != NULL, FALSE);
+       g_return_val_if_fail(context != NULL, FALSE);
 
-       /* Remove Context from PS Core object */
-       //tcore_ps_remove_context(service->co_ps, (CoreObject *) _ps_context_ref_co_context(context));
-
-       /* Remove context to Hash Table */
+       ps_dbg_ex_co(_ps_service_ref_co_network(service), "remove context(%p) from service(%p)", context, service);
+       tcore_ps_remove_context(service->co_ps, (CoreObject *) _ps_context_ref_co_context(context));
        g_hash_table_remove(service->contexts, _ps_context_ref_path(context));
-
-       /* Emit Context Remove signal */
        __ps_service_emit_context_removed_signal(service, context);
 
        return TRUE;
@@ -324,262 +418,285 @@ gboolean _ps_service_unref_context(gpointer object, gpointer context)
 
 gboolean _ps_service_get_properties_handler(gpointer object, GVariantBuilder *properties)
 {
-       PsService *service = object;
+       ps_service_t *service = object;
 
        dbg("get service properties");
-       tcore_check_return_value(service != NULL, FALSE);
-       tcore_check_return_value(properties != NULL, FALSE);
+       g_return_val_if_fail(service != NULL, FALSE);
+       g_return_val_if_fail(properties != NULL, FALSE);
 
        g_variant_builder_open(properties, G_VARIANT_TYPE("a{ss}"));
-       g_variant_builder_add(properties, "{ss}", "path", g_strdup(service->path));
-       g_variant_builder_add(properties, "{ss}", "ps_attached", g_strdup(BOOL2STRING(service->ps_attached)));
-       g_variant_builder_add(properties, "{ss}", "roaming", g_strdup(BOOL2STRING(service->roaming)));
-       g_variant_builder_add(properties, "{ss}", "act", g_strdup(__ps_service_act2string(service->act)));
+       g_variant_builder_add(properties, "{ss}", "path", service->path);
+       g_variant_builder_add(properties, "{ss}", "ps_attached", BOOL2STRING(service->ps_attached));
+       g_variant_builder_add(properties, "{ss}", "roaming", BOOL2STRING(service->roaming));
+       g_variant_builder_add(properties, "{ss}", "act", __ps_service_act2string(service->act));
        g_variant_builder_close(properties);
 
+       dbg("Exiting");
        return TRUE;
 }
 
 GVariant * _ps_service_get_properties(gpointer object, GVariantBuilder *properties)
 {
-       PsService *service = object;
+       ps_service_t *service = object;
 
-       dbg("get service properties");
-       tcore_check_return_value(service != NULL, FALSE);
-       tcore_check_return_value(properties != NULL, FALSE);
+       dbg("get service properties ");
+       g_return_val_if_fail(service != NULL, FALSE);
+       g_return_val_if_fail(properties != NULL, FALSE);
 
        g_variant_builder_init(properties, G_VARIANT_TYPE("a{ss}"));
 
-       g_variant_builder_add(properties, "{ss}", "path", g_strdup(service->path));
-       g_variant_builder_add(properties, "{ss}", "ps_attached", g_strdup(BOOL2STRING(service->ps_attached)));
-       g_variant_builder_add(properties, "{ss}", "roaming", g_strdup(BOOL2STRING(service->roaming)));
-       g_variant_builder_add(properties, "{ss}", "act", g_strdup(__ps_service_act2string(service->act)));
+       g_variant_builder_add(properties, "{ss}", "path", service->path);
+       g_variant_builder_add(properties, "{ss}", "ps_attached", BOOL2STRING(service->ps_attached));
+       g_variant_builder_add(properties, "{ss}", "roaming", BOOL2STRING(service->roaming));
+       g_variant_builder_add(properties, "{ss}", "act", __ps_service_act2string(service->act));
 
+       dbg("Exiting");
        return g_variant_builder_end(properties);
 }
 
 gchar* _ps_service_ref_path(gpointer object)
 {
-       PsService *service = object;
-       tcore_check_return_value(service != NULL, NULL);
+       ps_service_t *service = object;
+       g_return_val_if_fail(service != NULL, NULL);
 
        return service->path;
 }
 
 gpointer _ps_service_ref_plugin(gpointer object)
 {
-       PsService *service = object;
-       tcore_check_return_value(service != NULL, NULL);
+       ps_service_t *service = object;
+       g_return_val_if_fail(service != NULL, NULL);
 
        return service->plg;
 }
 
 gpointer _ps_service_ref_co_network(gpointer object)
 {
-       PsService *service = object;
-       tcore_check_return_value(service != NULL, NULL);
+       ps_service_t *service = object;
+       g_return_val_if_fail(service != NULL, NULL);
 
        return service->co_network;
 }
 
 gpointer _ps_service_ref_co_ps(gpointer object)
 {
-       PsService *service = object;
-       tcore_check_return_value(service != NULL, NULL);
+       ps_service_t *service = object;
+       g_return_val_if_fail(service != NULL, NULL);
 
        return service->co_ps;
 }
 
 gpointer _ps_service_ref_modem(gpointer object)
 {
-       PsService *service = object;
-       tcore_check_return_value(service != NULL, NULL);
+       ps_service_t *service = object;
+       g_return_val_if_fail(service != NULL, NULL);
 
        return service->p_modem;
 }
 
-gboolean _ps_service_set_context_info(gpointer object, TcorePsPdpIpConf *devinfo)
+gboolean _ps_service_set_context_info(gpointer object, struct tnoti_ps_pdp_ipconfiguration *devinfo)
 {
        GSList* contexts = NULL;
-       PsService *service = object;
-
-       dbg("Set context information");
+       ps_service_t *service = object;
+       CoreObject *co_context = NULL;
 
-       tcore_check_return_value(service != NULL, FALSE);
+       dbg("set context info");
+       g_return_val_if_fail(service != NULL, FALSE);
 
-       /* Refer context */
-       dbg("Context ID: [%d]", devinfo->context_id);
-       tcore_ps_ref_context_by_id(service->co_ps, devinfo->context_id, &contexts);
-       if (NULL == contexts) {
-               err("Failed to refer context");
+       contexts = tcore_ps_ref_context_by_id(service->co_ps, devinfo->context_id);
+       if (!contexts) {
+               ps_dbg_ex_co(_ps_service_ref_co_network(service), "fail to ref context by cid.");
                return FALSE;
        }
 
-       for (; contexts != NULL; contexts = g_slist_next(contexts)) {
-               CoreObject *co_context = NULL;
-
+       while (contexts) {
                co_context = contexts->data;
-               if (NULL == co_context) {
-                       err("Context is NULL");
+               if (!co_context) {
+                       contexts = contexts->next;
                        continue;
                }
 
-               /* Set device information */
                tcore_context_set_devinfo(co_context, devinfo);
+
+               contexts = contexts->next;
        }
 
        return TRUE;
 }
 
-gint _ps_service_define_context(gpointer object, gpointer context)
+int _ps_service_define_context(gpointer object, gpointer context)
 {
-       PsService *service = object;
+       ps_service_t *service = object;
        CoreObject *co_context = NULL;
        gboolean b_connect = TRUE;
-       TelReturn ret;
 
        dbg("define context(%p)", context);
-       tcore_check_return_value(service != NULL, TEL_RETURN_FAILURE);
+       g_return_val_if_fail(service != NULL, FALSE);
 
        co_context = (CoreObject *)_ps_context_ref_co_context(context);
 
        b_connect = __ps_service_check_connection_option(service, co_context);
-       if (!b_connect) {
-               return TEL_RETURN_FAILURE;
-
-       }
-
-       ret = tcore_plugin_dispatch_request(tcore_object_ref_plugin(service->co_ps), TRUE,
-               TCORE_COMMAND_PS_DEFINE_CONTEXT,
-               &co_context, sizeof(CoreObject *),
-               NULL, NULL);
+       if(!b_connect)
+               return TCORE_RETURN_EPERM;
 
-       return ret;
+       return tcore_ps_define_context(service->co_ps, co_context, NULL);
 }
 
-gint _ps_service_activate_context(gpointer object, gpointer context)
+int _ps_service_activate_context(gpointer object, gpointer context)
 {
-       PsService *service = object;
+       ps_service_t *service = object;
+       ps_modem_t *modem = NULL;
        CoreObject *co_context = NULL;
        gboolean b_connect = TRUE;
        gboolean ps_defined;
-       gint ret = TEL_RETURN_FAILURE;
+       int ret = TCORE_RETURN_FAILURE;
+       int default_data_subs = 1;
+       ps_subs_type subs_type = 1;
+       Server *s = NULL;
+       static Storage *strg;
+       CoreObject *co_network = NULL;
+
+       dbg("activate context(%p)", context);
+       g_return_val_if_fail(service != NULL, FALSE);
+
+       s = tcore_plugin_ref_server(_ps_service_ref_plugin(service));
+       strg = tcore_server_find_storage(s, "vconf");
+
+       co_network = _ps_service_ref_co_network(service);
+       modem = _ps_service_ref_modem(service);
+       if(modem->hook_flag != PS_NO_PENDING_REQUEST){
+               ps_dbg_ex_co(co_network, "Pending request present in queue with flag %x", modem->hook_flag);
+               return TCORE_RETURN_FAILURE;
+       }
 
-       dbg("Activate context [0x%x]", context);
-       tcore_check_return_value(service != NULL, TEL_RETURN_INVALID_PARAMETER);
+       /* Check for default data subscription value if matchs for modem then only activate */
+       subs_type = _ps_modem_get_subs_type(modem);
+
+       default_data_subs = tcore_storage_get_int(strg, STORAGE_KEY_TELEPHONY_DUALSIM_DEFAULT_DATA_SERVICE_INT);
+       if ((default_data_subs != -1) && ( default_data_subs != (int)subs_type)) {
+               ps_warn_ex_co(co_network, "activation  for only [SIM%d] selected by Setting", default_data_subs + 1);
+               return TCORE_RETURN_FAILURE;
+       }
 
        co_context = (CoreObject *)_ps_context_ref_co_context(context);
 
        b_connect = __ps_service_check_connection_option(service, co_context);
-       if (!b_connect) {
-               err("Connection option failed");
-               return TEL_RETURN_FAILURE;
-       }
+       if(!b_connect)
+               return TCORE_RETURN_EPERM;
 
        ps_defined = _ps_context_get_ps_defined(context);
-       if (!ps_defined) {
-               dbg("PDP profile is NOT defined!!! Need to define it first... co_context: [%p]");
-               ret = tcore_plugin_dispatch_request(tcore_object_ref_plugin(service->co_ps), TRUE,
-                       TCORE_COMMAND_PS_DEFINE_CONTEXT,
-                       &co_context, sizeof(CoreObject *),
-                       NULL, NULL);
-       } else {
-               dbg("PDP profile is defined!!! Activate context...");
-               ret = tcore_plugin_dispatch_request(tcore_object_ref_plugin(service->co_ps), TRUE,
-                       TCORE_COMMAND_PS_ACTIVATE_CONTEXT,
-                       &co_context, sizeof(CoreObject *),
-                       NULL, NULL);
+       if(!ps_defined) {
+               ps_dbg_ex_co(co_network, "pdp profile is not defined yet, define first. ");
+               ret = tcore_ps_define_context(service->co_ps, co_context, NULL);
+       }
+       else {
+               ps_dbg_ex_co(co_network, "pdp profile is defined, activate context. ");
+               ret = tcore_ps_activate_context(service->co_ps, co_context, NULL);
        }
 
        return ret;
 }
 
-gint _ps_service_deactivate_context(gpointer object, gpointer context)
+gboolean _ps_service_deactivate_context(gpointer object, gpointer context)
 {
-       PsService *service = object;
+       ps_service_t *service = object;
        CoreObject *co_context = NULL;
-       TelReturn ret = TEL_RETURN_FAILURE ;
 
+       g_return_val_if_fail(service != NULL, FALSE);
        dbg("deactivate context(%p)", context);
-       tcore_check_return_value(service != NULL, TEL_RETURN_INVALID_PARAMETER);
-
        co_context = (CoreObject *)_ps_context_ref_co_context(context);
-       ret = tcore_plugin_dispatch_request(tcore_object_ref_plugin(service->co_ps), TRUE,
-               TCORE_COMMAND_PS_DEACTIVATE_CONTEXT,
-               &co_context, sizeof(CoreObject *),
-               NULL, NULL);
 
-       return ret;
+       return tcore_ps_deactivate_context(service->co_ps, co_context, NULL);
 }
 
-void _ps_service_set_retry_timeout_value(int value)
+void _ps_service_set_retry_timeout_value(gpointer object, int value)
 {
-       connection_timeout = value;
-       dbg("current timeout (%d)", connection_timeout);
+       ps_service_t *service = object;
+       g_return_if_fail(service != NULL);
+
+       service->connection_timeout = value;
+       dbg("current timeout (%d)", service->connection_timeout);
+       return;
 }
 
 void _ps_service_connection_timer(gpointer object, gpointer context)
 {
+       int result = 0;
        gboolean f_awo = FALSE;
+       ps_service_t *service = object;
+
+       g_return_if_fail(service != NULL);
 
        f_awo = _ps_context_get_alwayson_enable(context);
-       if (!f_awo)
+       if(!f_awo)
                return;
 
-       if (timer_src != 0) {
-               dbg("remove connection retry timer (%d)", timer_src);
-               g_source_remove(timer_src);
-               timer_src = 0;
+       if (service->timer_src > 0) {
+               warn("remove connection retry timer (%d)", service->timer_src);
+               alarmmgr_remove_alarm(service->timer_src);
+               service->timer_src = 0;
+       }
+       result = alarmmgr_add_alarm_withcb(ALARM_TYPE_VOLATILE, (time_t)(service->connection_timeout),
+                       0, __ps_service_connetion_timeout_handler, context, &(service->timer_src));
+       if (result != ALARMMGR_RESULT_SUCCESS) {
+               err("Failed to add alarm(%d)", result);
+               return;
        }
 
-       timer_src = g_timeout_add_seconds(connection_timeout, __ps_service_connetion_timeout_handler, context);
+       dbg("cellular service timer started timer src(%d), timeout(%d)", service->timer_src, service->connection_timeout);
+       service->connection_timeout = (service->connection_timeout)*2;
+       if(service->connection_timeout >= TIMEOUT_MAX)
+               service->connection_timeout = TIMEOUT_MAX;
 
-       dbg("cellular service timer started timer src(%d), timeout(%d)", timer_src, connection_timeout);
-       connection_timeout = connection_timeout*2;
-       if (connection_timeout >= TIMEOUT_MAX)
-               connection_timeout = TIMEOUT_DEFAULT;
+       return;
 }
 
 void _ps_service_reset_connection_timer(gpointer context)
 {
        gboolean f_awo = FALSE;
+       ps_service_t *service = NULL;
 
        f_awo = _ps_context_get_alwayson_enable(context);
-       dbg("Always ON: [%s]", (f_awo ? "YES" : "NO"));
-       if(f_awo == FALSE)
+       if(!f_awo)
                return;
 
-       connection_timeout = TIMEOUT_DEFAULT;
-
-       if (timer_src != 0) {
-               dbg("Remove connection Retry timer [%d]", timer_src);
+       service = _ps_context_ref_service(context);
+       if(service == NULL) {
+               err("service is NULL!!!");
+               return;
+       }
+       service->connection_timeout = TIMEOUT_DEFAULT;
 
-               g_source_remove(timer_src);
-               timer_src = 0;
+       if (service->timer_src > 0) {
+               warn("remove connection retry timer (%d)", service->timer_src);
+               alarmmgr_remove_alarm(service->timer_src);
+               service->timer_src = 0;
        }
+
+       return;
 }
 
 void _ps_service_remove_contexts(gpointer object)
 {
        GHashTableIter iter;
        gpointer key, value;
-       PsService *service = object;
+       ps_service_t *service = object;
 
        dbg("service remove all contexts");
-       tcore_check_return(service != NULL);
+       g_return_if_fail(service != NULL);
 
        g_hash_table_iter_init(&iter, service->contexts);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
                gpointer co_context = NULL;
 
-               dbg("key(%s), value(%p) context", key, value);
+               ps_dbg_ex_co(_ps_service_ref_co_network(service), "key(%s), value(%p) context", key, value);
                co_context = _ps_context_ref_co_context(value);
 
                _ps_service_reset_connection_timer(value);
                _ps_context_set_alwayson_enable(value, FALSE);
                _ps_service_deactivate_context(service, value);
                _ps_context_set_connected(value, FALSE);
-               //tcore_ps_remove_context(service->co_ps, co_context);
+               tcore_ps_remove_context(service->co_ps, co_context);
                tcore_context_free(co_context);
 
                __ps_service_emit_context_removed_signal(service, value);
@@ -587,45 +704,86 @@ void _ps_service_remove_contexts(gpointer object)
        }
 
        g_hash_table_remove_all(service->contexts);
+       return;
 }
 
 void _ps_service_disconnect_contexts(gpointer object)
 {
        GHashTableIter iter;
        gpointer key, value;
-       PsService *service = object;
+       ps_service_t *service = object;
 
        dbg("service disconnect all contexts");
-       tcore_check_return(service != NULL);
+       g_return_if_fail(service != NULL);
 
        g_hash_table_iter_init(&iter, service->contexts);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
                _ps_service_reset_connection_timer(value);
                _ps_service_deactivate_context(service, value);
        }
+
+       return;
+}
+
+void _ps_service_disconnect_internet_mms_contexts(gpointer object)
+{
+       GHashTableIter iter;
+       gpointer key, value;
+       ps_service_t *service = object;
+       CoreObject *co_context = NULL;
+       enum co_context_role role = CONTEXT_ROLE_UNKNOWN;
+
+       dbg("Service disconnect Internet/MMS contexts");
+       g_return_if_fail(service != NULL);
+
+       g_hash_table_iter_init(&iter, service->contexts);
+       while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
+               co_context = (CoreObject *)_ps_context_ref_co_context(value);
+               role = tcore_context_get_role(co_context);
+
+               /*
+                * Deactivate following type of contexts -
+                *      - INTERNET
+                *      - INTERNET_PREPAID
+                *      - MMS
+                *      - MMS_PREPAID
+                */
+               switch (role) {
+               case CONTEXT_ROLE_INTERNET:
+               case CONTEXT_ROLE_MMS:
+               case CONTEXT_ROLE_PREPAID_INTERNET:
+               case CONTEXT_ROLE_PREPAID_MMS:
+                       _ps_service_reset_connection_timer(value);
+                       _ps_service_deactivate_context(service, value);
+               break;
+
+               default: {
+                       dbg("Need not deactivate for %d PDN type", role);
+                       continue;
+               }
+               }
+       }
 }
 
-gint _ps_service_connect_default_context(gpointer object)
+int _ps_service_connect_default_context(gpointer object)
 {
-       gint rv = TEL_RETURN_FAILURE;
+       int rv = 0;
        GHashTableIter iter;
        gpointer key, value;
-       PsService *service = object;
+       ps_service_t *service = object;
 
        dbg("service connect default context");
-       tcore_check_return_value(service != NULL, TEL_RETURN_INVALID_PARAMETER);
+       g_return_val_if_fail(service != NULL, TCORE_RETURN_FAILURE);
 
        g_hash_table_iter_init(&iter, service->contexts);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
                gboolean f_awo = FALSE;
                f_awo = _ps_context_get_alwayson_enable(value);
 
-               if (f_awo) {
+               if(f_awo){
                        _ps_service_reset_connection_timer(value);
-
-                       /* Activate Context */
                        rv = _ps_service_activate_context(service, value);
-                       dbg("return rv(%d)", rv);
+                       ps_dbg_ex_co(_ps_service_ref_co_network(service), "return rv(%d)", rv);
                        break;
                }
        }
@@ -633,20 +791,20 @@ gint _ps_service_connect_default_context(gpointer object)
        return rv;
 }
 
-gpointer _ps_service_return_default_context(gpointer object)
+gpointer _ps_service_return_default_context(gpointer object, int svc_cat_id)
 {
        GHashTableIter iter;
        gpointer key, value;
-       PsService *service = object;
+       ps_service_t *service = object;
 
-       tcore_check_return_value(service != NULL, NULL);
+       g_return_val_if_fail(service != NULL, NULL);
 
        g_hash_table_iter_init(&iter, service->contexts);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
                gboolean b_default = FALSE;
-               b_default = _ps_context_get_default_internet(value);
+               b_default = _ps_context_get_default_context(value, svc_cat_id);
 
-               if (b_default) {
+               if(b_default){
                        return value;
                }
        }
@@ -654,149 +812,285 @@ gpointer _ps_service_return_default_context(gpointer object)
        return NULL;
 }
 
-gboolean _ps_service_processing_network_event(gpointer object,
-       gboolean ps_attached, gboolean roaming)
+int _ps_service_update_roaming_apn(gpointer object, const char* apn_str)
+{
+       int rv = 0;
+       GHashTableIter iter;
+       gpointer key, value;
+       ps_service_t *service = object;
+
+       g_return_val_if_fail(service != NULL, TCORE_RETURN_FAILURE);
+
+       g_hash_table_iter_init(&iter, service->contexts);
+       while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
+               CoreObject *co_context = NULL;
+               int role = CONTEXT_ROLE_UNKNOWN;
+               char *tmp_apn = NULL, *path = NULL;
+
+               co_context = (CoreObject *)_ps_context_ref_co_context(value);
+               role = tcore_context_get_role(co_context);
+               tmp_apn = tcore_context_get_apn(co_context);
+               path = _ps_context_ref_path(value);
+
+               if(role == CONTEXT_ROLE_INTERNET || role == CONTEXT_ROLE_MMS) {
+                       dbg("context[%s]}, role[%d], apn[%s] -> apn[%s]", path, role, tmp_apn, apn_str);
+                       tcore_context_set_apn(co_context, apn_str);
+                       tcore_ps_deactivate_context(service->co_ps, co_context, NULL);
+               }
+               g_free(tmp_apn);
+       }
+       dbg("rv: %d", rv);
+       return rv;
+}
+
+gboolean _ps_service_processing_network_event(gpointer object, gboolean ps_attached, gboolean roaming)
 {
-       PsService *service = object;
-       tcore_check_return_value(service != NULL, FALSE);
+       ps_service_t *service = object;
+       CoreObject *co_network = NULL;
+       gboolean prev_roaming_status;
+       g_return_val_if_fail(service != NULL, FALSE);
+
 
+       prev_roaming_status = _ps_service_get_roaming(service);
+
+       co_network = _ps_service_ref_co_network(service);
        _ps_service_set_ps_attached(service, ps_attached);
+       _ps_service_set_roaming(service, roaming);
        _ps_update_cellular_state_key(service);
+       /* Need to set 'Attach APN' for 'ESM Attach' if ps_status is available */
+       if (ps_attached)
+               __ps_service_set_attach_apn(service);
 
-       if (service->roaming != roaming) {
+       if(prev_roaming_status != _ps_service_get_roaming(service)) {
                gboolean roaming_allowed = FALSE;
-               _ps_service_set_roaming(service, roaming);
                roaming_allowed = _ps_modem_get_data_roaming_allowed(service->p_modem);
-               if (!roaming_allowed && roaming) {
-                       dbg("Roaming allowed (%d), Roaming status (%d)", roaming_allowed, roaming);
+               if(!roaming_allowed && roaming) {
+                       ps_dbg_ex_co(co_network, "Roaming allowed (%d), Roaming status (%d)", roaming_allowed, roaming);
                        _ps_service_disconnect_contexts(service);
                        return TRUE;
                }
        }
 
-       if (service->ps_attached)
+       if(service->ps_attached)
                _ps_service_connect_default_context(service);
 
        return TRUE;
 }
 
-gboolean _ps_service_set_connected(gpointer object, gint context_id, gboolean enabled)
+gboolean _ps_service_set_connected(gpointer object, gpointer cstatus, gboolean enabled)
 {
        GHashTableIter iter;
        gpointer key, value;
 
-       PsService *service = NULL;
+       gboolean def_awo = FALSE, b_def_conn = FALSE;
+       gpointer def_conn = NULL;
+       gpointer requested_conn = NULL;
+
+       ps_service_t *service = NULL;
+       struct tnoti_ps_call_status *call_status = NULL;
+       CoreObject * co_network;
+//     gpointer pre_def_conn = NULL;
+
+       service = (ps_service_t *) object;
+       co_network = _ps_service_ref_co_network(service);
+       call_status = (struct tnoti_ps_call_status *)cstatus;
+
+       if(enabled && service->initial_pdp_conn == FALSE) {
+               ps_dbg_ex_co(co_network, "Initial PDP connection.");
+               service->initial_pdp_conn = TRUE;
+       }
 
-       service = (PsService *) object;
        g_hash_table_iter_init(&iter, service->contexts);
        while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
-               guint tmp_cid;
+               int tmp_cid;
+               gboolean b_tmp_def = FALSE;
                CoreObject *context = NULL;
+               gpointer b_user_data = NULL;
 
                context = _ps_context_ref_co_context(value);
-               tcore_context_get_id(context, &tmp_cid);
+               tmp_cid = tcore_context_get_id(context);
 
-               if (tmp_cid != (guint)context_id) continue;
+               if (tmp_cid != call_status->context_id) continue;
+
+               //if there is default context in disconnected cid, it has to retry auto connection
+               b_tmp_def = _ps_context_get_default_context(value, CONTEXT_ROLE_INTERNET);
+               if(!b_def_conn){
+                       b_def_conn = b_tmp_def;
+               }
+
+               //if disconnected connection has the user data, it is a priority connection.
+               b_user_data = _ps_context_get_user_data(value);
+               if(b_user_data){
+                       def_conn = value;
+                       requested_conn = b_user_data;
+               }
+
+               if(!enabled){
+                       gchar *ipv4 = NULL;
+
+                       ps_dbg_ex_co(co_network, "Reset socket connections.");
 
-               if (!enabled) {
-                       dbg("Reset socket connections.");
                        tcore_ps_clear_context_id(service->co_ps, context);
+                       ipv4 = tcore_context_get_ipv4_addr(context);
+                       tcore_util_reset_ipv4_socket(tcore_context_get_ipv4_devname(context), (const char*)ipv4);
                }
 
                _ps_context_set_connected(value, enabled);
        }
 
+       //connect to request profile
+       if(!enabled && requested_conn){
+               ps_dbg_ex_co(co_network, "connect to request profile (%p)", requested_conn);
+               _ps_connection_hdlr(requested_conn);
+               _ps_service_reset_connection_timer(def_conn);
+               _ps_context_reset_user_data(def_conn);
+               return TRUE;
+       }
+
+       //default context and always on is true. - request to connect
+       if(!enabled){
+               def_conn = _ps_service_return_default_context(service, CONTEXT_ROLE_INTERNET);
+               def_awo = _ps_context_get_alwayson_enable(def_conn);
+
+               if(!def_awo){
+                       ps_dbg_ex_co(co_network, "there is no always on connection");
+                       return TRUE;
+               }
+
+               //always on TRUE and default connection - NORMAL RETRY
+               //always on TRUE and no default connection - WAIT 5 Secs for retry from application
+               if(b_def_conn){
+                       //retry connection
+                       _ps_service_connection_timer(service, def_conn);
+               }
+               else{
+
+                       //disconnect from user intention
+#if defined(CONNECT_DEFAULT_CONNECTION_WITHOUT_TIMER)
+                       if(call_status->result == 2000) {
+                               ps_dbg_ex_co(co_network, "user intended disconnect / connect default connection without timer");
+                               __ps_service_connetion_timeout_handler(service->timer_src, def_conn);
+                               return TRUE;
+                       }
+#endif
+                       //with unexpected disconnection from network/me
+                       _ps_service_set_retry_timeout_value(service, TIMEOUT_DEFAULT);
+                       _ps_service_connection_timer(service, def_conn);
+               }
+
+       }
+
        return TRUE;
 }
 
 void _ps_service_set_ps_defined(gpointer *object, gboolean value, int cid)
 {
-       PsService *service = (PsService*)object;
+       ps_service_t *service = (ps_service_t*)object;
        GHashTableIter iter;
-       gpointer key, out;
+       gpointer key, ps_context;
+       CoreObject *co_network;
+       CoreObject *co_context;
+       unsigned char context_id;
 
-       tcore_check_return(service != NULL);
+       g_return_if_fail(service != NULL);
 
+       co_network = _ps_service_ref_co_network(service);
        g_hash_table_iter_init(&iter, service->contexts);
-       while (g_hash_table_iter_next(&iter, &key, &out) == TRUE) {
-               gboolean r_actvate = 0;
-               r_actvate = _ps_context_set_ps_defined(out, value, cid);
-               r_actvate &= value;
-               if (r_actvate) {
-                       int rv;
-                       dbg("define is complete, activate context for cid(%d)", cid);
-                       rv = _ps_service_activate_context(service, out);
-                       dbg("rv(%d)", rv);
+       while (g_hash_table_iter_next(&iter, &key, &ps_context) == TRUE) {
+               co_context = _ps_context_ref_co_context(ps_context);
+               context_id = tcore_context_get_id(co_context);
+               if (context_id == cid) {
+                       gboolean b_only_attach;
+                       /* Set 'ps_defined' */
+                       _ps_context_set_ps_defined(ps_context, value);
+
+                       b_only_attach = _ps_context_get_only_attach(ps_context);
+                       if (b_only_attach) {
+                               dbg("Do not activate for only attach apn");
+                               _ps_context_set_only_attach(ps_context, FALSE);
+                               break;
+                       }
+
+                       /* Activate if define is completed */
+                       if (value) {
+                               ps_dbg_ex_co(co_network, "define is complete, activate context for cid(%d)", cid);
+                               if (_ps_service_activate_context(service, ps_context)
+                                               == TCORE_RETURN_SUCCESS) {
+                                       dbg("Successful activate context");
+                                       tcore_ps_set_cid_active(service->co_ps, cid, TRUE);
+                               }
+                       }
                        break;
                }
        }
+
+       return;
 }
 
 gboolean _ps_service_set_ps_attached(gpointer object, gboolean value)
 {
-       PsService *service = object;
-       tcore_check_return_value(service != NULL, FALSE);
+       ps_service_t *service = object;
+       g_return_val_if_fail(service != NULL, FALSE);
 
        service->ps_attached = value;
-       dbg("service(%p) ps_attached(%d)", service, service->ps_attached);
+       ps_dbg_ex_co(_ps_service_ref_co_network(service), "service(%p) ps_attached(%d)", service, service->ps_attached);
+       __ps_service_emit_property_changed_signal(service);
 
        return TRUE;
 }
 
 gboolean _ps_service_get_restricted(gpointer object)
 {
-       PsService *service = object;
-       tcore_check_return_value(service != NULL, FALSE);
+       ps_service_t *service = object;
+       g_return_val_if_fail(service != NULL, FALSE);
 
        return service->restricted;
 }
 
 gboolean _ps_service_set_restricted(gpointer object, gboolean value)
 {
-       PsService *service = object;
-       tcore_check_return_value(service != NULL, FALSE);
+       ps_service_t *service = object;
+       g_return_val_if_fail(service != NULL, FALSE);
 
        service->restricted = value;
-       dbg("service(%p) restricted(%d)", service, service->restricted);
+       ps_dbg_ex_co(_ps_service_ref_co_network(service), "service(%p) restricted(%d)", service, service->restricted);
 
        _ps_update_cellular_state_key(service);
        return TRUE;
 }
 
-#if 0
 gboolean _ps_service_set_number_of_pdn_cnt(gpointer object, gchar *operator)
 {
        int rv = 0;
        int num_of_pdn = 0;
-       PsService *service = object;
-       tcore_check_return_value(service != NULL, FALSE);
-       dbg("Entered");
-       num_of_pdn = _ps_context_get_number_of_pdn(operator);
+       ps_service_t *service = object;
+       g_return_val_if_fail(service != NULL, FALSE);
+       ps_dbg_ex_co(_ps_service_ref_co_network(service), "Entered");
+       num_of_pdn = _ps_context_get_number_of_pdn(operator, _ps_modem_ref_cp_name(_ps_service_ref_modem(object)));
        rv = tcore_ps_set_num_of_pdn(service->co_ps, num_of_pdn);
 
-       if (rv != TEL_RETURN_SUCCESS) {
-               dbg("error to get maximum number of pdn");
+       if(rv != TCORE_RETURN_SUCCESS){
+               ps_dbg_ex_co(_ps_service_ref_co_network(service), "error to get maximum number of pdn");
        }
        dbg("Exiting");
        return TRUE;
 }
-#endif
 
 gboolean _ps_service_get_roaming(gpointer object)
 {
-       PsService *service = object;
-       tcore_check_return_value(service != NULL, FALSE);
+       ps_service_t *service = object;
+       g_return_val_if_fail(service != NULL, FALSE);
 
        return service->roaming;
 }
 
 gboolean _ps_service_set_roaming(gpointer object, gboolean value)
 {
-       PsService *service = object;
-       tcore_check_return_value(service != NULL, FALSE);
+       ps_service_t *service = object;
+       g_return_val_if_fail(service != NULL, FALSE);
 
        service->roaming = value;
-       dbg("service(%p) roaming(%d)", service, service->roaming);
+       ps_dbg_ex_co(_ps_service_ref_co_network(service), "service(%p) roaming(%d)", service, service->roaming);
        __ps_service_emit_property_changed_signal(service);
 
        return TRUE;
@@ -833,31 +1127,32 @@ static void _indicator_cb_dns_reply(GObject *src, GAsyncResult *res, gpointer us
 
        g_object_unref(src);
        g_list_free(list);
+       return;
 }
 
 gboolean _ps_service_set_access_technology(gpointer object,
-               TelNetworkAct value)
+               enum telephony_network_access_technology value)
 {
-       PsService *service = object;
-       TelNetworkAct p_act = 0;
-       tcore_check_return_value(service != NULL, FALSE);
+       ps_service_t *service = object;
+       CoreObject *co_network = NULL;
+       enum telephony_network_access_technology p_act = 0;
+       g_return_val_if_fail(service != NULL, FALSE);
 
+       co_network = _ps_service_ref_co_network(service);
        p_act = service->act;
        service->act = value;
-       dbg("service(%p) P ACT(%d) Access Technology(%d)", service, p_act, service->act);
+       ps_dbg_ex_co(co_network, "service(%p) P ACT(%d) Access Technology(%d)", service, p_act, service->act);
 
-       if (p_act == TEL_NETWORK_ACT_LTE
-                       && (service->act >= TEL_NETWORK_ACT_GSM
-                       && service->act < TEL_NETWORK_ACT_LTE)) {
+       if(p_act == NETWORK_ACT_LTE && (service->act >= NETWORK_ACT_GSM && service->act < NETWORK_ACT_LTE) ){
                GResolver *r = NULL;
 
-               dbg("send the dns pkt for keeping connection");
+               ps_dbg_ex_co(co_network, "send the dns pkt for keeping connection");
 
                r = g_resolver_get_default();
                g_resolver_lookup_by_name_async(r, "www.google.com", NULL, _indicator_cb_dns_reply, NULL);
        }
 
-       if (service->act > TEL_NETWORK_ACT_UNKNOWN) {
+       if(service->act > NETWORK_ACT_UNKNOWN && service->act < NETWORK_ACT_NOT_SPECIFIED){
                _ps_update_cellular_state_key(service);
                _ps_service_connect_default_context(service);
        }
@@ -865,76 +1160,77 @@ gboolean _ps_service_set_access_technology(gpointer object,
        return TRUE;
 }
 
-TcorePsState _ps_service_check_cellular_state(gpointer object)
+enum telephony_ps_state _ps_service_check_cellular_state(gpointer object)
 {
        gboolean state = FALSE;
-       PsService *service = object;
-       tcore_check_return_value(service != NULL, TCORE_PS_STATE_NO_SERVICE);
+       ps_service_t *service = object;
+       g_return_val_if_fail(service != NULL, TELEPHONY_PS_NO_SERVICE);
+
+       state = _ps_modem_get_flght_mode(service->p_modem);
+       if(state){
+               return TELEPHONY_PS_FLIGHT_MODE;
+       }
 
        state = _ps_modem_get_power(service->p_modem);
-       if (!state) {
-               dbg("NO SERVICE");
-               return TCORE_PS_STATE_NO_SERVICE;
+       if(!state){
+               return TELEPHONY_PS_NO_SERVICE;
        }
 
        state = _ps_modem_get_sim_init(service->p_modem);
-       if (!state) {
-               dbg("NO SERVICE");
-               return TCORE_PS_STATE_NO_SERVICE;
+       if(!state){
+               return TELEPHONY_PS_NO_SERVICE;
        }
 
-       state = _ps_modem_get_flght_mode(service->p_modem);
-       if (state) {
-               dbg("FLIGHT MODE ON");
-               return TCORE_PS_STATE_FLIGHT_MODE;
+       if(service->restricted){
+               return TELEPHONY_PS_RESTRICTED_SERVICE;
        }
 
-       if (!service->ps_attached) {
-               dbg("NO SERVICE");
-               return TCORE_PS_STATE_NO_SERVICE;
+       if(!service->ps_attached){
+               return TELEPHONY_PS_NO_SERVICE;
        }
 
        state = _ps_modem_get_data_allowed(service->p_modem);
-       if (!state) {
-               dbg("DATA OFF");
-               return TCORE_PS_STATE_3G_OFF;
+       if(!state){
+               return TELEPHONY_PS_3G_OFF;
        }
 
        state = _ps_modem_get_data_roaming_allowed(service->p_modem);
-
-       if (service->roaming && !state) {
-               dbg("DATA ROAMING OFF");
-               return TCORE_PS_STATE_ROAMING_OFF;
+       if(service->roaming && !state){
+               return TELEPHONY_PS_ROAMING_OFF;
        }
 
-       return TCORE_PS_STATE_ON;
+       return TELEPHONY_PS_ON;
 }
 static gboolean on_service_get_properties (PacketServiceService *obj_service,
-       GDBusMethodInvocation *invocation, gpointer user_data)
+               GDBusMethodInvocation *invocation,
+               gpointer user_data)
 {
        GVariant *gv = NULL;
        GVariantBuilder property;
-       dbg("get service properties");
+       ps_dbg_ex_co(_ps_service_ref_co_network(user_data), "get service properties");
 
        gv = _ps_service_get_properties(user_data, &property);
        packet_service_service_complete_get_properties(obj_service, invocation, gv);
        return TRUE;
 }
 
-static gboolean on_service_get_context (PacketServiceService *obj_service,
-       GDBusMethodInvocation *invocation, gpointer user_data)
+static gboolean
+on_service_get_context (PacketServiceService *obj_service,
+               GDBusMethodInvocation *invocation,
+               gpointer user_data)
 {
        GVariantBuilder b_context;
        GVariant *contexts;
 
        GHashTableIter iter;
        gpointer key, value;
-       PsService *service = user_data;
+       ps_service_t *service = user_data;
+       CoreObject *co_network = _ps_service_ref_co_network(service);
 
-       dbg("modem get contexts interface");
+       ps_dbg_ex_co(co_network, "modem get contexts interface");
 
        if (service->contexts == NULL) {
-               err("No context present for service");
+               ps_err_ex_co(co_network, "No context present for service");
                FAIL_RESPONSE(invocation,PS_ERR_INTERNAL);
                return TRUE;
        }
@@ -947,8 +1243,8 @@ static gboolean on_service_get_context (PacketServiceService *obj_service,
                path = _ps_service_ref_path(value);
 
                g_variant_builder_add(&b_context, "s",g_strdup(path));
-               if (FALSE == _ps_context_get_properties_handler(value, &b_context)) {
-                       err("Failed to get property");
+               if(FALSE == _ps_context_get_properties_handler(value, &b_context)){
+                       ps_err_ex_co(co_network, "Failed to get property");
                        g_variant_builder_close(&b_context);
                        FAIL_RESPONSE(invocation,PS_ERR_INTERNAL);
                        return TRUE;
@@ -962,19 +1258,20 @@ static gboolean on_service_get_context (PacketServiceService *obj_service,
        return TRUE;
 }
 
-static void _ps_service_setup_interface(PacketServiceService *service,
-       PsService *service_data)
+static void _ps_service_setup_interface(PacketServiceService *service, ps_service_t *service_data)
 {
        dbg("Entered");
        g_signal_connect (service,
-               "handle-get-properties",
-               G_CALLBACK (on_service_get_properties),
-               service_data);
+                       "handle-get-properties",
+                       G_CALLBACK (on_service_get_properties),
+                       service_data);
 
        g_signal_connect (service,
-               "handle-get-contexts",
-               G_CALLBACK (on_service_get_context),
-               service_data);
+                       "handle-get-contexts",
+                       G_CALLBACK (on_service_get_context),
+                       service_data);
 
        dbg("Exiting");
+       return;
 }
+
index 0247d66..c461cf0 100644 (file)
@@ -1,7 +1,9 @@
 /*
- * tel-plugin-packetservice
+ * PacketService Control Module
  *
- * Copyright (c) 2013 Samsung Electronics Co. Ltd. All rights reserved.
+ * Copyright (c) 2012 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Contact: DongHoo Park <donghoo.park@samsung.com>
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
+ *
  */
 
 #include "ps.h"
 
-#include <tcore.h>
 #include <server.h>
 #include <plugin.h>
 #include <storage.h>
 #include <co_context.h>
 #include <co_modem.h>
 #include <co_sim.h>
+#include <type/network.h>
 #include <co_network.h>
+#ifdef POWER_SAVING_FEATURE_WEARABLE
+#include <co_call.h>
+#endif
+#include <user_request.h>
+
+#define TIMEOUT_MAX                    1280
+
+enum ps_call_state {
+       PS_CALL_STATE_RESULT_OK = 0x00,
+       PS_CALL_STATE_RESULT_CONNECT = 0x01,
+       PS_CALL_STATE_RESULT_NO_CARRIER = 0x03
+};
+
+struct work_queue_data {
+       unsigned int id;
+       UserRequest *ur;
+};
+
+static void __ps_modem_set_hook_flag(ps_modem_t *modem ,enum tcore_request_command cmd);
+static void __ps_modem_get_mode_pref_change(ps_modem_t* modem, UserRequest *ur);
+
+
+#ifdef POWER_SAVING_FEATURE_WEARABLE
+static gboolean __ps_is_any_call_in_progress(TcorePlugin *plugin, __ps_call_flow_type type, enum tcore_notification_command command);
+static enum tcore_hook_return __on_hook_voice_call_status(Server *s, CoreObject *co_call,
+               enum tcore_notification_command command, unsigned int data_len, void *data, void *user_data);
+#endif
+
+
+static gboolean ps_util_add_waiting_job(GQueue *queue, unsigned int id, UserRequest *ur)
+{
+       struct work_queue_data *wqd;
+
+       if (!queue)
+               return FALSE;
+
+       wqd = calloc(sizeof(struct work_queue_data), 1);
+       if (!wqd)
+               return FALSE;
+
+       wqd->id = id;
+       wqd->ur = ur;
+       g_queue_push_tail(queue, wqd);
+
+       dbg("id = %d, ur = 0x%x", wqd->id, wqd->ur);
+       return TRUE;
+}
+
+static guint ps_util_get_count_waiting_job(GQueue *queue, unsigned int id)
+{
+       guint i = 0;
+       guint count = 0;
+       struct work_queue_data *wqd = NULL;
+
+       if (!queue)
+               return count;
+
+       dbg("job count: %d", g_queue_get_length(queue));
+
+       do {
+               wqd = g_queue_peek_nth(queue, i);
+               if (!wqd)
+                       break;
+
+               if (wqd->id == id) {
+                       count++;
+               }
+
+               i++;
+       } while (wqd != NULL);
+
+       dbg("count: %d, id = %d", count, id);
+
+       return count;
+}
+
+static UserRequest *ps_util_pop_waiting_job(GQueue *queue, unsigned int id)
+{
+       int i = 0;
+       UserRequest *ur;
+       struct work_queue_data *wqd;
+
+       if (!queue)
+               return NULL;
+
+       dbg("before waiting job count: %d", g_queue_get_length(queue));
+
+       do {
+               wqd = g_queue_peek_nth(queue, i);
+               if (!wqd)
+                       return NULL;
+
+               if (wqd->id == id) {
+                       wqd = g_queue_pop_nth(queue, i);
+                       break;
+               }
+
+               i++;
+       } while (wqd != NULL);
+
+       dbg("after  waiting job count: %d", g_queue_get_length(queue));
+
+       if (!wqd)
+               return NULL;
+
+       ur = wqd->ur;
+       free(wqd);
+
+       return ur;
+}
+#if 0
+static gboolean __ps_check_pdp_permanent_reject_cause(int cause)
+{
+       gboolean ret = TRUE;
+
+       // default ME's policy (same with Android OS 4.4)
+       if(ps_feature_get_bool(PS_FEATURE_OPERATOR_NA_ATT) ||
+          ps_feature_get_bool(PS_FEATURE_OPERATOR_NA_TMO) ||
+          ps_feature_get_bool(PS_FEATURE_OPERATOR_SKT) ||
+          ps_feature_get_bool(PS_FEATURE_OPERATOR_KT)) {
+               switch(cause) {
+                       case PS_PDP_PERMANENT_REJECT_OPERATOR_DETERMINED_BARRING:
+                       case PS_PDP_PERMANENT_REJECT_UNKNOWN_APN:
+                       case PS_PDP_PERMANENT_REJECT_UNKNOWN_PDP:
+                       case PS_PDP_PERMANENT_REJECT_AUTH_FAILED:
+                       case PS_PDP_PERMANENT_REJECT_GGSN_REJECT:
+                       case PS_PDP_PERMANENT_REJECT_OPTION_NOT_SUPPORTED:
+                       case PS_PDP_PERMANENT_REJECT_OPTION_UNSUBSCRIBED: {
+                               dbg("Permanent reject cause");
+                               ret = FALSE;
+                       } break;
+                       default: {
+                       } break;
+               }
+       }
+       if(ps_feature_get_bool(PS_FEATURE_OPERATOR_KT)) {
+               switch(cause) {
+                       case PS_PDP_PERMANENT_REJECT_NSAPI_ALREADY_USED:
+                       case PS_PDP_PERMANENT_REJECT_PROTOCOL_ERROR:{
+                               dbg("Permanent reject cause");
+                               ret = FALSE;
+                       } break;
+                       default:
+                         break;
+               }
+       }
+       if(ps_feature_get_bool(PS_FEATURE_OPERATOR_SKT)) {
+               switch(cause) {
+                       case PS_PDP_PERMANENT_REJECT_LLC_SNDCP_FAILURE:
+                       case PS_PDP_PERMANENT_REJECT_OPTION_TEMP_OOO:
+                       case PS_PDP_PERMANENT_REJECT_NSAPI_ALREADY_USED:
+                       case PS_PDP_PERMANENT_REJECT_IP_V4_ONLY_ALLOWED:
+                       case PS_PDP_PERMANENT_REJECT_IP_V6_ONLY_ALLOWED:
+                       case PS_PDP_PERMANENT_REJECT_SINGLE_ADDR_BEARER_ONLY:
+                       case PS_PDP_PERMANENT_REJECT_MESSAGE_INCORRECT_SEMANTIC:
+                       case PS_PDP_PERMANENT_REJECT_INVALID_MANDATORY_INFO:
+                       case PS_PDP_PERMANENT_REJECT_MESSAGE_TYPE_UNSUPPORTED:
+                       case PS_PDP_PERMANENT_REJECT_MSG_TYPE_NONCOMPATIBLE_STATE:
+                       case PS_PDP_PERMANENT_REJECT_UNKNOWN_INFO_ELEMENT:
+                       case PS_PDP_PERMANENT_REJECT_CONDITIONAL_IE_ERROR:
+                       case PS_PDP_PERMANENT_REJECT_MSG_AND_PROTOCOL_STATE_UNCOMPATIBLE:
+                       case PS_PDP_PERMANENT_REJECT_PROTOCOL_ERROR:
+                       case PS_PDP_PERMANENT_REJECT_APN_TYPE_CONFLICT: {
+                               dbg("Permanent reject cause");
+                               ret = FALSE;
+                       } break;
+                       default:
+                         break;
+               }
+       }
+       return ret;
+}
+#endif
+static gboolean __ps_set_network_mode(int mode, void *data)
+{
+       int c_mode = 0;
+       gboolean roaming = FALSE;
+       struct treq_network_set_mode req;
+
+       UserRequest *ur = NULL;
+       ps_modem_t *modem = data;
+
+       GSList *co_list = NULL;
+       CoreObject *co_network = NULL;
+
+       co_list = tcore_plugin_get_core_objects_bytype(tcore_object_ref_plugin(modem->co_modem),
+                       CORE_OBJECT_TYPE_NETWORK);
+
+       if (G_UNLIKELY(co_list == NULL)) {
+               return FALSE;
+       }
+
+       memset(&req,0,sizeof(struct treq_network_set_mode));
+
+       co_network = (CoreObject *) co_list->data;
+       c_mode = mode;
+       dbg("current network mode (%d)", c_mode);
+
+       if(modem->data_allowed) {
+               c_mode |= NETWORK_MODE_LTE;
+       }
+       else{
+               c_mode &= ~NETWORK_MODE_LTE;
+       }
+       dbg("network mode(%d) - data allowed(%d)", c_mode, modem->data_allowed);
+
+       roaming = tcore_network_get_roaming_state(co_network);
+       if(modem->data_allowed && roaming) {
+               c_mode &= ~NETWORK_MODE_LTE;
+       }
+       dbg("network mode(%d) - roaming(%d)", c_mode, roaming);
+
+       dbg("candidate mode(%d), current mode(%d)", c_mode, mode);
+       if(c_mode == mode) {
+               dbg("mode is the same as before, do not send");
+               g_slist_free(co_list);
+               return FALSE;
+       }
+
+       req.mode = c_mode;
+
+       ur = tcore_user_request_new(NULL, tcore_plugin_ref_plugin_name(tcore_object_ref_plugin(co_network)));
+       tcore_user_request_set_data(ur, sizeof(struct treq_network_set_mode), &req);
+       tcore_user_request_set_command(ur, TREQ_NETWORK_SET_MODE);
+       //tcore_user_request_set_response_hook(ur, __ps_hook_response_cb, modem);
+       //tcore_object_dispatch_request(co_network, ur);
+
+       //ps_handle_hook(tcore_plugin_ref_server(tcore_object_ref_plugin(modem->co_modem)), ur, modem);
+       if(TCORE_RETURN_SUCCESS != tcore_server_dispatch_request(tcore_plugin_ref_server(tcore_object_ref_plugin(modem->co_modem)), ur)) {
+               err("Failed to dispatch ");
+               tcore_user_request_unref(ur);
+       }
+
+       g_slist_free(co_list);
+       return TRUE;
+}
+
+/* Function will be used in case any dispatch request failed in ps plugin */
+static void __ps_send_ur_dispatch_failure_response(UserRequest *ur, enum tcore_response_command command)
+{
+       dbg("User request dispatch failed so need to send response for command [%d]", command);
+       switch (command) {
+       case TRESP_NETWORK_SEARCH:
+               {
+                       struct tresp_network_search search_rsp;
+                       memset(&search_rsp, 0, sizeof(struct tresp_network_search));
+
+                       search_rsp.result = TCORE_RETURN_OPERATION_ABORTED;
+                       search_rsp.list_count = 0;
+                       tcore_user_request_send_response(ur, TRESP_NETWORK_SEARCH,
+                       sizeof(struct tresp_network_search), &search_rsp);
+               }
+               break;
+       case TRESP_NETWORK_SET_PLMN_SELECTION_MODE:
+               {
+                       struct tresp_network_set_plmn_selection_mode set_plmn_selection_mode_rsp;
+                       memset(&set_plmn_selection_mode_rsp, 0, sizeof(struct tresp_network_set_plmn_selection_mode));
+
+                       set_plmn_selection_mode_rsp.result =  TCORE_RETURN_FAILURE;
+                       tcore_user_request_send_response(ur, TRESP_NETWORK_SET_PLMN_SELECTION_MODE,
+                       sizeof(struct tresp_network_set_plmn_selection_mode), &set_plmn_selection_mode_rsp);
+               }
+               break;
+       case TRESP_NETWORK_SET_MODE:
+               {
+                       struct tresp_network_set_mode set_rsp;
+                       memset(&set_rsp, 0, sizeof(struct tresp_network_set_mode));
+
+                       set_rsp.result =  TCORE_RETURN_FAILURE;
+                       tcore_user_request_send_response(ur, TRESP_NETWORK_SET_MODE,
+                       sizeof(struct tresp_network_search), &set_rsp);
+               }
+               break;
+       case TRESP_NETWORK_GET_MODE:
+               {
+                       struct tresp_network_get_mode get_rsp;
+                       memset(&get_rsp, 0, sizeof(struct tresp_network_get_mode));
+
+                       get_rsp.result =  TCORE_RETURN_FAILURE;
+                       tcore_user_request_send_response(ur, TRESP_NETWORK_GET_MODE,
+                       sizeof(struct tresp_network_get_mode), &get_rsp);
+               }
+               break;
+       case TRESP_MODEM_POWER_OFF:
+               {
+                       struct tresp_modem_power_off set_power_off_rsp;
+                       memset(&set_power_off_rsp, 0, sizeof(struct tresp_modem_power_off));
+
+                       set_power_off_rsp.result =  TCORE_RETURN_FAILURE;
+                       tcore_user_request_send_response(ur, TRESP_MODEM_POWER_OFF,
+                       sizeof(struct tresp_modem_power_off), &set_power_off_rsp);
+               }
+               break;
+       case TRESP_MODEM_POWER_LOW:
+               {
+                       struct tresp_modem_power_low set_power_low_rsp;
+                       memset(&set_power_low_rsp, 0, sizeof(struct tresp_modem_power_low));
+
+                       set_power_low_rsp.result =  TCORE_RETURN_FAILURE;
+                       tcore_user_request_send_response(ur, TRESP_MODEM_POWER_LOW,
+                       sizeof(struct tresp_modem_power_low), &set_power_low_rsp);
+               }
+               break;
+       case TRESP_MODEM_SET_FLIGHTMODE:
+               {
+                       struct tresp_modem_set_flightmode set_flight_mode_rsp;
+                       memset(&set_flight_mode_rsp, 0, sizeof(struct tresp_modem_set_flightmode));
+
+                       set_flight_mode_rsp.result =  TCORE_RETURN_FAILURE;
+                       tcore_user_request_send_response(ur, TRESP_MODEM_SET_FLIGHTMODE,
+                       sizeof(struct tresp_modem_set_flightmode), &set_flight_mode_rsp);
+               }
+               break;
+       default :
+                       err("Command type not expected [%d]", command);
+       }
+       /* Unref User request */
+       tcore_user_request_unref( ur);
+}
+
+void __ps_hook_response_cb(UserRequest *ur, enum tcore_response_command command,
+       unsigned int data_len, const void *data, void *user_data)
+{
+       ps_modem_t *modem = user_data;
+       CoreObject *co_modem = _ps_modem_ref_co_modem(modem);
+       guint count;
+       guint id;
+       id = ((command & ~TCORE_RESPONSE) & TCORE_REQUEST);
+
+       ps_dbg_ex_co(co_modem, "Entered");
+       count = ps_util_get_count_waiting_job(modem->work_queue, id);
+
+       if (count != 0) {
+               ur = ps_util_pop_waiting_job(modem->work_queue, id);
+               if(ur){
+                       GSList *co_list = NULL;
+                       CoreObject *co_network = NULL;
+                       TReturn ret = TCORE_RETURN_SUCCESS;
+
+                       co_list = tcore_plugin_get_core_objects_bytype(tcore_object_ref_plugin(modem->co_modem),
+                               CORE_OBJECT_TYPE_NETWORK);
+
+                       if (G_UNLIKELY(co_list == NULL)) {
+                               ps_err_ex_co(co_modem, "Network CoreObject is not present");
+                               return;
+                       }
+
+                       co_network = (CoreObject *) co_list->data;
+                       g_slist_free(co_list);
+
+                       ps_dbg_ex_co(co_modem, "Sending Pending Request of type = id", id);
+                       tcore_user_request_set_response_hook(ur, __ps_hook_response_cb, modem);
+                       if((command == TRESP_NETWORK_SET_CANCEL_MANUAL_SEARCH)
+                               || (command == TRESP_NETWORK_SEARCH)
+                               || (command == TRESP_NETWORK_SET_PLMN_SELECTION_MODE)
+                               ||(command == TRESP_NETWORK_SET_MODE)
+                               || (command ==TRESP_NETWORK_GET_MODE))
+                                       ret = tcore_object_dispatch_request(co_network , ur);
+                       else if ((command == TRESP_MODEM_SET_FLIGHTMODE)
+                               || (command == TRESP_MODEM_POWER_LOW)
+                               || (command == TRESP_MODEM_POWER_OFF))
+                                       ret = tcore_object_dispatch_request(modem->co_modem , ur);
+                       if(TCORE_RETURN_SUCCESS != ret) {
+                               /* send responce wrt to command */
+                               err("Failed to dispatch request, need to sent response to dbus")
+                               __ps_send_ur_dispatch_failure_response(ur, command);
+                       }
+                       return;
+               }
+       }
+
+       switch(command){
+               case TRESP_NETWORK_SET_CANCEL_MANUAL_SEARCH:
+               case TRESP_NETWORK_SEARCH:
+                       ps_dbg_ex_co(co_modem, "TRESP_NETWORK_SEARCH  response received");
+                       if (count == 0) {
+                               modem->hook_flag &= PS_RESET_NETWORK_SEARCH_FLAG;
+                       }
+                       break;
+               case TRESP_NETWORK_SET_PLMN_SELECTION_MODE:
+                       ps_dbg_ex_co(co_modem, "TRESP_NETWORK_SET_PLMN_SELECTION_MODE response received ");
+                       if (count == 0) {
+                               modem->hook_flag &= PS_NETWORK_RESET_SELECTION_FLAG;
+                       }
+                       break;
+               case TRESP_NETWORK_SET_MODE:
+               {
+                       ps_dbg_ex_co(co_modem, "TRESP_NETWORK_SET_MODE response received ");
+
+                       if (count == 0) {
+                               modem->hook_flag &= PS_NETWORK_RESET_SELECT_MODE_FLAG ;
+                       }
+
+               }break;
+               case TRESP_NETWORK_GET_MODE:{
+                       gboolean rv = FALSE;
+                       const struct tresp_network_get_mode *resp_get_mode = data;
+                       dbg("TRESP_NETWORK_GET_MODE response received mode (mode:[%d])", resp_get_mode->mode);
+
+                       if (count == 0) {
+                               modem->hook_flag &= PS_NETWORK_RESET_GET_MODE_FLAG;
+                       }
+
+                       rv = __ps_set_network_mode(resp_get_mode->mode, modem);
+                       if(rv) {
+                               dbg("network set mode request!");
+                               return;
+                       }
+               }break;
+               case TRESP_NETWORK_SET_DEFAULT_DATA_SUBSCRIPTION:
+               ps_dbg_ex_co(co_modem, "TRESP_NETWORK_SET_DEFAULT_DATA_SUBSCRIPTION response received ");
+               if (count == 0) {
+                       modem->hook_flag &= PS_NETWORK_RESET_SET_DEFAULT_DATA_SUBS;
+               }
+               break;
+               case TRESP_MODEM_SET_FLIGHTMODE:
+               ps_dbg_ex_co(co_modem, "TRESP_MODEM_SET_FLIGHTMODE response received ");
+               if (count == 0) {
+                               modem->hook_flag &= PS_NETWORK_RESET_SET_FLIGHT_MODE_FLAG;
+               }
+               break;
+               case TRESP_MODEM_POWER_LOW:
+               ps_dbg_ex_co(co_modem, "TRESP_MODEM_POWER_LOW response received ");
+               if (count == 0) {
+                               modem->hook_flag &= PS_NETWORK_RESET_SET_POWER_LOW_FLAG;
+               }
+               break;
+               case TRESP_MODEM_POWER_OFF:
+               ps_dbg_ex_co(co_modem, "TRESP_MODEM_POWER_OFF response received ");
+               if (count == 0) {
+                               modem->hook_flag &= PS_NETWORK_RESET_SET_POWER_OFF_FLAG;
+               }
+               break;
+               case TRESP_SIM_SET_POWERSTATE:
+               ps_dbg_ex_co(co_modem, "TRESP_SIM_SET_POWERSTATE response received ");
+               if (count == 0) {
+                               modem->hook_flag &= PS_SIM_SET_POWER_STATE_FLAG;
+               }
+               break;
+               default :{
+                       ps_dbg_ex_co(co_modem, "Unexpected response ");
+               } break;
+       }
+       ps_dbg_ex_co(co_modem, " FLAG %x", modem->hook_flag);
+
+       if(modem->hook_flag == PS_NO_PENDING_REQUEST
+               && command != TRESP_MODEM_POWER_LOW
+                && command != TRESP_MODEM_POWER_OFF
+                && modem->mode_pref_changed == FALSE) {
+               _ps_modem_set_data_allowed(modem, modem->data_allowed);
+       }
+}
+
+void __ps_modem_get_mode_pref_change(ps_modem_t* modem, UserRequest *ur)
+{
+       enum telephony_network_service_type svc_type;
+       enum tcore_request_command cmd;
+       GSList *co_list = NULL;
+
+       cmd = tcore_user_request_get_command(ur);
+       if(cmd != TREQ_NETWORK_SET_MODE) {
+               err("Not a TREQ_NETWORK_SET_MODE");
+               modem->mode_pref_changed = FALSE;
+               return;
+       }
+       modem->mode_pref_changed = TRUE;
+
+       co_list = tcore_plugin_get_core_objects_bytype(tcore_object_ref_plugin(modem->co_modem), CORE_OBJECT_TYPE_NETWORK);
+       if (G_LIKELY(co_list != NULL)) {
+               CoreObject *co_network = NULL;
+               const struct treq_network_set_mode *req;
+
+               co_network = (CoreObject *) co_list->data;
+               req = tcore_user_request_ref_data(ur, NULL);
+               tcore_network_get_service_type(co_network, &svc_type);
+               dbg("mode_pref[0x%x], svc_type[%d]", req->mode, svc_type);
+               switch(svc_type) {
+                       case NETWORK_SERVICE_TYPE_2G:
+                       case NETWORK_SERVICE_TYPE_2_5G:
+                       case NETWORK_SERVICE_TYPE_2_5G_EDGE: {
+                               if(req->mode == NETWORK_MODE_GSM)
+                                       modem->mode_pref_changed = FALSE;
+                       } break;
+
+                       case NETWORK_SERVICE_TYPE_3G:
+                       case NETWORK_SERVICE_TYPE_HSDPA: {
+                               if(req->mode & NETWORK_MODE_WCDMA)
+                                       modem->mode_pref_changed = FALSE;
+                       } break;
+                       case NETWORK_SERVICE_TYPE_LTE: {
+                               if(req->mode & NETWORK_MODE_LTE)
+                                       modem->mode_pref_changed = FALSE;
+                       } break;
+                       default:
+                         break;
+               }
+       }
+       dbg("mode_pref_changed : %d", modem->mode_pref_changed);
+}
+
+void __ps_modem_cp_reset_send_pending_request_response(gpointer data)
+{
+       gpointer *queue_data = NULL;
+       ps_modem_t *modem = data;
+       CoreObject *co_modem = _ps_modem_ref_co_modem(modem);
+
+       ps_dbg_ex_co(co_modem, "Entered");
+       queue_data = g_queue_pop_head(modem->work_queue);
+       while( queue_data) {
+               struct work_queue_data *wqd = (struct work_queue_data *)queue_data ;
+               if(wqd->ur) {
+                       enum tcore_request_command cmd = tcore_user_request_get_command(wqd->ur);
+
+                       if(cmd == TREQ_NETWORK_SEARCH){
+                               struct tresp_network_search search_rsp;
+                               memset(&search_rsp, 0, sizeof(struct tresp_network_search));
+
+                               search_rsp.result = TCORE_RETURN_FAILURE;
+                               search_rsp.list_count = 0;
+                               tcore_user_request_send_response(wqd->ur, TRESP_NETWORK_SEARCH,
+                               sizeof(struct tresp_network_search), &search_rsp);
+                       }
+                       else if(cmd == TREQ_NETWORK_SET_PLMN_SELECTION_MODE){
+                               struct tresp_network_set_plmn_selection_mode set_plmn_mode_rsp;
+                               memset(&set_plmn_mode_rsp, 0, sizeof(struct tresp_network_set_plmn_selection_mode));
+
+                               set_plmn_mode_rsp.result = TCORE_RETURN_FAILURE;
+                               tcore_user_request_send_response(wqd->ur, TRESP_NETWORK_SET_PLMN_SELECTION_MODE,
+                               sizeof(struct tresp_network_set_plmn_selection_mode), &set_plmn_mode_rsp);
+                       }
+                       else if(cmd == TREQ_NETWORK_SET_MODE){
+                               struct tresp_network_set_mode setmode_rsp;
+                               memset(&setmode_rsp, 0, sizeof(struct tresp_network_set_mode));
+
+                               setmode_rsp.result = TCORE_RETURN_FAILURE;
+                               tcore_user_request_send_response(wqd->ur, TRESP_NETWORK_SET_MODE,
+                               sizeof(struct tresp_network_set_mode), &setmode_rsp);
+                       }
+                       else if(cmd == TREQ_NETWORK_SET_CANCEL_MANUAL_SEARCH){
+                               struct tresp_network_set_cancel_manual_search search_cancel_rsp;
+                               memset(&search_cancel_rsp, 0, sizeof(struct tresp_network_set_cancel_manual_search));
+
+                               search_cancel_rsp.result = TCORE_RETURN_FAILURE;
+                               tcore_user_request_send_response(wqd->ur, TRESP_NETWORK_SET_CANCEL_MANUAL_SEARCH,
+                               sizeof(struct tresp_network_set_cancel_manual_search), &search_cancel_rsp);
+                       }
+                       else if(cmd == TREQ_NETWORK_SET_DEFAULT_DATA_SUBSCRIPTION){
+                               struct tresp_network_set_default_data_subscription default_data_rsp;
+                               memset(&default_data_rsp, 0, sizeof(struct tresp_network_set_default_data_subscription));
+
+                               default_data_rsp.result = TCORE_RETURN_FAILURE;
+                               tcore_user_request_send_response(wqd->ur, TRESP_NETWORK_SET_DEFAULT_DATA_SUBSCRIPTION,
+                               sizeof(struct tresp_network_set_default_data_subscription), &default_data_rsp);
+                       }
+                       else if (cmd == TREQ_MODEM_SET_FLIGHTMODE) {
+                               struct tresp_modem_set_flightmode set_flight_mode;
+                               memset(&set_flight_mode, 0, sizeof(struct tresp_modem_set_flightmode));
+
+                               set_flight_mode.result = TCORE_RETURN_FAILURE;
+                               tcore_user_request_send_response(wqd->ur, TRESP_MODEM_SET_FLIGHTMODE,
+                               sizeof(struct tresp_modem_set_flightmode), &set_flight_mode);
+
+                       }
+                       else if (cmd == TREQ_MODEM_POWER_OFF) {
+                               struct tresp_modem_power_off set_power_off;
+                               memset(&set_power_off,  0, sizeof(struct tresp_modem_power_off));
+
+                               set_power_off.result = TCORE_RETURN_FAILURE;
+                               tcore_user_request_send_response(wqd->ur, TRESP_MODEM_POWER_OFF,
+                               sizeof(struct tresp_modem_power_off), &set_power_off);
+
+                       }
+                       else if (cmd == TREQ_MODEM_POWER_LOW) {
+                               struct tresp_modem_power_low set_power_low;
+                               memset(&set_power_low, 0, sizeof(struct tresp_modem_power_low));
+
+                               set_power_low.result = TCORE_RETURN_FAILURE;
+                               tcore_user_request_send_response(wqd->ur, TRESP_MODEM_POWER_LOW,
+                               sizeof(struct tresp_modem_power_low), &set_power_low);
+
+                       }
+                       else if (cmd == TREQ_SIM_SET_POWERSTATE) {
+                               struct tresp_sim_set_powerstate set_power;
+                               memset(&set_power, 0, sizeof(struct tresp_sim_set_powerstate));
+
+                               set_power.result = TCORE_RETURN_FAILURE;
+                               tcore_user_request_send_response(wqd->ur, TRESP_SIM_SET_POWERSTATE,
+                               sizeof(struct tresp_sim_set_powerstate), &set_power);
+
+                       } else {
+                               err("Unexpected command ");
+                       }
+                       tcore_user_request_unref(wqd->ur);
+
+                       /* Memory Free */
+                       free(wqd);
+               }
+               queue_data = g_queue_pop_head(modem->work_queue);
+       }
+}
 
-static TcoreHookReturn __on_hook_call_status(TcorePlugin *plugin,
-       TcoreNotification command, guint data_len, void *data, void *user_data)
+static void __ps_modem_cp_reset_handler(gpointer object)
 {
+       ps_modem_t * modem = object;
+
+       dbg("Entred");
+       /* check for any pending request in modem queue and respond with error */
+       __ps_modem_cp_reset_send_pending_request_response(modem);
+
+       /* reset modem flag */
+       modem->hook_flag  &=PS_NO_PENDING_REQUEST;
+}
+
+
+void __ps_modem_set_hook_flag(ps_modem_t *modem ,enum tcore_request_command cmd)
+{
+       CoreObject *co_modem = _ps_modem_ref_co_modem(modem);
+
+       switch(cmd) {
+               case TREQ_NETWORK_SEARCH:
+                       ps_dbg_ex_co(co_modem, "TREQ_NETWORK_SEARCH");
+                       modem->hook_flag |= PS_NETWORK_SEARCH_PENDING;
+                       ps_dbg_ex_co(co_modem, "TREQ_NETWORK_SEARCH setting flag %x", modem->hook_flag);
+               break;
+               case TREQ_NETWORK_SET_PLMN_SELECTION_MODE:
+                       modem->hook_flag |= PS_NETWORK_SELECTION_PENDING;
+                       ps_dbg_ex_co(co_modem, "TREQ_NETWORK_SET_PLMN_SELECTION_MODE setting flag %x", modem->hook_flag);
+               break;
+               case TREQ_NETWORK_SET_MODE:
+                       modem->hook_flag |= PS_NETWORK_SELECT_MODE;
+                       ps_dbg_ex_co(co_modem, "TREQ_NETWORK_SET_MODE setting flag %x", modem->hook_flag);
+               break;
+               case TREQ_NETWORK_SET_DEFAULT_DATA_SUBSCRIPTION:
+                       modem->hook_flag |= PS_NETWORK_SET_DEFAULT_DATA_SUBS;
+                       ps_dbg_ex_co(co_modem, "TREQ_NETWORK_SET_DEFAULT_DATA_SUBSCRIPTION setting flag %x", modem->hook_flag);
+               break;
+               case TREQ_MODEM_SET_FLIGHTMODE:
+                       modem->hook_flag |= PS_NETWORK_SET_FLIGHT_MODE;
+                       ps_dbg_ex_co(co_modem, "TREQ_MODEM_SET_FLIGHTMODE setting flag %x", modem->hook_flag);
+               break;
+               case TREQ_MODEM_POWER_OFF:
+                       modem->hook_flag |= PS_NETWORK_SET_POWER_OFF;
+                       ps_dbg_ex_co(co_modem, "TREQ_MODEM_POWER_OFF setting flag %x", modem->hook_flag);
+               break;
+               case TREQ_MODEM_POWER_LOW:
+                       modem->hook_flag |= PS_NETWORK_SET_POWER_LOW;
+                       ps_dbg_ex_co(co_modem, "TREQ_MODEM_POWER_LOW setting flag %x", modem->hook_flag);
+               break;
+               case TREQ_SIM_SET_POWERSTATE:
+                       modem->hook_flag |= PS_SIM_SET_POWER_STATE;
+                       ps_dbg_ex_co(co_modem, "TREQ_SIM_SET_POWERSTATE setting flag %x", modem->hook_flag);
+               break;
+               default:
+                       ps_dbg_ex_co(co_modem, "Not handled request");
+               break;
+       }
+}
+
+enum tcore_hook_return ps_handle_hook(Server *s, UserRequest *ur, void *user_data)
+{
+       gboolean ret = FALSE;
+       TReturn rv = TCORE_RETURN_FAILURE;
+
+       CoreObject *co_ps = NULL;
+       GSList *co_ps_list = NULL;
+       TcorePlugin *target_plg = NULL;
+       int value = 0;
+       guint job_cnt = 0;
+       ps_modem_t *modem = user_data;
+       CoreObject *co_modem = _ps_modem_ref_co_modem(modem);
+
+       char *modem_name = NULL;
+       enum tcore_request_command cmd = tcore_user_request_get_command(ur);
+
+       ps_dbg_ex_co(co_modem, "Entered");
+
+       modem_name = tcore_user_request_get_modem_name (ur);
+       if (!modem_name)
+               return TCORE_HOOK_RETURN_CONTINUE;
+
+       target_plg = tcore_object_ref_plugin(modem->co_modem);
+       if( g_strcmp0(tcore_server_get_cp_name_by_plugin(target_plg), modem_name) != 0) {
+               ps_dbg_ex_co(co_modem, "request modem (%s) not matched current modem(%s)",
+                               modem_name,
+                               tcore_server_get_cp_name_by_plugin(target_plg));
+
+               if( cmd == TREQ_NETWORK_SEARCH ) {
+                       co_ps_list = tcore_plugin_get_core_objects_bytype (target_plg, CORE_OBJECT_TYPE_PS);
+                       if (!co_ps_list) {
+                               ps_dbg_ex_co(co_modem, "No ps core object present ");
+                               free(modem_name);
+                               return TCORE_HOOK_RETURN_CONTINUE;
+                       }
+                       co_ps = co_ps_list->data;
+                       g_slist_free (co_ps_list);
+
+                       if (!co_ps) {
+                               ps_dbg_ex_co(co_modem, "No ps core object present ");
+                               free(modem_name);
+                               return TCORE_HOOK_RETURN_CONTINUE;
+                       }
+
+                       if(FALSE == tcore_ps_any_context_activating_activated(co_ps, &value)){
+                               ps_dbg_ex_co(co_modem, "No activating/activated context present");
+                               /* Block PS always-on while network operations. */
+                               __ps_modem_set_hook_flag(modem, cmd);
+                               tcore_user_request_set_response_hook(ur, __ps_hook_response_cb, modem);
+                               free(modem_name);
+                               return TCORE_HOOK_RETURN_CONTINUE;
+                       }
+
+                       ps_dbg_ex_co(co_modem, "Value returned [%d]", value);
+                       if(( CONTEXT_STATE_ACTIVATING == value) || ( CONTEXT_STATE_ACTIVATED == value)) {
+                               ps_dbg_ex_co(co_modem, "Activated/Activating context present need to deactivate them");
+                               rv = tcore_ps_deactivate_contexts(co_ps);
+                               if(rv != TCORE_RETURN_SUCCESS){
+                                       ps_dbg_ex_co(co_modem, "fail to deactivation");
+                                       free(modem_name);
+                                       return TCORE_HOOK_RETURN_CONTINUE;
+                               }
+                               __ps_modem_set_hook_flag(modem, cmd);
+                               tcore_user_request_set_response_hook(ur, __ps_hook_response_cb, modem);
+                       }
+               }else if(cmd == TREQ_NETWORK_SET_CANCEL_MANUAL_SEARCH){
+                       __ps_modem_set_hook_flag(modem, cmd);
+                       tcore_user_request_set_response_hook(ur, __ps_hook_response_cb, modem);
+               }
+               free(modem_name);
+               return TCORE_HOOK_RETURN_CONTINUE;
+       }
+
+       if(modem_name)
+               free(modem_name);
+
+       co_ps_list = tcore_plugin_get_core_objects_bytype (target_plg, CORE_OBJECT_TYPE_PS);
+       if (!co_ps_list)
+               return TCORE_HOOK_RETURN_CONTINUE;
+
+       co_ps = co_ps_list->data;
+       g_slist_free (co_ps_list);
+
+       if (!co_ps)
+               return TCORE_HOOK_RETURN_CONTINUE;
+
+       if(cmd == TREQ_MODEM_POWER_ON) {
+               if(modem->powered == PS_MODEM_STATE_ONLINE) {
+                       struct tresp_modem_power_on set_power_on;
+                       memset(&set_power_on,  0, sizeof(struct tresp_modem_power_on));
+                       dbg("FLAG: 0x%x", modem->hook_flag);
+
+                       if(modem->hook_flag & PS_NETWORK_SET_POWER_LOW) {
+                               dbg("LOW power request is pending, send abort response");
+                               set_power_on.result = TCORE_RETURN_OPERATION_ABORTED;
+                               tcore_user_request_send_response(ur, TRESP_MODEM_POWER_ON,
+                                       sizeof(struct tresp_modem_power_on), &set_power_on);
+                       } else {
+                               dbg("No pending LOW power request, send success response.");
+                               set_power_on.result = TCORE_RETURN_EALREADY;
+                               tcore_user_request_send_response(ur, TRESP_MODEM_POWER_ON,
+                                       sizeof(struct tresp_modem_power_on), &set_power_on);
+                       }
+                       tcore_user_request_unref(ur);
+                       return TCORE_HOOK_RETURN_STOP_PROPAGATION;
+               }
+               return TCORE_HOOK_RETURN_CONTINUE;
+       }
+       if(FALSE == tcore_ps_any_context_activating_activated(co_ps, &value)){
+               ps_dbg_ex_co(co_modem, "No activating/activated context present");
+               /* Block PS always-on while network operations. */
+#ifdef POWER_SAVING_FEATURE_WEARABLE
+               if ((cmd != TREQ_MODEM_POWER_LOW)
+                               || (FALSE == __ps_is_any_call_in_progress(tcore_object_ref_plugin(modem->co_modem), ON_REQUEST, TNOTI_UNKNOWN))){
+                       __ps_modem_set_hook_flag(modem, cmd);
+                       tcore_user_request_set_response_hook(ur, __ps_hook_response_cb, modem);
+                       return TCORE_HOOK_RETURN_CONTINUE;
+               }
+#else
+               __ps_modem_get_mode_pref_change(modem, ur);
+               __ps_modem_set_hook_flag(modem, cmd);
+               tcore_user_request_set_response_hook(ur, __ps_hook_response_cb, modem);
+               return TCORE_HOOK_RETURN_CONTINUE;
+
+#endif
+       }
+
+       ps_dbg_ex_co(co_modem, "Value returned [%d]", value);
+       if( CONTEXT_STATE_ACTIVATED == value ) {
+               ps_dbg_ex_co(co_modem, "Activated/Activating context present need to deactivate them");
+               rv = tcore_ps_deactivate_contexts(co_ps);
+               if(rv != TCORE_RETURN_SUCCESS){
+                       ps_dbg_ex_co(co_modem, "fail to deactivation");
+                       return TCORE_HOOK_RETURN_CONTINUE;
+               }
+       } else if ( CONTEXT_STATE_ACTIVATING == value) {
+#ifdef POWER_SAVING_FEATURE_WEARABLE
+               if ((cmd != TREQ_MODEM_POWER_LOW)
+                               || (FALSE == __ps_is_any_call_in_progress(tcore_object_ref_plugin(modem->co_modem), ON_REQUEST, TNOTI_UNKNOWN))){
+                       return TCORE_HOOK_RETURN_CONTINUE;
+               }
+#else
+               if((cmd == TREQ_MODEM_SET_FLIGHTMODE) ||(cmd == TREQ_MODEM_POWER_OFF) ) {
+                       ps_dbg_ex_co(co_modem, "No need to stop these request for pdp in activating state ");
+                       return TCORE_HOOK_RETURN_CONTINUE;
+               }
+#endif
+               ps_dbg_ex_co(co_modem, "For rest command will wait for activation successful ");
+       }
+
+       if(!modem->work_queue){
+               ps_err_ex_co(co_modem, "no queue present unable to handle request");
+               return TCORE_HOOK_RETURN_CONTINUE;
+       }
+
+       job_cnt = ps_util_get_count_waiting_job(modem->work_queue, cmd);
+       if(job_cnt){
+               ps_err_ex_co(co_modem, "duplicated job for cmd(%d)", cmd);
+
+               if(cmd == TREQ_NETWORK_SEARCH){
+                       struct tresp_network_search search_rsp;
+                       memset(&search_rsp, 0, sizeof(struct tresp_network_search));
+
+                       search_rsp.result = TCORE_RETURN_OPERATION_ABORTED;
+                       search_rsp.list_count = 0;
+                       tcore_user_request_send_response(ur, TRESP_NETWORK_SEARCH,
+                               sizeof(struct tresp_network_search), &search_rsp);
+               }
+               else if(cmd == TREQ_NETWORK_SET_PLMN_SELECTION_MODE){
+                       struct tresp_network_set_plmn_selection_mode set_plmn_mode_rsp;
+                       memset(&set_plmn_mode_rsp, 0, sizeof(struct tresp_network_set_plmn_selection_mode));
+
+                       set_plmn_mode_rsp.result = TCORE_RETURN_OPERATION_ABORTED;
+                       tcore_user_request_send_response(ur, TRESP_NETWORK_SET_PLMN_SELECTION_MODE,
+                               sizeof(struct tresp_network_set_plmn_selection_mode), &set_plmn_mode_rsp);
+               }
+               else if(cmd == TREQ_NETWORK_SET_MODE){
+                       struct tresp_network_set_mode setmode_rsp;
+                       memset(&setmode_rsp, 0, sizeof(struct tresp_network_set_mode));
+
+                       setmode_rsp.result = TCORE_RETURN_OPERATION_ABORTED;
+                       tcore_user_request_send_response(ur, TRESP_NETWORK_SET_MODE,
+                               sizeof(struct tresp_network_set_mode), &setmode_rsp);
+               }
+               else if(cmd == TREQ_NETWORK_SET_CANCEL_MANUAL_SEARCH){
+                       struct tresp_network_set_cancel_manual_search search_cancel_rsp;
+                       memset(&search_cancel_rsp, 0, sizeof(struct tresp_network_set_cancel_manual_search));
+
+                       search_cancel_rsp.result = TCORE_RETURN_OPERATION_ABORTED;
+                       tcore_user_request_send_response(ur, TRESP_NETWORK_SET_CANCEL_MANUAL_SEARCH,
+                               sizeof(struct tresp_network_set_cancel_manual_search), &search_cancel_rsp);
+               }
+               else if(cmd == TREQ_NETWORK_SET_DEFAULT_DATA_SUBSCRIPTION){
+                       struct tresp_network_set_default_data_subscription default_data_rsp;
+                       memset(&default_data_rsp, 0, sizeof(struct tresp_network_set_default_data_subscription));
+
+                       default_data_rsp.result = TCORE_RETURN_OPERATION_ABORTED;
+                       tcore_user_request_send_response(ur, TRESP_NETWORK_SET_DEFAULT_DATA_SUBSCRIPTION,
+                               sizeof(struct tresp_network_set_default_data_subscription), &default_data_rsp);
+               }
+               else if (cmd == TREQ_MODEM_SET_FLIGHTMODE) {
+                       struct tresp_modem_set_flightmode set_flight_mode;
+                       memset(&set_flight_mode, 0, sizeof(struct tresp_modem_set_flightmode));
+
+                       set_flight_mode.result = TCORE_RETURN_OPERATION_ABORTED;
+                       tcore_user_request_send_response(ur, TRESP_MODEM_SET_FLIGHTMODE,
+                               sizeof(struct tresp_modem_set_flightmode), &set_flight_mode);
+
+               }
+               else if (cmd == TREQ_MODEM_POWER_OFF) {
+                       struct tresp_modem_power_off set_power_off;
+                       memset(&set_power_off,  0, sizeof(struct tresp_modem_power_off));
+
+                       set_power_off.result = TCORE_RETURN_OPERATION_ABORTED;
+                       tcore_user_request_send_response(ur, TRESP_MODEM_POWER_OFF,
+                               sizeof(struct tresp_modem_power_off), &set_power_off);
+
+               }
+               else if (cmd == TREQ_MODEM_POWER_LOW) {
+                       struct tresp_modem_power_low set_power_low;
+                       memset(&set_power_low, 0, sizeof(struct tresp_modem_power_low));
+
+                       set_power_low.result = TCORE_RETURN_OPERATION_ABORTED;
+                       tcore_user_request_send_response(ur, TRESP_MODEM_POWER_LOW,
+                               sizeof(struct tresp_modem_power_low), &set_power_low);
+
+               }
+               else if (cmd == TREQ_SIM_SET_POWERSTATE) {
+                       struct tresp_sim_set_powerstate set_power;
+                       memset(&set_power, 0, sizeof(struct tresp_sim_set_powerstate));
+
+                       set_power.result = TCORE_RETURN_OPERATION_ABORTED;
+                       tcore_user_request_send_response(ur, TRESP_SIM_SET_POWERSTATE,
+                               sizeof(struct tresp_sim_set_powerstate), &set_power);
+
+               }
+               tcore_user_request_unref(ur);
+               return TCORE_HOOK_RETURN_STOP_PROPAGATION;
+       }
+
+       ps_dbg_ex_co(co_modem, "Deactivation request is sent, wait for call disconnect notification ");
+
+       if(TREQ_NETWORK_SET_CANCEL_MANUAL_SEARCH == cmd){
+               UserRequest *ur_pending = NULL;
+               ur_pending = ps_util_pop_waiting_job(modem->work_queue, TREQ_NETWORK_SEARCH);
+
+               if(!ur_pending){
+                       ps_dbg_ex_co(co_modem, "no pendig search request");
+                       tcore_user_request_set_response_hook(ur, __ps_hook_response_cb, modem);
+                       return TCORE_HOOK_RETURN_CONTINUE;
+               }
+               else{
+                       struct tresp_network_search search_rsp;
+                       struct tresp_network_set_cancel_manual_search search_cancel_rsp;
+
+                       memset(&search_rsp, 0, sizeof(struct tresp_network_search));
+                       memset(&search_cancel_rsp, 0, sizeof(struct tresp_network_set_cancel_manual_search));
+
+                       search_rsp.list_count = 0;
+                       ps_dbg_ex_co(co_modem, "send search response to upper layer");
+                       tcore_user_request_send_response(ur_pending, TRESP_NETWORK_SEARCH, sizeof(struct tresp_network_search), &search_rsp);
+                       tcore_user_request_unref(ur_pending);
+
+                       tcore_user_request_set_response_hook(ur, __ps_hook_response_cb, modem);
+                       search_cancel_rsp.result = TCORE_RETURN_SUCCESS;
+                       tcore_user_request_send_response(ur, TRESP_NETWORK_SET_CANCEL_MANUAL_SEARCH,
+                               sizeof(struct tresp_network_set_cancel_manual_search), &search_cancel_rsp);
+
+                       return TCORE_HOOK_RETURN_STOP_PROPAGATION;
+               }
+       }
+
+       ret = ps_util_add_waiting_job(modem->work_queue, cmd , ur);
+       if(!ret){
+               ps_dbg_ex_co(co_modem, "fail to add the request to queue");
+               return TCORE_HOOK_RETURN_CONTINUE;
+       }
+
+       __ps_modem_get_mode_pref_change(modem, ur);
+       __ps_modem_set_hook_flag(modem, cmd);
+       return TCORE_HOOK_RETURN_STOP_PROPAGATION;
+}
+
+void __ps_send_pending_user_request(gpointer data)
+{
+       ps_modem_t *modem =  data;
+       GSList *co_list = NULL;
+       CoreObject *co_network = NULL;
+       CoreObject *co_sim = NULL;
+       gpointer *queue_data = NULL;
+
+       co_list = tcore_plugin_get_core_objects_bytype(tcore_object_ref_plugin(modem->co_modem),
+                       CORE_OBJECT_TYPE_NETWORK);
+
+       if (G_UNLIKELY(co_list == NULL)) {
+               return ;
+       }
+
+       co_network = (CoreObject *) co_list->data;
+       g_slist_free(co_list);
+
+       co_list = tcore_plugin_get_core_objects_bytype(tcore_object_ref_plugin(modem->co_modem),
+                       CORE_OBJECT_TYPE_SIM);
+
+       if (G_UNLIKELY(co_list == NULL)) {
+               return ;
+       }
+
+       co_sim = (CoreObject *) co_list->data;
+       g_slist_free(co_list);
+
+       ps_dbg_ex_co(co_network, "Extracting the user request from the work queue");
+
+       queue_data = g_queue_pop_head(modem->work_queue);
+       while( queue_data) {
+               struct work_queue_data *wqd = (struct work_queue_data *)queue_data ;
+               ps_dbg_ex_co(co_network, " sending Pending request [%x]", wqd ->id);
+               if(wqd->ur) {
+                       ps_dbg_ex_co(co_network, "Setting responce hook for request ");
+                       tcore_user_request_set_response_hook(wqd->ur, __ps_hook_response_cb, modem);
+
+                       switch (wqd ->id) {
+                               case TREQ_NETWORK_SEARCH :
+                               case TREQ_NETWORK_SET_MODE :
+                               case TREQ_NETWORK_SET_PLMN_SELECTION_MODE :
+                               case TREQ_NETWORK_SET_DEFAULT_DATA_SUBSCRIPTION :
+                                       tcore_object_dispatch_request(co_network, wqd->ur);
+                                       break;
+                               case TREQ_MODEM_SET_FLIGHTMODE:
+                               case TREQ_MODEM_POWER_OFF:
+                                       tcore_object_dispatch_request(modem->co_modem, wqd->ur);
+                                       break;
+                               case TREQ_MODEM_POWER_LOW:
+                               #ifdef POWER_SAVING_FEATURE_WEARABLE
+                                               __ps_check_handle_modem_off_request(modem, ON_REQUEST, TNOTI_UNKNOWN);
+                               #else
+                                       if (modem->hook_flag & PS_NETWORK_SET_POWER_LOW) {
+                                               tcore_object_dispatch_request(modem->co_modem, wqd->ur);
+                                       }
+                               #endif
+
+                                       break;
+                               case TREQ_SIM_SET_POWERSTATE:
+                                       tcore_object_dispatch_request(co_sim, wqd->ur);
+                                       break;
+                               default :
+                               ps_err_ex_co(co_network, "No expected request ");
+                       }
+               }
+
+               /* Freeing Allocated memory*/
+               free(wqd);
+               queue_data = g_queue_pop_head(modem->work_queue);
+       }
+       ps_dbg_ex_co(co_network, "All pending request sent ");
+}
+
+static enum tcore_hook_return __on_hook_call_status(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data,
+               void *user_data)
+{
+       gpointer modem = NULL;
        gpointer service = user_data;
-       TcorePsCallStatusInfo *cstatus = NULL;
-       gboolean netif_updown = FALSE;
-       gchar *ifname = NULL;
-       GSList *contexts;
-       CoreObject *co_context;
-       CoreObject *co;
-
-       dbg("Call Status event");
-       tcore_check_return_value(service != NULL, TCORE_HOOK_RETURN_STOP_PROPAGATION);
-       co = tcore_plugin_ref_core_object(plugin, CORE_OBJECT_TYPE_PS);
-
-       cstatus = (TcorePsCallStatusInfo *)data;
-       tcore_check_return_value(cstatus != NULL, TCORE_HOOK_RETURN_STOP_PROPAGATION);
-
-       dbg("Context ID: [%d] Call State: [%s]", cstatus->context_id,
-               ((cstatus->state == TCORE_PS_CALL_STATE_CTX_DEFINED) ? "DEFINED"
-               : (cstatus->state == TCORE_PS_CALL_STATE_CONNECTED) ? "CONNECTED"
-               : "NOT CONNECTED"));
-
-       if (cstatus->state == TCORE_PS_CALL_STATE_CTX_DEFINED)
-               goto out;
-       else if (cstatus->state == TCORE_PS_CALL_STATE_CONNECTED)
-               netif_updown = TRUE;
-       else if (cstatus->state == TCORE_PS_CALL_STATE_NOT_CONNECTED)
-               netif_updown = FALSE;
-
-       /* Refer to context */
-       tcore_ps_ref_context_by_id(co, cstatus->context_id, &contexts);
-       for (; contexts != NULL; contexts = g_slist_next(contexts)) {
-               co_context = contexts->data;
-               if (co_context == NULL) {
-                       dbg("Context is NULL");
-                       continue;
-               }
-
-               /* Get Interface name */
-               tcore_context_get_ipv4_devname(co_context, &ifname);
-               if (ifname == NULL) {
-                       dbg("Interface name is NULL");
-                       continue;
-               }
-
-               /* Setup network interface */
-               if (tcore_util_netif(ifname, netif_updown)
-                               != TEL_RETURN_SUCCESS) {
-                       g_slist_free(contexts);
-                       err("Failed to setup interface - Interface name: [%s] Interface Status: [%s]",
-                               ifname, (netif_updown ? "UP" : "DOWN"));
-               }
-               dbg("Successfully setup interface - Interface name: [%s] Interface Status: [%s]",
-                       ifname, (netif_updown ? "UP" : "DOWN"));
-       }
-out:
-       //send activation event / deactivation event
-       if (cstatus->state == TCORE_PS_CALL_STATE_CTX_DEFINED) {
-               /* OK: PDP define is complete. */
-               dbg("Service - [READY TO ACTIVATE]");
+       CoreObject *co_network;
+       gpointer co_ps = NULL;
+       GSList *co_list;
+
+       gboolean b_data_allowed = FALSE;
+       gboolean b_roaming_checker = TRUE;
+       gboolean b_mms_checker = FALSE;
+       gboolean b_ims_checker = FALSE;
+
+       struct tnoti_ps_call_status *cstatus = NULL;
+
+       dbg("call status event");
+       g_return_val_if_fail(service != NULL, TCORE_HOOK_RETURN_STOP_PROPAGATION);
+
+       co_network = _ps_service_ref_co_network(service);
+       cstatus = (struct tnoti_ps_call_status *) data;
+       co_ps = (CoreObject *)_ps_service_ref_co_ps(service);
+       if (co_ps != source) {
+               ps_warn_ex_co(co_network, "Received notification for different Subscription - neglecting the notification!!!");
+               return TCORE_HOOK_RETURN_CONTINUE;
+       }
+
+       modem = _ps_service_ref_modem(service);
+       if(!modem){
+               ps_err_ex_co(co_network, "modem does not exist");
+               return TCORE_HOOK_RETURN_CONTINUE;
+       }
+
+       b_data_allowed = _ps_modem_get_data_allowed(modem);
+
+       co_list = tcore_ps_ref_context_by_id(co_ps, cstatus->context_id);
+       for (; co_list; co_list = co_list->next) {
+               CoreObject *co_context = NULL;
+               enum co_context_role role = CONTEXT_ROLE_UNKNOWN;
+
+               co_context = co_list->data;
+               role = tcore_context_get_role(co_context);
+
+               if( role == CONTEXT_ROLE_MMS || role == CONTEXT_ROLE_PREPAID_MMS){
+                       b_mms_checker = TRUE;
+                       break;
+               }
+               if( role == CONTEXT_ROLE_IMS || role == CONTEXT_ROLE_IMS_EMERGENCY){
+                       b_ims_checker = TRUE;
+                       break;
+               }
+       }
+
+#if !defined(TIZEN_SUPPORT_MMS_CONNECT_FORCE)
+               ps_dbg_ex_co(co_network, "csc runtime feature disabled");
+               b_mms_checker = FALSE;
+#endif
+
+       if( (_ps_modem_get_roaming(modem)) && !(_ps_modem_get_data_roaming_allowed(modem)) ){
+               ps_dbg_ex_co(co_network, "roaming network is not allowed");
+               b_roaming_checker = FALSE;
+       }
+
+       ps_dbg_ex_co(co_network, "data_allowed(%d) call status event cid(%d) state(%d) reason(%d)",
+                       b_data_allowed, cstatus->context_id, cstatus->state, cstatus->result);
+
+       if( !b_roaming_checker || (!b_data_allowed && !b_mms_checker && !b_ims_checker) ){
+               ps_dbg_ex_co(co_network, "mismatched: roaming checker(%d) data_allowed(%d) mms_checker(%d) b_ims_checker(%d)",
+                        b_roaming_checker, b_data_allowed, b_mms_checker, b_ims_checker);
+
+               if(cstatus->state == PS_CALL_STATE_RESULT_OK) {
+                       _ps_service_set_connected(service, cstatus, FALSE);
+                       tcore_ps_set_cid_active(co_ps, cstatus->context_id, FALSE);
+                       return TCORE_HOOK_RETURN_CONTINUE;
+               }
+               else if(cstatus->state == PS_CALL_STATE_RESULT_CONNECT) {
+                       _ps_service_set_connected(service, cstatus, TRUE);
+                       _ps_service_disconnect_contexts(service);
+                       return TCORE_HOOK_RETURN_CONTINUE;
+               }
+       }
+
+       ps_dbg_ex_co(co_network, "service(%p) status(%d)", service, cstatus->state);
+       if(cstatus->state == PS_CALL_STATE_RESULT_OK) {         //DEFINE
                _ps_service_set_ps_defined(service, TRUE, cstatus->context_id);
-               //_ps_service_connect_default_context(service);
-       } else if (cstatus->state == TCORE_PS_CALL_STATE_CONNECTED) {
-               /* CONNECTED */
-               dbg("Service - [ACTIVATED]");
-               _ps_service_set_connected(service, cstatus->context_id, TRUE);
-       } else if (cstatus->state == TCORE_PS_CALL_STATE_NOT_CONNECTED) {
-               /* NO CARRIER */
-               _ps_service_set_ps_defined(service, FALSE, cstatus->context_id);
-               _ps_service_set_connected(service, cstatus->context_id, FALSE);
        }
+       else if(cstatus->state == PS_CALL_STATE_RESULT_CONNECT) {       //CONNECTED
+               TReturn rv;
+
+               if (tcore_ps_get_cid_active(co_ps, cstatus->context_id) == FALSE) {
+                       ps_dbg_ex_co(co_network, "DDS scenario");
+
+                       /* De-activate context */
+                       rv = tcore_ps_deactivate_contexts(co_ps);
+                       if(rv != TCORE_RETURN_SUCCESS){
+                               ps_dbg_ex_co(co_network, "fail to deactivation");
+                               return TCORE_HOOK_RETURN_CONTINUE;
+                       }
+               }
+               else {
+                       _ps_service_set_connected(service, cstatus, TRUE);
+                       tcore_ps_set_cid_connected(co_ps, cstatus->context_id, TRUE);
+
+                       if (g_queue_get_length((GQueue *)_ps_modem_ref_work_queue(modem)) || (_ps_modem_get_reset_profile(modem) == TRUE)) {
+                               ps_dbg_ex_co(co_network, "Special request present in queue ");
+
+                               rv = tcore_ps_deactivate_contexts(co_ps);
+                               if(rv != TCORE_RETURN_SUCCESS){
+                                       ps_dbg_ex_co(co_network,  "fail to deactivation");
+                                       return TCORE_HOOK_RETURN_CONTINUE;
+                               }
+                       }
+               }
+       }
+       else if(cstatus->state == PS_CALL_STATE_RESULT_NO_CARRIER) {    //DISCONNECTED-NO CARRIER
+               gpointer def_context = NULL;
+               unsigned char def_cid = 0;
+               int value = 0;
+               gboolean retry = TRUE;
+
+               //retry = __ps_check_pdp_permanent_reject_cause(cstatus->result);
+               /* if retry not permitted by network */
+               //if(FALSE == retry) 
+                       ps_dbg_ex_co(co_network, "DO NOT RETRY NETWORK CONNECTION AUTOMATICALLY");
+                       ps_dbg_ex_co(co_network, "permanent reject cause (%d)", cstatus->result);
+
+                       def_context = _ps_service_return_default_context(service, CONTEXT_ROLE_INTERNET);
+                       if(def_context){
+                               gpointer co_context = NULL;
+                               co_context = _ps_context_ref_co_context(def_context);
+                               def_cid = tcore_context_get_id(co_context);
+                       }
+
+               _ps_service_set_ps_defined(service, FALSE, cstatus->context_id);
+               tcore_ps_set_cid_active(co_ps, cstatus->context_id, FALSE);
+               tcore_ps_set_cid_connected(co_ps, cstatus->context_id, FALSE);
+               _ps_service_set_connected(service, cstatus, FALSE);
+
+               if(FALSE == tcore_ps_any_context_activating_activated(co_ps, &value)){
+                       ps_dbg_ex_co(co_network, "No open connections, publish disconnected signal");
+
+                       /* Handle any pending request if present */
+                       modem = _ps_service_ref_modem(service);
+                       __ps_send_pending_user_request(modem);
+
+                       /* Ensured that set_reset_profile is always done default thread's context */
+                       if (_ps_modem_get_reset_profile(modem) == TRUE) {
+                               /* Initiate Reset Profile */
+                               ps_dbg_ex_co(co_network, "Profiles are being reset");
+                               /* Shouldn't invoke set profile directly, as it will remove hooks registered to server while being hook callback*/
+                               if (NULL == _ps_modem_get_profile_reset_gsource(modem)) {
+                                       GSource *gsource = NULL;
+                                       gsource = ps_util_gsource_dispatch(g_main_context_default(), G_PRIORITY_LOW, (GSourceFunc)_ps_modem_initiate_reset_profile, modem) ;
+                                       _ps_modem_set_profile_reset_gsource(modem, gsource);
+                               }
+                       }
+               }
+               ps_dbg_ex_co(co_network, "any context activating or activated [%d]", value);
+               if(FALSE == retry) {
+                       if(cstatus->context_id == def_cid){
+                               _ps_service_reset_connection_timer(def_context);
+                       }
+               }
+       } // disconnected case
+
        return TCORE_HOOK_RETURN_CONTINUE;
 }
 
-static TcoreHookReturn __on_hook_ipconfiguration(TcorePlugin *plugin,
-       TcoreNotification command, guint data_len, void *data, void *user_data)
+static enum tcore_hook_return __on_hook_call_status_0(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data,
+               void *user_data)
+{
+       return __on_hook_call_status(s, source, command, data_len, data, user_data);
+}
+
+static enum tcore_hook_return __on_hook_call_status_1(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data,
+               void *user_data)
+{
+       return __on_hook_call_status(s, source, command, data_len, data, user_data);
+}
+
+
+static enum tcore_hook_return __on_hook_session_data_counter_0(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data,
+               void *user_data)
 {
        gpointer service = user_data;
-       TcorePsPdpIpConf *devinfo = NULL;
+       g_return_val_if_fail(service != NULL, TCORE_HOOK_RETURN_STOP_PROPAGATION);
+
+       ps_dbg_ex_co(_ps_service_ref_co_network(service), "session data counter event");
 
-       tcore_check_return_value(service != NULL, TCORE_HOOK_RETURN_STOP_PROPAGATION);
+       return TCORE_HOOK_RETURN_CONTINUE;
+}
 
-       devinfo = (TcorePsPdpIpConf *) data;
+static enum tcore_hook_return __on_hook_session_data_counter_1(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data,
+               void *user_data)
+{
+       gpointer service = user_data;
+       g_return_val_if_fail(service != NULL, TCORE_HOOK_RETURN_STOP_PROPAGATION);
 
-       dbg("IP Configuration event");
-       _ps_service_set_context_info(service, devinfo);
+       ps_dbg_ex_co(_ps_service_ref_co_network(service), "session data counter event");
 
        return TCORE_HOOK_RETURN_CONTINUE;
 }
 
-static TcoreHookReturn __on_hook_powered(TcorePlugin *plugin,
-       TcoreNotification command, guint data_len, void *data, void *user_data)
+static enum tcore_hook_return __on_hook_ipconfiguration(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data,
+               void *user_data)
 {
-       gpointer modem = user_data;
-       TelModemPowerStatus *modem_power = NULL;
+       gpointer service = user_data;
+       CoreObject *co_ps = NULL;
+       CoreObject *co_network = NULL;
+       struct tnoti_ps_pdp_ipconfiguration *devinfo = NULL;
+       char ipv4[16], ipv4_dns_1[16], ipv4_dns_2[16];
 
-       gboolean power = FALSE;
+       g_return_val_if_fail(service != NULL, TCORE_HOOK_RETURN_STOP_PROPAGATION);
 
-       dbg("Powered event");
+       co_network = _ps_service_ref_co_network(service);
+       devinfo = (struct tnoti_ps_pdp_ipconfiguration *) data;
+       co_ps = (CoreObject *)_ps_service_ref_co_ps(service);
+       if (co_ps != source) {
+               ps_warn_ex_co(co_network, "Received notification for different Subscription - neglecting the notification!!!");
+               return TCORE_HOOK_RETURN_CONTINUE;
+       }
 
-       tcore_check_return_value(modem != NULL, TCORE_HOOK_RETURN_STOP_PROPAGATION);
+       ps_dbg_ex_co(co_network, "ip configuration event");
+
+       /*
+        * In case IPv4 address is available and DNS address
+        * is NOT available, set -
+        * DNS 1 - Google DNS
+        * DNS 2 - Open DNS
+        */
+       snprintf(ipv4, 16, "%d.%d.%d.%d",
+               devinfo->ip_address[0], devinfo->ip_address[1],
+               devinfo->ip_address[2], devinfo->ip_address[3]);
+       if (!g_str_equal(ipv4, "0.0.0.0")) {
+               snprintf(ipv4_dns_1, 16, "%d.%d.%d.%d",
+                       devinfo->primary_dns[0], devinfo->primary_dns[1],
+                       devinfo->primary_dns[2], devinfo->primary_dns[3]);
+               if (g_str_equal(ipv4_dns_1, "0.0.0.0")) {
+                       err("[IPV4]primary dns address is 0");
+
+                       //google dns 1st
+                       devinfo->primary_dns[0] = 8;
+                       devinfo->primary_dns[1] = 8;
+                       devinfo->primary_dns[2] = 8;
+                       devinfo->primary_dns[3] = 8;
+               }
 
-       modem_power = (TelModemPowerStatus *)data;
-       dbg("Modem Power state: [%s]",
-               ((*modem_power == TEL_MODEM_POWER_ON) ? "ONLINE"
-               : (*modem_power == TEL_MODEM_POWER_OFF) ? "OFFLINE" : "ERROR"));
+               snprintf(ipv4_dns_2, 16, "%d.%d.%d.%d",
+                       devinfo->secondary_dns[0], devinfo->secondary_dns[1],
+                       devinfo->secondary_dns[2], devinfo->secondary_dns[3]);
+               if (g_str_equal(ipv4_dns_2, "0.0.0.0")) {
+                       //open dns 2nd
+                       err("[IPV4]secondary dns address is 0");
+                       devinfo->secondary_dns[0] = 208;
+                       devinfo->secondary_dns[1] = 67;
+                       devinfo->secondary_dns[2] = 222;
+                       devinfo->secondary_dns[3] = 222;
+               }
+       }
 
-       if ( *modem_power == TEL_MODEM_POWER_ON )
-               power = TRUE;
-       else
-               power = FALSE;
+       /*
+        * In case IPv6 address is available and DNS address
+        * is NOT available, set -
+        * DNS 1 - Google DNS
+        * DNS 2 - Open DNS
+        */
+       if (devinfo->ipv6_address != NULL) {
+               if (devinfo->ipv6_primary_dns == NULL) {
+                       err("[IPV6]primary dns address is 0");
+                       devinfo->ipv6_primary_dns = g_strdup("2001:4860:4860::8888");
 
-       /* Process modem Power state */
-       _ps_modem_processing_power_enable(modem, power);
+               }
+               if (devinfo->ipv6_secondary_dns == NULL) {
+                       err("[IPV6]secondary dns address is 0");
+                       devinfo->ipv6_secondary_dns = g_strdup("2620:0:ccc::2");
+               }
+       }
+
+       _ps_service_set_context_info(service, devinfo);
 
        return TCORE_HOOK_RETURN_CONTINUE;
 }
 
-static TcoreHookReturn __on_hook_flight(TcorePlugin *plugin,
-       TcoreNotification command, guint data_len, void *data, void *user_data)
+
+static enum tcore_hook_return __on_hook_ipconfiguration_0(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data,
+               void *user_data)
+{
+       return __on_hook_ipconfiguration(s, source, command, data_len, data, user_data);
+}
+
+static enum tcore_hook_return __on_hook_ipconfiguration_1(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data,
+               void *user_data)
+{
+       return __on_hook_ipconfiguration(s, source, command, data_len, data, user_data);
+}
+
+static enum tcore_hook_return __on_hook_powered(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data, void *user_data)
 {
        gpointer modem = user_data;
-       gboolean *flight_mode = NULL;
+       CoreObject * co_modem;
+       struct tnoti_modem_power *modem_power = NULL;
+       int  power = PS_MODEM_STATE_UNKNOWN;
+
+       CORE_OBJECT_CHECK_RETURN(source, CORE_OBJECT_TYPE_MODEM, TCORE_HOOK_RETURN_CONTINUE);
+
+       g_return_val_if_fail(modem != NULL, TCORE_HOOK_RETURN_CONTINUE);
+       co_modem = _ps_modem_ref_co_modem(modem);
+       if(source != co_modem) {
+               ps_warn_ex_co(co_modem, "Powered event for other subscription ");
+               return TCORE_HOOK_RETURN_CONTINUE;
+       }
+
+       modem_power = (struct tnoti_modem_power *)data;
+       g_return_val_if_fail(modem_power != NULL, TCORE_HOOK_RETURN_CONTINUE);
+       ps_dbg_ex_co(co_modem, "powered event called: state [%d]", modem_power->state);
+
+       switch(modem_power->state) {
+               case MODEM_STATE_ONLINE:
+               case MODEM_STATE_RESUME: {
+                       power = PS_MODEM_STATE_ONLINE;
+               } break;
+               case MODEM_STATE_LOW: {
+                       power = PS_MODEM_STATE_LOW;
+               } break;
+               case MODEM_STATE_ERROR:
+               case MODEM_STATE_OFFLINE:
+               case MODEM_STATE_RESET: {
+                       /* Reset hook flag in any present */
+                       __ps_modem_cp_reset_handler(modem);
+
+                       power = PS_MODEM_STATE_OFFLINE;
+               } break;
+               default: {
+                       ps_warn_ex_co(co_modem,"Unhandled modem power event." );
+               } break;
+       }
+
+       if(power != PS_MODEM_STATE_UNKNOWN)
+               _ps_modem_processing_power_enable(modem, power);
+
+       return TCORE_HOOK_RETURN_CONTINUE;
+}
+
+
+static enum tcore_hook_return __on_hook_powered_0(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data, void *user_data)
+{
+       return __on_hook_powered(s, source,     command, data_len, data, user_data);
+}
+
+static enum tcore_hook_return __on_hook_powered_1(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data, void *user_data)
+{
+       return __on_hook_powered(s, source,     command, data_len, data, user_data);
+}
 
-       dbg("Flight mode event");
+static enum tcore_hook_return __on_hook_flight(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data, void *user_data)
+{
+       gpointer modem = user_data;
+       CoreObject * co_modem = _ps_modem_ref_co_modem(modem);
+       struct tnoti_modem_flight_mode *modem_flight = NULL;
 
-       tcore_check_return_value(modem != NULL, TCORE_HOOK_RETURN_STOP_PROPAGATION);
+       g_return_val_if_fail(modem != NULL, TCORE_HOOK_RETURN_CONTINUE);
+       if(source != co_modem) {
+               ps_warn_ex_co(co_modem, "flight mode event for other subscription ");
+               return TCORE_HOOK_RETURN_CONTINUE;
+       }
 
-       flight_mode = (gboolean *)data;
-       dbg("Flight mode: [%s]", (*flight_mode ? "ON" : "OFF"));
+       ps_dbg_ex_co(co_modem, "flight mode event called");
 
-       /* Process Flight mode event */
-       _ps_modem_processing_flight_mode(modem, *flight_mode);
+       modem_flight = (struct tnoti_modem_flight_mode *)data;
+       _ps_modem_processing_flight_mode(modem, modem_flight->enable);
 
        return TCORE_HOOK_RETURN_CONTINUE;
 }
 
-static TcoreHookReturn __on_hook_net_register(TcorePlugin *plugin,
-       TcoreNotification command, guint data_len, void *data, void *user_data)
+static enum tcore_hook_return __on_hook_flight_0(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data, void *user_data)
+{
+       return __on_hook_flight(s, source, command, data_len, data, user_data);
+}
+
+static enum tcore_hook_return __on_hook_flight_1(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data, void *user_data)
+{
+       return __on_hook_flight(s, source, command, data_len, data, user_data);
+}
+
+static enum tcore_hook_return __on_hook_net_register(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data,
+               void *user_data)
 {
        gpointer service = user_data;
        gboolean ps_attached = FALSE;
-       TelNetworkRegStatusInfo *registration_status;
-       gboolean roaming_status = FALSE;
-
+       struct tnoti_network_registration_status *regist_status;
+       CoreObject *co_network;
        dbg("network register event called");
-       tcore_check_return_value(service != NULL, TCORE_HOOK_RETURN_STOP_PROPAGATION);
 
-       registration_status = (TelNetworkRegStatusInfo *)data;
-       switch (registration_status->ps_status) {
-       case TEL_NETWORK_REG_STATUS_ROAMING:
-               roaming_status = TRUE;
-       case TEL_NETWORK_REG_STATUS_REGISTERED: /* FALLTHROUGH */
+       g_return_val_if_fail(service != NULL, TCORE_HOOK_RETURN_CONTINUE);
+
+
+       co_network = (CoreObject *)_ps_service_ref_co_network(service);
+       if (co_network != source) {
+               ps_dbg_ex_co(co_network, "Received notification for different Subscription - neglecting the notification!!!");
+               return TCORE_HOOK_RETURN_CONTINUE;
+       }
+
+       regist_status = (struct tnoti_network_registration_status *) data;
+       if (regist_status->ps_domain_status == NETWORK_SERVICE_DOMAIN_STATUS_FULL)
                ps_attached = TRUE;
-       break;
-       case TEL_NETWORK_REG_STATUS_DENIED: /* FALLTHROUGH */
-       case TEL_NETWORK_REG_STATUS_SEARCHING: /* FALLTHROUGH */
-       case TEL_NETWORK_REG_STATUS_UNKNOWN: /* FALLTHROUGH */
-       case TEL_NETWORK_REG_STATUS_UNREGISTERED: /* FALLTHROUGH */
-       default:
-               dbg("Network PS Status: [%d]", registration_status->ps_status);
-       break;
-       }
-
-       /*
-        * Roaming status infered from CS Status is also applicable
-        * if PS Status doesn't communicate the same.
-        */
-       if (!roaming_status
-                       && (registration_status->cs_status
-                       == TEL_NETWORK_REG_STATUS_ROAMING))
-               roaming_status = TRUE;
-
-       /* Set Roaming Status */
-       _ps_modem_set_roaming(_ps_service_ref_modem(service), roaming_status);
-
-       /* Process Network Registration event */
-       _ps_service_processing_network_event(service, ps_attached, roaming_status);
-
-       /* Set AcT */
-       dbg("act(%d)", registration_status->act);
-       _ps_service_set_access_technology(service, registration_status->act);
+
+       _ps_modem_set_roaming(_ps_service_ref_modem(service), regist_status->roaming_status);
+       _ps_service_processing_network_event(service, ps_attached, regist_status->roaming_status);
 
        return TCORE_HOOK_RETURN_CONTINUE;
 }
 
-static TcoreHookReturn __on_hook_sim_init(TcorePlugin *plugin,
-       TcoreNotification command, guint data_len, void *data, void *user_data)
+static enum tcore_hook_return __on_hook_net_register_0(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data,
+               void *user_data)
+{
+       return __on_hook_net_register(s, source, command, data_len, data, user_data);
+}
+
+static enum tcore_hook_return __on_hook_net_register_1(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data,
+               void *user_data)
+{
+       return __on_hook_net_register(s, source, command, data_len, data, user_data);
+}
+
+static enum tcore_hook_return __on_hook_net_change(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data,
+               void *user_data)
 {
-       TelSimCardStatusInfo *sim_data;
-       CoreObject *co_sim;
+       gpointer service = user_data;
+       struct tnoti_network_change *network_change;
+       CoreObject *co_network;
+       dbg("network change event called");
+
+       g_return_val_if_fail(service != NULL, TCORE_HOOK_RETURN_CONTINUE);
+
+       co_network = (CoreObject *)_ps_service_ref_co_network(service);
+       if (co_network != source) {
+               ps_dbg_ex_co(co_network, "Received notification for different Subscription - neglecting the notification!!!");
+               return TCORE_HOOK_RETURN_CONTINUE;
+       }
 
+       network_change = (struct tnoti_network_change *) data;
+       ps_dbg_ex_co(co_network, "plmn(%s) act(%d)", network_change->plmn, network_change->act);
+       _ps_service_set_access_technology(service, network_change->act);
 
-       dbg("sim init event called");
-       tcore_check_return_value(user_data != NULL, TCORE_HOOK_RETURN_STOP_PROPAGATION);
+       return TCORE_HOOK_RETURN_CONTINUE;
+}
 
-       co_sim = tcore_plugin_ref_core_object(plugin, CORE_OBJECT_TYPE_SIM);
+static enum tcore_hook_return __on_hook_net_change_0(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data,
+               void *user_data)
+{
+       return __on_hook_net_change(s, source, command, data_len, data, user_data);
+}
 
-       sim_data = (TelSimCardStatusInfo *)data;
-       dbg("SIM status: [0x%02x]", sim_data->status);
+static enum tcore_hook_return __on_hook_net_change_1(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data,
+               void *user_data)
+{
+       return __on_hook_net_change(s, source, command, data_len, data, user_data);
+}
 
-       if( sim_data->status == TEL_SIM_STATUS_SIM_INIT_COMPLETED){
-               TelSimImsiInfo *imsi = NULL;
-               char plmn[(TEL_SIM_MCC_MNC_LEN_MAX * 2) + 1] = {0,}; //mcc+mnc
+static enum tcore_hook_return __on_hook_net_restricted_state(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data,
+               void *user_data)
+{
+       gpointer service = user_data;
+       struct tnoti_network_restricted_state *network_restricted;
+       CoreObject *co_network;
+       dbg("network restricted event called");
 
-               tcore_sim_get_imsi(co_sim, &imsi);
-               strncpy(plmn, imsi->mcc,strlen( imsi->mcc));
-               strcat(plmn, imsi->mnc);
+       g_return_val_if_fail(service != NULL, TCORE_HOOK_RETURN_CONTINUE);
 
-               _ps_modem_processing_sim_complete((gpointer)user_data, TRUE, plmn);
-               g_free(imsi);
+       co_network = (CoreObject *)_ps_service_ref_co_network(service);
+       if (co_network != source) {
+               ps_warn_ex_co(co_network, "Received notification for different Subscription - neglecting the notification!!!");
+               return TCORE_HOOK_RETURN_CONTINUE;
        }
 
+       network_restricted = (struct tnoti_network_restricted_state *) data;
+       ps_dbg_ex_co(co_network, "network restricted state(%d)", network_restricted->restricted_state);
+
+       _ps_service_set_restricted(service, ((network_restricted->restricted_state & NETWORK_RESTRICTED_STATE_PS_ALL) ? TRUE : FALSE));
+
        return TCORE_HOOK_RETURN_CONTINUE;
 }
 
+static enum tcore_hook_return __on_hook_net_restricted_state_0(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data,
+               void *user_data)
+{
+       return __on_hook_net_restricted_state(s, source,command, data_len, data, user_data);
+}
+
+
+static enum tcore_hook_return __on_hook_net_restricted_state_1(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data,
+               void *user_data)
+{
+       return __on_hook_net_restricted_state(s, source,command, data_len, data, user_data);
+}
+
+
+static enum tcore_hook_return __on_hook_sim_init(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data, void *user_data)
+{
+       struct tnoti_sim_status *sim_data;
+       ps_modem_t *modem = user_data;
+       CoreObject * co_modem = _ps_modem_ref_co_modem(modem);
+       gchar *cp_name, *source_cp_name;
+       ps_dbg_ex_co(co_modem, "sim init event called");
+
+       g_return_val_if_fail(user_data != NULL, TCORE_HOOK_RETURN_CONTINUE);
+
+       cp_name = _ps_modem_ref_cp_name(modem);
+       source_cp_name = (gchar *)tcore_server_get_cp_name_by_plugin(tcore_object_ref_plugin(source));
+       if (g_strcmp0(cp_name, source_cp_name) != 0) {
+               ps_warn_ex_co(co_modem, "Received notification for different Subscription - neglecting the notification!!!");
+               return TCORE_HOOK_RETURN_CONTINUE;
+       }
+
+
+       sim_data = (struct tnoti_sim_status *)data;
+       ps_dbg_ex_co(co_modem, "sim status is (%d)", sim_data->sim_status);
+
+       switch (sim_data->sim_status) {
+               case SIM_STATUS_INIT_COMPLETED: {
+                       struct tel_sim_imsi *sim_imsi = NULL;
+                       enum tel_sim_type sim_type = SIM_TYPE_UNKNOWN;
+                       sim_type = tcore_sim_get_type(source);
+
+                       if(sim_type == SIM_TYPE_NVSIM) {
+                               dbg("initial boot from CDMA network.");
+                               _ps_modem_processing_sim_complete( (gpointer)user_data, TRUE, PS_CDMA_DUMMY_PROFILE_PLMN);
+                       } else {
+                               sim_imsi = tcore_sim_get_imsi(source);
+                               _ps_modem_processing_sim_complete((gpointer)user_data, TRUE, (gchar *)sim_imsi->plmn);
+
+                               g_free(sim_imsi);
+                       }
+               } break;
+
+               case SIM_STATUS_CARD_ERROR:                     /* FALLTHROUGH */
+               case SIM_STATUS_CARD_REMOVED:           /* FALLTHROUGH */
+               case SIM_STATUS_CARD_CRASHED:           /* FALLTHROUGH */
+               case SIM_STATUS_CARD_POWEROFF: {
+                       /* Set SIM complete FALSE, operator is not required */
+                       _ps_modem_processing_sim_complete((gpointer)user_data, FALSE, NULL);
+
+                       /* TODO: Handle CDMA specific case */
+               } break;
+
+               default: {
+                       ps_dbg_ex_co(co_modem,  "Unhandled SIM state: [%d]", sim_data->sim_status);
+               } break;
+       }
+
+       return TCORE_HOOK_RETURN_CONTINUE;
+}
+
+#ifdef POWER_SAVING_FEATURE_WEARABLE
+static gboolean __ps_is_any_call_in_progress(TcorePlugin *plugin, __ps_call_flow_type type, enum tcore_notification_command command)
+{
+       GSList *list = 0;
+       CoreObject *o = 0;
+       int total_call_cnt = 0;
+
+       gboolean call_in_progress = FALSE;
+
+       list = tcore_plugin_get_core_objects_bytype(plugin, CORE_OBJECT_TYPE_CALL);
+       if ( !list ) {
+               /* call_in_progress = FALSE; */
+               err("[ error ] co_list : 0");
+               return call_in_progress;
+       }
+
+       o = (CoreObject *)list->data;
+       g_slist_free(list);
+
+       total_call_cnt = tcore_call_object_total_length(o);
+       dbg("totall call cnt (%d)", total_call_cnt);
+
+       if(((type == ON_REQUEST || type == ON_NON_CALL_NOTI_HOOK) && total_call_cnt !=  0)
+               || ((type == ON_CALL_NOTI_HOOK)
+               && ((command != TNOTI_CALL_STATUS_IDLE) || (total_call_cnt > 1))))      {
+               dbg("call is still connected");
+               call_in_progress = TRUE;
+       }else {
+               dbg("No call is in progress");
+       }
+
+       return call_in_progress;
+}
+
+
+/* Check for pending TREQ_MODEM_POWER_OFF request */
+void __ps_check_handle_modem_off_request(gpointer data, __ps_call_flow_type type,enum tcore_notification_command command)
+{
+       ps_modem_t *modem = data;
+
+       if (!modem) {
+               return;
+       }
+
+       if (modem->hook_flag & PS_NETWORK_SET_POWER_LOW) {
+               UserRequest *ur = NULL;
+               ur = ps_util_pop_waiting_job(modem->work_queue, TREQ_MODEM_POWER_LOW);
+               if (ur) {
+                       gboolean call_in_progress;
+                       dbg("Sending Pending SET POWER OFF");
+
+                       /* Checking if any voice or MMS is in progress, if so, delay Modem power off.
+                          Need to hook on both voice call status and MMS profile de-activation.
+                       */
+                       call_in_progress = __ps_is_any_call_in_progress(tcore_object_ref_plugin(modem->co_modem), type, command);
+
+                       if (call_in_progress) {
+                               gboolean ret;
+                               /* add to the waiting queue and continue and wait till there is no call or MMS */
+                               ret = ps_util_add_waiting_job(modem->work_queue, TREQ_MODEM_POWER_LOW , ur);
+                               if(!ret) {
+                                       err("fail to add the request to queue");
+                                       tcore_user_request_set_response_hook(ur, __ps_hook_response_cb, modem);
+                                       if(TCORE_RETURN_SUCCESS != tcore_object_dispatch_request(modem->co_modem, ur)) {
+                                               __ps_send_ur_dispatch_failure_response(ur, TRESP_MODEM_POWER_LOW);
+                                               modem->hook_flag &= PS_NETWORK_RESET_SET_POWER_LOW_FLAG;
+
+                                       }
+                               }
+                       } else  {
+                               tcore_user_request_set_response_hook(ur, __ps_hook_response_cb, modem);
+                               if(TCORE_RETURN_SUCCESS != tcore_object_dispatch_request(modem->co_modem, ur)) {
+                                       __ps_send_ur_dispatch_failure_response(ur, TRESP_MODEM_POWER_LOW);
+                                       modem->hook_flag &= PS_NETWORK_RESET_SET_POWER_LOW_FLAG;
+                               }
+                       }
+               }
+       }else {
+               dbg("No pending TREQ_MODEM_POWER_LOW reqeust");
+       }
+}
+
+static enum tcore_hook_return __on_hook_voice_call_status(Server *s, CoreObject *co_call,
+               enum tcore_notification_command command, unsigned int data_len, void *data, void *user_data)
+{
+       __ps_check_handle_modem_off_request(user_data,ON_CALL_NOTI_HOOK,command);
+       return TCORE_HOOK_RETURN_CONTINUE;
+}
+#endif
+
+static enum tcore_hook_return __on_hook_sim_init_0(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data, void *user_data)
+{
+       return  __on_hook_sim_init(s, source, command,  data_len, data, user_data);
+}
+
+static enum tcore_hook_return __on_hook_sim_init_1(Server *s, CoreObject *source,
+               enum tcore_notification_command command, unsigned int data_len, void *data, void *user_data)
+{
+       return  __on_hook_sim_init(s, source, command,  data_len, data, user_data);
+}
+
+void _ps_get_network_mode(gpointer data)
+{
+       UserRequest *ur = NULL;
+       ps_modem_t *modem =  data;
+
+       GSList *co_list = NULL;
+       CoreObject *co_network = NULL;
+
+       ps_dbg_ex_co(_ps_modem_ref_co_modem(modem), "network get mode by data allowed option");
+
+       co_list = tcore_plugin_get_core_objects_bytype(tcore_object_ref_plugin(modem->co_modem),
+                       CORE_OBJECT_TYPE_NETWORK);
+
+       if (G_UNLIKELY(co_list == NULL)) {
+               return ;
+       }
+
+       co_network = (CoreObject *) co_list->data;
+
+       ur = tcore_user_request_new(NULL, NULL);
+       tcore_user_request_set_data(ur, 0, NULL);
+       tcore_user_request_set_command(ur, TREQ_NETWORK_GET_MODE);
+       tcore_user_request_set_response_hook(ur, __ps_hook_response_cb, modem);
+
+       __ps_modem_set_hook_flag(modem, TREQ_NETWORK_GET_MODE);
+
+       if(TCORE_RETURN_SUCCESS != tcore_object_dispatch_request(co_network, ur)) {
+               err("Failed to dispatch ");
+               __ps_send_ur_dispatch_failure_response(ur,TRESP_NETWORK_GET_MODE);
+               modem->hook_flag &= PS_NETWORK_RESET_GET_MODE_FLAG;
+       }
+       g_slist_free(co_list);
+
+       return;
+}
+
 gboolean _ps_hook_co_modem_event(gpointer modem)
 {
+       Server *s = NULL;
+       TcorePlugin *p;
        CoreObject *co_modem;
-       tcore_check_return_value(modem != NULL, FALSE);
+       const char *modem_name = NULL;
+       g_return_val_if_fail(modem != NULL, FALSE);
 
-       dbg("Hooking modem and sim events");
+       p = _ps_modem_ref_plugin(modem);
+       s = tcore_plugin_ref_server(p);
        co_modem = _ps_modem_ref_co_modem(modem);
 
-       tcore_plugin_add_notification_hook(tcore_object_ref_plugin(co_modem),
-               TCORE_NOTIFICATION_MODEM_POWER, __on_hook_powered, modem);
-       tcore_plugin_add_notification_hook(tcore_object_ref_plugin(co_modem),
-               TCORE_NOTIFICATION_MODEM_FLIGHT_MODE, __on_hook_flight, modem);
-       tcore_plugin_add_notification_hook(tcore_object_ref_plugin(co_modem),
-               TCORE_NOTIFICATION_SIM_STATUS, __on_hook_sim_init, modem);
+       modem_name = tcore_server_get_cp_name_by_plugin(tcore_object_ref_plugin(co_modem));
+       if( TRUE == g_str_has_suffix(modem_name , "0")) {
+               tcore_server_add_notification_hook(s, TNOTI_MODEM_POWER, __on_hook_powered_0, modem);
+               tcore_server_add_notification_hook(s, TNOTI_MODEM_FLIGHT_MODE, __on_hook_flight_0, modem);
+               tcore_server_add_notification_hook(s, TNOTI_SIM_STATUS, __on_hook_sim_init_0, modem);
+#ifdef POWER_SAVING_FEATURE_WEARABLE /* TODO: Modify for DSDS support */
+               tcore_server_add_notification_hook(s, TNOTI_CALL_STATUS_IDLE, __on_hook_voice_call_status, modem);
+               tcore_server_add_notification_hook(s, TNOTI_CALL_STATUS_ACTIVE, __on_hook_voice_call_status, modem);
+               tcore_server_add_notification_hook(s, TNOTI_CALL_STATUS_HELD, __on_hook_voice_call_status, modem);
+               tcore_server_add_notification_hook(s, TNOTI_CALL_STATUS_DIALING, __on_hook_voice_call_status, modem);
+               tcore_server_add_notification_hook(s, TNOTI_CALL_STATUS_ALERT, __on_hook_voice_call_status, modem);
+               tcore_server_add_notification_hook(s, TNOTI_CALL_STATUS_INCOMING, __on_hook_voice_call_status, modem);
+               tcore_server_add_notification_hook(s, TNOTI_CALL_STATUS_WAITING, __on_hook_voice_call_status, modem);
+#endif /* #ifdef POWER_SAVING_FEATURE_WEARABLE */
+       } else {
+               tcore_server_add_notification_hook(s, TNOTI_MODEM_POWER, __on_hook_powered_1, modem);
+               tcore_server_add_notification_hook(s, TNOTI_MODEM_FLIGHT_MODE, __on_hook_flight_1, modem);
+               tcore_server_add_notification_hook(s, TNOTI_SIM_STATUS, __on_hook_sim_init_1, modem);
+#ifdef POWER_SAVING_FEATURE_WEARABLE /* TODO: Modify for DSDS support */
+               tcore_server_add_notification_hook(s, TNOTI_CALL_STATUS_IDLE, __on_hook_voice_call_status, modem);
+               tcore_server_add_notification_hook(s, TNOTI_CALL_STATUS_ACTIVE, __on_hook_voice_call_status, modem);
+               tcore_server_add_notification_hook(s, TNOTI_CALL_STATUS_HELD, __on_hook_voice_call_status, modem);
+               tcore_server_add_notification_hook(s, TNOTI_CALL_STATUS_DIALING, __on_hook_voice_call_status, modem);
+               tcore_server_add_notification_hook(s, TNOTI_CALL_STATUS_ALERT, __on_hook_voice_call_status, modem);
+               tcore_server_add_notification_hook(s, TNOTI_CALL_STATUS_INCOMING, __on_hook_voice_call_status, modem);
+               tcore_server_add_notification_hook(s, TNOTI_CALL_STATUS_WAITING, __on_hook_voice_call_status, modem);
+#endif /* #ifdef POWER_SAVING_FEATURE_WEARABLE */
+       }
+       return TRUE;
+}
 
+gboolean _ps_free_co_modem_event(gpointer modem)
+{
+       Server *s = NULL;
+       TcorePlugin *p;
+       CoreObject *co_modem;
+       const char *modem_name = NULL;
+       g_return_val_if_fail(modem != NULL, FALSE);
+
+       p = _ps_modem_ref_plugin(modem);
+       s = tcore_plugin_ref_server(p);
+       co_modem = _ps_modem_ref_co_modem(modem);
+
+       modem_name = tcore_server_get_cp_name_by_plugin(tcore_object_ref_plugin(co_modem));
+       if( TRUE == g_str_has_suffix(modem_name , "0")) {
+               tcore_server_remove_notification_hook(s, __on_hook_powered_0);
+               tcore_server_remove_notification_hook(s, __on_hook_flight_0);
+               tcore_server_remove_notification_hook(s, __on_hook_sim_init_0);
+       } else {
+               tcore_server_remove_notification_hook(s, __on_hook_powered_1);
+               tcore_server_remove_notification_hook(s, __on_hook_flight_1);
+               tcore_server_remove_notification_hook(s, __on_hook_sim_init_1);
+       }
        return TRUE;
 }
 
+enum tcore_hook_return __on_hook_modem_added(Server *s,
+               CoreObject *source, enum tcore_notification_command command,
+               unsigned int data_len, void *data, void *user_data)
+{
+       gpointer *master = user_data;
+       TcorePlugin *plg = data;
+       if(FALSE == _ps_master_create_modems(master, plg)){
+               err("Failed to create modem");
+       }
+       return TCORE_HOOK_RETURN_CONTINUE;
+}
+
 gboolean _ps_get_co_modem_values(gpointer modem)
 {
        TcorePlugin *plg;
        CoreObject *co_modem = NULL;
        CoreObject *co_sim = NULL;
 
+       GSList *co_lists = NULL;
        gboolean sim_init = FALSE, modem_powered = FALSE, flight_mode = FALSE;
-       TelSimCardStatus sim_status;
-       TelSimImsiInfo *sim_imsi = NULL;
-       gchar plmn[(TEL_SIM_MCC_MNC_LEN_MAX * 2) + 1] = {0,}; //mcc+mnc
+       int sim_status = 0;
+       enum tel_sim_type sim_type = SIM_TYPE_UNKNOWN;
+       struct tel_sim_imsi *sim_imsi = NULL;
 
-       tcore_check_return_value(modem != NULL, FALSE);
+       g_return_val_if_fail(modem != NULL, FALSE);
 
        co_modem = _ps_modem_ref_co_modem(modem);
-       if (!co_modem){
-               err("invalid PsModem ");
+       if (!co_modem)
                return FALSE;
-       }
 
        plg = tcore_object_ref_plugin(co_modem);
-       if (!plg){
-               err("invalid plugin");
+       if (!plg)
                return FALSE;
-       }
 
-       co_sim = tcore_plugin_ref_core_object(plg, CORE_OBJECT_TYPE_SIM);
-       if (!co_sim) {
-               err("invalid co sim");
+       co_lists = tcore_plugin_get_core_objects_bytype(plg, CORE_OBJECT_TYPE_SIM);
+       if (!co_lists)
                return FALSE;
-       }
 
-       /* SIM State */
-       tcore_sim_get_status(co_sim, &sim_status);
-       if(sim_status == TEL_SIM_STATUS_SIM_INIT_COMPLETED){
-               sim_init = TRUE;
-
-               /*
-                * If sim is intialized then only fetch modem state
-                */
-               tcore_modem_get_powered(co_modem, &modem_powered);
-       }
-
-       /* IMSI */
-       tcore_sim_get_imsi(co_sim, &sim_imsi);
-       strncpy(plmn, sim_imsi->mcc, strlen( sim_imsi->mcc));
-       strcat(plmn, sim_imsi->mnc);
+       co_sim = co_lists->data;
+       g_slist_free(co_lists);
 
-       /* Flight mode */
-       tcore_modem_get_flight_mode_state(co_modem, &flight_mode);
+       sim_status = tcore_sim_get_status(co_sim);
+       if(sim_status == SIM_STATUS_INIT_COMPLETED)
+               sim_init = TRUE;
 
-       dbg("SIM init: [%s], Modem powered: [%s], Flight mode: [%s]",
-               sim_init ? "YES" : "NO",
-               modem_powered ? "YES" : "ON",
-               flight_mode ? "ON" : "OFF");
+       sim_imsi = tcore_sim_get_imsi(co_sim);
+       modem_powered = tcore_modem_get_powered(co_modem);
+       flight_mode = tcore_modem_get_flight_mode_state(co_modem);
 
-       /* Set Flight mode */
        _ps_modem_processing_flight_mode(modem, flight_mode);
-
-       /* Set Power power */
        _ps_modem_processing_power_enable(modem, modem_powered);
 
-       /* Process SIM state */
-       _ps_modem_processing_sim_complete(modem, sim_init, plmn);
+       sim_type = tcore_sim_get_type(co_sim);
 
+       if(sim_type == SIM_TYPE_NVSIM)
+               _ps_modem_processing_sim_complete(modem, sim_init, PS_CDMA_DUMMY_PROFILE_PLMN);
+       else
+               _ps_modem_processing_sim_complete(modem, sim_init, (gchar *)sim_imsi->plmn);
        g_free(sim_imsi);
        return TRUE;
 }
 
 gboolean _ps_hook_co_network_event(gpointer service)
 {
-       CoreObject *co_network;
-       tcore_check_return_value(service != NULL, FALSE);
+       Server *s = NULL;
+       TcorePlugin *p;
+       CoreObject *co_network = NULL;
+       const char *modem_name = NULL;
 
+       g_return_val_if_fail(service != NULL, FALSE);
 
-       dbg("Hook for network event");
+       p = _ps_service_ref_plugin(service);
+       s = tcore_plugin_ref_server(p);
        co_network = _ps_service_ref_co_network(service);
 
-       tcore_plugin_add_notification_hook(tcore_object_ref_plugin(co_network),
-               TCORE_NOTIFICATION_NETWORK_REGISTRATION_STATUS,
-               __on_hook_net_register, service);
-
+       modem_name = tcore_server_get_cp_name_by_plugin(tcore_object_ref_plugin(co_network));
+       if( TRUE == g_str_has_suffix(modem_name , "0")) {
+               tcore_server_add_notification_hook(s, TNOTI_NETWORK_REGISTRATION_STATUS, __on_hook_net_register_0, service);
+               tcore_server_add_notification_hook(s, TNOTI_NETWORK_CHANGE, __on_hook_net_change_0, service);
+               tcore_server_add_notification_hook(s, TNOTI_NETWORK_RESTRICTED_STATE, __on_hook_net_restricted_state_0, service);
+       } else {
+               tcore_server_add_notification_hook(s, TNOTI_NETWORK_REGISTRATION_STATUS, __on_hook_net_register_1, service);
+               tcore_server_add_notification_hook(s, TNOTI_NETWORK_CHANGE, __on_hook_net_change_1, service);
+               tcore_server_add_notification_hook(s, TNOTI_NETWORK_RESTRICTED_STATE, __on_hook_net_restricted_state_1, service);
+       }
        return TRUE;
 }
 
@@ -351,23 +1920,26 @@ gboolean _ps_get_co_network_values(gpointer service)
 {
        CoreObject *co_network = NULL;
        gboolean ps_attached = FALSE;
-       gboolean roam ;
+       gint ps_restricted = 0;
 
-       TelNetworkRegStatus ps_status;
-       TelNetworkAct act;
+       enum telephony_network_service_domain_status ps_status;
+       enum telephony_network_access_technology act;
 
-       tcore_check_return_value(service != NULL, FALSE);
+       g_return_val_if_fail(service != NULL, FALSE);
 
        co_network = _ps_service_ref_co_network(service);
+       ps_dbg_ex_co(co_network, "Entered ");
 
-       tcore_network_get_ps_reg_status(co_network, &ps_status);
+       tcore_network_get_service_status(co_network, TCORE_NETWORK_SERVICE_DOMAIN_TYPE_PACKET, &ps_status);
        tcore_network_get_access_technology(co_network, &act);
-       tcore_network_get_roam_state(co_network, &roam);
 
-       if (ps_status == TEL_NETWORK_REG_STATUS_REGISTERED)
+       if (ps_status == NETWORK_SERVICE_DOMAIN_STATUS_FULL)
                ps_attached = TRUE;
 
-       _ps_service_set_roaming(service, roam );
+       ps_restricted = tcore_network_get_restricted_state(co_network);
+
+       _ps_service_set_restricted(service, ((ps_restricted == NETWORK_RESTRICTED_STATE_PS_ALL) ? TRUE : FALSE));
+       _ps_service_set_roaming(service, tcore_network_get_roaming_state(co_network));
        _ps_service_set_ps_attached(service, ps_attached);
        _ps_service_set_access_technology(service, act);
 
@@ -376,71 +1948,142 @@ gboolean _ps_get_co_network_values(gpointer service)
 
 gboolean _ps_hook_co_ps_event(gpointer service)
 {
-       CoreObject *co_ps;
-       tcore_check_return_value(service != NULL, FALSE);
-
+       Server *s = NULL;
+       TcorePlugin *p;
+       CoreObject *co_ps = NULL;
+       const char *modem_name = NULL;
+       g_return_val_if_fail(service != NULL, FALSE);
+
+       ps_dbg_ex_co(_ps_service_ref_co_network(service), "Entered ");
+       p = _ps_service_ref_plugin(service);
+       s = tcore_plugin_ref_server(p);
        co_ps = _ps_service_ref_co_ps(service);
 
-       tcore_plugin_add_notification_hook(tcore_object_ref_plugin(co_ps),
-               TCORE_NOTIFICATION_PS_CALL_STATUS,
-               __on_hook_call_status, service);
+       modem_name = tcore_server_get_cp_name_by_plugin(tcore_object_ref_plugin(co_ps));
+       if( TRUE == g_str_has_suffix(modem_name , "0")) {
+               tcore_server_add_notification_hook(s, TNOTI_PS_CALL_STATUS, __on_hook_call_status_0, service);
+               tcore_server_add_notification_hook(s, TNOTI_PS_CURRENT_SESSION_DATA_COUNTER, __on_hook_session_data_counter_0, service);
+               tcore_server_add_notification_hook(s, TNOTI_PS_PDP_IPCONFIGURATION, __on_hook_ipconfiguration_0, service);
+       } else {
+               tcore_server_add_notification_hook(s, TNOTI_PS_CALL_STATUS, __on_hook_call_status_1, service);
+               tcore_server_add_notification_hook(s, TNOTI_PS_CURRENT_SESSION_DATA_COUNTER, __on_hook_session_data_counter_1, service);
+               tcore_server_add_notification_hook(s, TNOTI_PS_PDP_IPCONFIGURATION, __on_hook_ipconfiguration_1, service);
+       }
+       return TRUE;
+}
+
+gboolean _ps_free_modem_event(gpointer modem)
+{
+       Server *s = NULL;
+       TcorePlugin *p;
+       g_return_val_if_fail(modem != NULL, FALSE);
+
+       p = _ps_modem_ref_plugin(modem);
+       s = tcore_plugin_ref_server(p);
+
+       tcore_server_remove_notification_hook(s, __on_hook_powered);
+       tcore_server_remove_notification_hook(s, __on_hook_flight);
+       tcore_server_remove_notification_hook(s, __on_hook_sim_init);
 
-       tcore_plugin_add_notification_hook(tcore_object_ref_plugin(co_ps),
-               TCORE_NOTIFICATION_PS_IPCONFIG,
-               __on_hook_ipconfiguration, service);
+#ifdef POWER_SAVING_FEATURE_WEARABLE
+       tcore_server_remove_notification_hook(s, __on_hook_voice_call_status);
+#endif /* #ifdef POWER_SAVING_FEATURE_WEARABLE */
 
        return TRUE;
+
 }
 
 gboolean _ps_free_co_ps_event(gpointer service)
 {
-       CoreObject *co_ps;
-       tcore_check_return_value(service != NULL, FALSE);
-
-       co_ps = _ps_service_ref_co_ps(service);
+       Server *s = NULL;
+       TcorePlugin *p;
+       CoreObject *co_ps = NULL;
+       CoreObject * co_network;
+       const char * modem_name = NULL;
 
-       tcore_plugin_remove_notification_hook(tcore_object_ref_plugin(co_ps),
-               TCORE_NOTIFICATION_PS_CALL_STATUS,
-               __on_hook_call_status);
+       g_return_val_if_fail(service != NULL, FALSE);
+       co_network = _ps_service_ref_co_network(service);
 
-       tcore_plugin_remove_notification_hook(tcore_object_ref_plugin(co_ps),
-               TCORE_NOTIFICATION_PS_IPCONFIG,
-               __on_hook_ipconfiguration);
+       ps_dbg_ex_co(co_network, "Entered ");
+       p = _ps_service_ref_plugin(service);
+       s = tcore_plugin_ref_server(p);
+       co_ps = _ps_service_ref_co_ps(service);
 
-       return TRUE;
+       modem_name = tcore_server_get_cp_name_by_plugin(tcore_object_ref_plugin(co_ps));
+       if(modem_name){
+               ps_dbg_ex_co(co_network, "modem name %s", modem_name);
+       }
+       if( TRUE == g_str_has_suffix(modem_name , "0")) {
+               tcore_server_remove_notification_hook(s, __on_hook_call_status_0);
+               tcore_server_remove_notification_hook(s, __on_hook_session_data_counter_0);
+               tcore_server_remove_notification_hook(s, __on_hook_ipconfiguration_0);
+        } else {
+               tcore_server_remove_notification_hook(s, __on_hook_call_status_1);
+               tcore_server_remove_notification_hook(s, __on_hook_session_data_counter_1);
+               tcore_server_remove_notification_hook(s, __on_hook_ipconfiguration_1);
+        }
+        return TRUE;
 }
 
 gboolean _ps_free_co_network_event(gpointer service)
 {
-       CoreObject *co_network;
-       tcore_check_return_value(service != NULL, FALSE);
+       Server *s = NULL;
+       TcorePlugin *p;
+       CoreObject *co_network = NULL;
+       const char *modem_name = NULL;
+       g_return_val_if_fail(service != NULL, FALSE);
 
+       ps_dbg_ex_co(_ps_service_ref_co_network(service), "Entered ");
+       p = _ps_service_ref_plugin(service);
+       s = tcore_plugin_ref_server(p);
        co_network = _ps_service_ref_co_network(service);
 
-       tcore_plugin_remove_notification_hook(tcore_object_ref_plugin(co_network),
-               TCORE_NOTIFICATION_NETWORK_REGISTRATION_STATUS,
-               __on_hook_net_register);
-
+       modem_name = tcore_server_get_cp_name_by_plugin(tcore_object_ref_plugin(co_network));
+       if( TRUE == g_str_has_suffix(modem_name , "0")) {
+               tcore_server_remove_notification_hook(s, __on_hook_net_register_0);
+               tcore_server_remove_notification_hook(s, __on_hook_net_change_0);
+               tcore_server_remove_notification_hook(s, __on_hook_net_restricted_state_0);
+       } else {
+               tcore_server_remove_notification_hook(s, __on_hook_net_register_1);
+               tcore_server_remove_notification_hook(s, __on_hook_net_change_1);
+               tcore_server_remove_notification_hook(s, __on_hook_net_restricted_state_1);
+       }
        return TRUE;
 }
 
-gboolean _ps_update_cellular_state_key(gpointer service)
+gboolean _ps_update_cellular_state_key(gpointer object)
 {
        Server *s = NULL;
-       TcoreStorage *strg;
-       TcorePsState cur_cell_state;
-       gint stored_cell_state = 0;
-
-       s = tcore_plugin_ref_server((TcorePlugin *)_ps_service_ref_plugin(service));
+       static Storage *strg;
+       int current_state = 0;
+       int stored_state = 0;
+       ps_service_t *service = object;
+       CoreObject * co_network = _ps_service_ref_co_network(service);
+       ps_modem_t *modem = _ps_service_ref_modem(service);
+       ps_subs_type subs_type = _ps_modem_get_subs_type(modem);
+       int selected_sim = -1;
+
+       ps_dbg_ex_co(co_network, "Update cellular state for [SIM%d]", subs_type + 1);
+
+       s = tcore_plugin_ref_server(_ps_service_ref_plugin(service));
        strg = tcore_server_find_storage(s, "vconf");
 
-       cur_cell_state = _ps_service_check_cellular_state(service);
-       stored_cell_state = tcore_storage_get_int(strg, STORAGE_KEY_CELLULAR_STATE);
+       selected_sim = tcore_storage_get_int(strg, STORAGE_KEY_TELEPHONY_DUALSIM_DEFAULT_DATA_SERVICE_INT);
+       if ((selected_sim != -1) &&(selected_sim != (int)subs_type)) {
+               ps_warn_ex_co(co_network, "Update for only [SIM%d] selected by Setting", selected_sim + 1);
+               return FALSE;
+       }
+
+       current_state = _ps_service_check_cellular_state(service);
 
-       dbg("cellular state, current (%d), cur_cell_state (%d)", stored_cell_state, cur_cell_state);
+       if (tcore_modem_get_flight_mode_state(modem->co_modem) == TRUE)
+               current_state = TELEPHONY_PS_FLIGHT_MODE;
 
-       if (stored_cell_state != (gint)cur_cell_state)
-               tcore_storage_set_int(strg, STORAGE_KEY_CELLULAR_STATE, cur_cell_state);
+       stored_state = tcore_storage_get_int(strg, STORAGE_KEY_CELLULAR_STATE);
+       ps_dbg_ex_co(co_network, "Cellular state, current: [%d], stored: [%d]", current_state, stored_state);
+       if (current_state != stored_state)
+               tcore_storage_set_int(strg, STORAGE_KEY_CELLULAR_STATE, current_state);
 
        return TRUE;
 }
+
diff --git a/src/util.c b/src/util.c
new file mode 100644 (file)
index 0000000..bce320f
--- /dev/null
@@ -0,0 +1,203 @@
+/*\r
+ * PacketService Control Module\r
+ *\r
+ * Copyright (c) 2012 Samsung Electronics Co., Ltd. All rights reserved.\r
+ *\r
+ * Contact: DongHoo Park <donghoo.park@samsung.com>\r
+ *         Arun Shukla <arun.shukla@samsung.com>\r
+ *\r
+ * Licensed under the Apache License, Version 2.0 (the "License");\r
+ * you may not use this file except in compliance with the License.\r
+ * You may obtain a copy of the License at\r
+ *\r
+ * http://www.apache.org/licenses/LICENSE-2.0\r
+ *\r
+ * Unless required by applicable law or agreed to in writing, software\r
+ * distributed under the License is distributed on an "AS IS" BASIS,\r
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
+ * See the License for the specific language governing permissions and\r
+ * limitations under the License.\r
+ *\r
+ */\r
+\r
+#include <unistd.h>\r
+#include <wait.h>\r
+#include <security-server.h>\r
+\r
+#include <libxml/xmlmemory.h>\r
+#include <libxml/parser.h>\r
+#include <libxml/tree.h>\r
+\r
+#include "ps.h"\r
+\r
+gboolean ps_util_check_access_control (GDBusMethodInvocation *invoc, const char *label, const char *perm)\r
+{\r
+       GDBusConnection *conn;\r
+       GVariant *result_pid;\r
+       GVariant *param;\r
+       GError *error = NULL;\r
+       const char *sender;\r
+       unsigned int pid;\r
+       int ret;\r
+       int result = FALSE;\r
+\r
+       conn = g_dbus_method_invocation_get_connection (invoc);\r
+       if (!conn) {\r
+               warn ("access control denied (no connection info)");\r
+               goto OUT;\r
+       }\r
+\r
+       sender = g_dbus_method_invocation_get_sender (invoc);\r
+\r
+       param = g_variant_new ("(s)", sender);\r
+       if (!param) {\r
+               warn ("access control denied (sender info fail)");\r
+               goto OUT;\r
+       }\r
+\r
+       result_pid = g_dbus_connection_call_sync (conn, "org.freedesktop.DBus",\r
+                       "/org/freedesktop/DBus",\r
+                       "org.freedesktop.DBus",\r
+                       "GetConnectionUnixProcessID",\r
+                       param, NULL,\r
+                       G_DBUS_CALL_FLAGS_NONE, -1, NULL, &error);\r
+       if (error) {\r
+               warn ("access control denied (dbus error: %d(%s))",\r
+                               error->code, error->message);\r
+               g_error_free (error);\r
+               goto OUT;\r
+       }\r
+\r
+       if (!result_pid) {\r
+               warn ("access control denied (fail to get pid)");\r
+               goto OUT;\r
+       }\r
+\r
+       g_variant_get (result_pid, "(u)", &pid);\r
+       g_variant_unref (result_pid);\r
+\r
+       dbg ("sender: %s pid = %u", sender, pid);\r
+\r
+       ret = security_server_check_privilege_by_pid (pid, label, perm);\r
+       if (ret != SECURITY_SERVER_API_SUCCESS) {\r
+               warn ("pid(%u) access (%s - %s) denied(%d)", pid, label, perm, ret);\r
+       }\r
+       else\r
+               result = TRUE;\r
+\r
+OUT:\r
+       if (result == FALSE) {\r
+               g_dbus_method_invocation_return_error (invoc,\r
+                               G_DBUS_ERROR,\r
+                               G_DBUS_ERROR_ACCESS_DENIED,\r
+                               "No access rights");\r
+       }\r
+       return result;\r
+}\r
+\r
+GSource * ps_util_gsource_dispatch(GMainContext *main_context, gint priority, GSourceFunc cb, gpointer data)\r
+{\r
+       GSource *request_source = NULL;\r
+       request_source = g_idle_source_new();\r
+       g_source_set_callback(request_source, cb, data, NULL);\r
+       g_source_set_priority(request_source, priority);\r
+       g_source_attach(request_source, main_context);\r
+       return request_source;\r
+}\r
+\r
+gboolean ps_util_thread_dispatch(GMainContext *main_context, gint priority, GSourceFunc cb, gpointer data)\r
+{\r
+\r
+       GSource *request_source;\r
+\r
+       if (main_context == NULL || cb == NULL) {\r
+               err("Failed to dispatch");\r
+               return FALSE;\r
+       }\r
+       request_source = ps_util_gsource_dispatch(main_context, priority, cb, data);\r
+       g_source_unref(request_source);\r
+\r
+       return TRUE;\r
+}\r
+\r
+int ps_util_system_command(char *command)\r
+{\r
+    int pid = 0,\r
+        status = 0;\r
+    const char *environ[] = { NULL };\r
+\r
+    if (command == NULL)\r
+        return -1;\r
+\r
+       dbg("%s", command);\r
+\r
+    pid = fork();\r
+    if (pid == -1)\r
+        return -1;\r
+    if (pid == 0) {\r
+        char *argv[4];\r
+        argv[0] = "sh";\r
+        argv[1] = "-c";\r
+        argv[2] = (char *)command;\r
+        argv[3] = 0;\r
+        execve("/bin/sh", argv, (char **)environ);\r
+        exit(127);\r
+    }\r
+    do {\r
+        if (waitpid(pid, &status, 0) == -1) {\r
+            if (errno != EINTR)\r
+                return -1;\r
+        } else {\r
+            if (WIFEXITED(status)) {\r
+                return WEXITSTATUS(status);\r
+            } else if (WIFSIGNALED(status)) {\r
+                return WTERMSIG(status);\r
+            } else if (WIFSTOPPED(status)) {\r
+                return WSTOPSIG(status);\r
+            }\r
+        }\r
+    } while (!WIFEXITED(status) && !WIFSIGNALED(status));\r
+\r
+    return 0;\r
+}\r
+\r
+void ps_util_load_xml_file(const char *docname, const char *groupname, void **i_doc, void **i_root_node)\r
+{\r
+       xmlDocPtr *doc = (xmlDocPtr *)i_doc;\r
+       xmlNodePtr *root_node = (xmlNodePtr *)i_root_node;\r
+\r
+       dbg("docname:%s, groupname:%s", docname, groupname);\r
+\r
+       *doc = xmlParseFile(docname);\r
+       if (*doc) {\r
+               *root_node = xmlDocGetRootElement(*doc);\r
+               if (*root_node) {\r
+                       dbg("*root_node->name:%s", (*root_node)->name);\r
+                       if (0 == xmlStrcmp((*root_node)->name, (const xmlChar *) groupname)) {\r
+                               dbg("root_node is found !!!");\r
+                               return;\r
+                       } else {\r
+                               err("Cannot find root node.");\r
+                               *root_node = NULL;\r
+                       }\r
+               }\r
+               xmlFreeDoc(*doc);\r
+               *doc = NULL;\r
+       } else {\r
+               err("fail to parse doc(%s)", docname);\r
+       }\r
+}\r
+\r
+void ps_util_unload_xml_file(void **i_doc, void **i_root_node)\r
+{\r
+       xmlDocPtr *doc = (xmlDocPtr *)i_doc;\r
+       xmlNodePtr *root_node = (xmlNodePtr *)i_root_node;\r
+\r
+       dbg("unloading XML");\r
+       if (doc && *doc) {\r
+               xmlFreeDoc(*doc);\r
+               *doc = NULL;\r
+               if (root_node)\r
+                       *root_node = NULL;\r
+       }\r
+}\r
diff --git a/tel-plugin-packetservice.manifest b/tel-plugin-packetservice.manifest
new file mode 100644 (file)
index 0000000..97e8c31
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+       <request>
+               <domain name="_"/>
+       </request>
+</manifest>
diff --git a/test_src/CMakeLists.txt b/test_src/CMakeLists.txt
new file mode 100644 (file)
index 0000000..376699b
--- /dev/null
@@ -0,0 +1,10 @@
+CMAKE_MINIMUM_REQUIRED(VERSION 2.6)
+PROJECT(apnbuilder C)
+
+SET(apnbuilder
+       main.c
+)
+
+ADD_EXECUTABLE(apnbuilder ${apnbuilder})
+TARGET_LINK_LIBRARIES(apnbuilder ${pkgs_LDFLAGS} "-L${CMAKE_BINARY_DIR} -ltcore")
+INSTALL(TARGETS apnbuilder RUNTIME DESTINATION ${TIZEN_TEST_BIN_DIR})
diff --git a/test_src/main.c b/test_src/main.c
new file mode 100644 (file)
index 0000000..64e3083
--- /dev/null
@@ -0,0 +1,952 @@
+/*
+ * libslp-tapi
+ *
+ * Copyright (c) 2014 Samsung Electronics Co., Ltd. All rights reserved.
+ *
+ * Contact: Ja-young Gu <jygu@samsung.com>
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <sys/time.h>
+#include <unistd.h>
+#include <wait.h>
+#include <errno.h>
+
+#include <glib.h>
+#include <gio/gio.h>
+#include <db-util.h>
+#include <libxml/xmlmemory.h>
+#include <libxml/parser.h>
+#include <libxml/tree.h>
+
+#define DATABASE_PATH "/opt/dbspace/.dnet.db"
+#define msg(fmt,args...) { printf(fmt "\n", ##args); fflush(stdout);}
+
+enum context_type {
+       CONTEXT_TYPE_UNKNOWN,
+       CONTEXT_TYPE_X25,
+       CONTEXT_TYPE_IP,
+       CONTEXT_TYPE_IHOST,
+       CONTEXT_TYPE_PPP,
+       CONTEXT_TYPE_IPV6,
+       CONTEXT_TYPE_IPV4V6,
+};
+
+enum context_role {
+       CONTEXT_ROLE_UNKNOWN,
+       CONTEXT_ROLE_INTERNET,
+       CONTEXT_ROLE_MMS,
+       CONTEXT_ROLE_PREPAID_INTERNET,
+       CONTEXT_ROLE_PREPAID_MMS,
+       CONTEXT_ROLE_TETHERING,
+       CONTEXT_ROLE_USER_DEFINED,
+};
+
+static int __system_command(char *command)
+{
+    int pid = 0,
+        status = 0;
+    const char *environ[] = { NULL };
+
+    if (command == NULL)
+        return -1;
+
+       msg("%s", command);
+
+    pid = fork();
+    if (pid == -1)
+        return -1;
+    if (pid == 0) {
+        char *argv[4];
+        argv[0] = "sh";
+        argv[1] = "-c";
+        argv[2] = (char *)command;
+        argv[3] = 0;
+        execve("/bin/sh", argv, (char **)environ);
+        exit(127);
+    }
+    do {
+        if (waitpid(pid, &status, 0) == -1) {
+            if (errno != EINTR)
+                return -1;
+        } else {
+            if (WIFEXITED(status)) {
+                return WEXITSTATUS(status);
+            } else if (WIFSIGNALED(status)) {
+                return WTERMSIG(status);
+            } else if (WIFSTOPPED(status)) {
+                return WSTOPSIG(status);
+            }
+        }
+    } while (!WIFEXITED(status) && !WIFSIGNALED(status));
+
+    return 0;
+}
+
+static void __load_xml_file(const char *docname, const char *groupname, void **i_doc, void **i_root_node)
+{
+       xmlDocPtr *doc = (xmlDocPtr *)i_doc;
+       xmlNodePtr *root_node = (xmlNodePtr *)i_root_node;
+
+       msg("docname:%s, groupname:%s", docname, groupname);
+
+       *doc = xmlParseFile(docname);
+       if (*doc) {
+               *root_node = xmlDocGetRootElement(*doc);
+               if (*root_node) {
+                       msg("*root_node->name:%s", (*root_node)->name);
+                       if (0 == xmlStrcmp((*root_node)->name, (const xmlChar *) groupname)) {
+                               msg("root_node is found !!!");
+                               return;
+                       } else {
+                               msg("Cannot find root node.");
+                               *root_node = NULL;
+                       }
+               }
+               xmlFreeDoc(*doc);
+               *doc = NULL;
+       } else {
+               msg("fail to parse doc(%s)", docname);
+       }
+}
+
+static void __unload_xml_file(void **i_doc, void **i_root_node)
+{
+       xmlDocPtr *doc = (xmlDocPtr *)i_doc;
+       xmlNodePtr *root_node = (xmlNodePtr *)i_root_node;
+
+       msg("unloading XML");
+       if (doc && *doc) {
+               xmlFreeDoc(*doc);
+               *doc = NULL;
+               if (root_node)
+                       *root_node = NULL;
+       }
+}
+
+static void* create_handle(const char *path)
+{
+       int rv = 0;
+       sqlite3 *handle = NULL;
+
+       rv = db_util_open(path, &handle, 0);
+       if (rv != SQLITE_OK) {
+               msg("fail to connect database rv(%d)", rv);
+               return NULL;
+       }
+
+       msg("connected to %s", path);
+       return handle;
+}
+
+static gboolean remove_handle(void *handle)
+{
+       if (!handle)
+               return FALSE;
+
+       db_util_close(handle);
+       //free(handle);
+
+       msg("disconnected from database");
+       return TRUE;
+}
+
+static gboolean read_query_database(void *handle, const char *query, GHashTable *in_param,
+               GHashTable *out_param, int out_param_cnt)
+{
+       int rv = 0, index = 0, outter_index = 0;
+       sqlite3_stmt* stmt = NULL;
+       char szQuery[5000];
+
+       GHashTableIter iter;
+       gpointer key, value;
+
+       msg("read query");
+
+       memset(szQuery, '\0', 5000);
+       strncpy(szQuery, query, 5000);
+
+       rv = sqlite3_prepare_v2(handle, szQuery, strlen(szQuery), &stmt, NULL);
+       if (rv != SQLITE_OK) {
+               msg("fail to connect to table (%d)", rv);
+               return FALSE;
+       }
+
+       if (in_param) {
+               g_hash_table_iter_init(&iter, in_param);
+               while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
+                       msg("key(%s), value(%s)", (const char*)key, (const char*)value);
+
+                       if (!value || g_strcmp0((const char*) value, "") == 0) {
+                               msg("bind null");
+                               rv = sqlite3_bind_null(stmt, atoi((const char*) key));
+                       }
+                       else {
+                               msg("bind value");
+                               rv = sqlite3_bind_text(stmt, atoi((const char*) key), (const char*) value, strlen((const char*) value),
+                                               SQLITE_STATIC);
+                       }
+
+                       if (rv != SQLITE_OK) {
+                               msg("fail to bind data (%d)", rv);
+                               return FALSE;
+                       }
+               }
+       }
+
+       rv = sqlite3_step(stmt);
+       msg("read query executed (%d)", rv);
+
+       while (rv == SQLITE_ROW) {
+
+               char tmp_key_outter[10];
+               GHashTable *out_param_data;
+
+               out_param_data = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+
+               for (index = 0; index < out_param_cnt; index++) {
+                       char *tmp = NULL, tmp_key[10];
+                       tmp = (char *) sqlite3_column_text(stmt, index);
+                       snprintf(tmp_key, sizeof(tmp_key), "%d", index);
+                       g_hash_table_insert(out_param_data, g_strdup(tmp_key), g_strdup(tmp));
+               }
+
+               snprintf(tmp_key_outter, sizeof(tmp_key_outter), "%d", outter_index);
+               g_hash_table_insert(out_param, g_strdup(tmp_key_outter), out_param_data);
+               outter_index++;
+               rv = sqlite3_step(stmt);
+       }
+
+       sqlite3_finalize(stmt);
+       return TRUE;
+}
+
+static gboolean query_database(void *handle, const char *query, GHashTable *in_param)
+{
+       int rv = 0;
+       sqlite3_stmt* stmt = NULL;
+       char szQuery[5000];
+
+       GHashTableIter iter;
+       gpointer key, value;
+       msg("query database");
+
+       memset(szQuery, '\0', 5000);
+       strncpy(szQuery, query, 5000);
+
+       rv = sqlite3_prepare_v2(handle, szQuery, strlen(szQuery), &stmt, NULL);
+       if (rv != SQLITE_OK) {
+               msg("fail to connect to table (%d)", rv);
+               return FALSE;
+       }
+
+       if(in_param) {
+               g_hash_table_iter_init(&iter, in_param);
+               while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
+                       msg("key(%s), value(%s)", (const char*)key, (const char*)value);
+
+                       if (!value || g_strcmp0((const char*) value, "") == 0) {
+                               msg("bind null");
+                               rv = sqlite3_bind_null(stmt, atoi((const char*) key));
+                       }
+                       else {
+                               msg("bind value");
+                               rv = sqlite3_bind_text(stmt, atoi((const char*) key), (const char*) value, strlen((const char*) value),
+                                               SQLITE_STATIC);
+                       }
+
+                       if (rv != SQLITE_OK) {
+                               msg("fail to bind data (%d)", rv);
+                               return FALSE;
+                       }
+               }
+       }
+
+       rv = sqlite3_step(stmt);
+       msg("query executed (%d)", rv);
+       sqlite3_finalize(stmt);
+
+       if (rv != SQLITE_DONE) {
+               return FALSE;
+       }
+       return TRUE;
+}
+
+static gboolean __reset_database(void)
+{
+       gpointer handle;
+       char szQuery[5000];
+       gboolean rv = FALSE;
+
+       /* Initialize Storage */
+       handle = create_handle(DATABASE_PATH);
+       if (handle == NULL) {
+               msg("Failed to get Storage handle");
+               return rv;
+       }
+
+       /* SQL query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcat(szQuery, " delete from pdp_profile");
+
+       rv = query_database(handle, szQuery, NULL);
+       msg("Reset profile table: [%s]", (rv == TRUE ? "SUCCESS" : "FAIL"));
+
+       /* De-initialize Storage */
+       remove_handle(handle);
+
+       return rv;
+}
+
+static int __insert_network_id_to_database(gchar *mccmnc)
+{
+       gpointer handle;
+       GHashTable *in_param, *out_param;
+       char szQuery[5000];
+       gboolean rv = FALSE;
+
+       GHashTableIter iter;
+       gpointer key, value;
+       int network_id = 0;
+
+       /* Initialize Database */
+       handle = create_handle(DATABASE_PATH);
+       if (handle == NULL) {
+               msg("Failed to get Storage handle");
+               return rv;
+       }
+
+       /*
+        * Check the maximum Network ID that exists in database,
+        * if NONE exists, then 'Network ID' would be equal to 1
+        * else if there exists a valid maximum entry; 'Network ID' would be incremented value.
+        */
+       out_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL,
+                               (GDestroyNotify) g_hash_table_destroy);
+
+       /* SQL query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcpy(szQuery,"select max(network_info_id) as network_id from network_info");
+
+       rv = read_query_database(handle, szQuery, NULL, out_param, 1);
+       msg("Read Database: [%s]", (rv == TRUE ? "SUCCESS" : "FAIL"));
+
+       g_hash_table_iter_init(&iter, out_param);
+       while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
+               GHashTableIter iter2;
+               gpointer key2, value2;
+
+               if (value) {
+                       g_hash_table_iter_init(&iter2, (GHashTable *)value);
+                       while (g_hash_table_iter_next(&iter2, &key2, &value2) == TRUE) {
+                               msg("key2(%s) value2(%s)",(const char*)key2, (const char*)value2);
+                               if (g_str_equal(key2, "0") == TRUE) {
+                                       if (!value2 || g_strcmp0((const char*)value2, "") == 0) {
+                                               network_id = 0;
+                                       }
+                                       else{
+                                               network_id = atoi((const char*)value2);
+                                       }
+
+                                       /* TODO - Check this logic */
+                                       break;
+                               }
+                       }
+                       //break;        /* TODO - Check this logic */
+               }
+       }
+
+       /* Free Resources */
+       g_hash_table_destroy(out_param);
+
+       /* Increment Network ID */
+       network_id++;
+
+       /* SQL query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcpy(szQuery," insert into network_info( network_info_id, network_name, mccmnc) values( ?, ?, ?) ");
+
+       /* Initialize parameters */
+       in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+       g_hash_table_insert(in_param, "1", g_strdup_printf("%d", network_id));  /* Network ID */
+       g_hash_table_insert(in_param, "2", g_strdup_printf("PLMN_%s", mccmnc));
+       g_hash_table_insert(in_param, "3", g_strdup(mccmnc));
+
+       rv = query_database(handle, szQuery, in_param);
+       if (rv == FALSE) {
+               msg("Failed to insert query to Storage");
+               network_id = 0;
+       }
+
+       /* Free resources */
+       g_hash_table_destroy(in_param);
+
+       /* De-initialize Storage */
+       remove_handle(handle);
+
+       return network_id;
+}
+
+
+static int __load_network_id_from_database(gchar *mccmnc)
+{
+       gpointer handle;
+       GHashTable *in_param, *out_param;
+       char szQuery[5000];
+       gboolean rv = FALSE;
+
+       GHashTableIter iter;
+       gpointer key, value;
+
+       int network_id = -1;
+
+       /* Initialize Storage */
+       handle = create_handle(DATABASE_PATH);
+       if (handle == NULL) {
+               msg("Failed to get Storage handle");
+               return network_id;
+       }
+
+       /* Initialize parameters */
+       in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+       g_hash_table_insert(in_param, "1", g_strdup(mccmnc));
+
+       out_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL,
+                       (GDestroyNotify) g_hash_table_destroy);
+
+       /* SQL Query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcpy(szQuery,"select network_info_id from network_info where mccmnc = ? ");
+
+       rv = read_query_database(handle, szQuery, in_param, out_param, 1);
+       msg("Read Database: [%s]", (rv == TRUE ? "SUCCESS" : "FAIL"));
+
+       g_hash_table_iter_init(&iter, out_param);
+       while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
+               GHashTableIter iter2;
+               gpointer key2, value2;
+
+               if (value) {
+                       g_hash_table_iter_init(&iter2, (GHashTable *)value);
+                       while (g_hash_table_iter_next(&iter2, &key2, &value2) == TRUE) {
+                               if (g_str_equal(key2, "0") == TRUE) {
+                                       if (!value2 || (g_strcmp0((const char*)value2, "") == 0)) {
+                                               network_id = 0;
+                                       }
+                                       else {
+                                               network_id = atoi((const char*)value2);
+                                       }
+
+                                       /* TODO - Check this out */
+                                       break;
+                               }
+                       }
+                       //break;        /* TODO - Check this out */
+               }
+       }
+
+       /* Free resources */
+       g_hash_table_destroy(in_param);
+       g_hash_table_destroy(out_param);
+
+       /* De-initialize Storage */
+       remove_handle(handle);
+
+       return network_id;
+}
+
+
+static int __get_network_id(gchar *mccmnc)
+{
+       int network_id;
+
+       network_id = __load_network_id_from_database(mccmnc);
+       msg("network id(%d)", network_id);
+       if(network_id > 0)
+               return network_id;
+
+       network_id = __insert_network_id_to_database(mccmnc);
+       if(network_id <= 0 )
+               return -1;
+
+       return network_id;
+}
+
+static int __load_profile_id_from_database(void)
+{
+       gpointer handle;
+       GHashTable *out_param;
+       char szQuery[5000];
+       gboolean rv = FALSE;
+
+       GHashTableIter iter;
+       gpointer key, value;
+
+       int profile_id = -1;
+
+       /* Initialize Database */
+       handle = create_handle(DATABASE_PATH);
+       if (handle == NULL) {
+               msg("Failed to get Storage handle");
+               return profile_id;
+       }
+
+       /* Initialize parameters */
+       out_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL,
+                       (GDestroyNotify) g_hash_table_destroy);
+
+       /* SQL query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcpy(szQuery, "select max(profile_id) as last_profile from pdp_profile");
+
+       rv = read_query_database(handle, szQuery, NULL, out_param, 1);
+       msg("Read Database: [%s]", (rv == TRUE ? "SUCCESS" : "FAIL"));
+
+       g_hash_table_iter_init(&iter, out_param);
+       while (g_hash_table_iter_next(&iter, &key, &value) == TRUE) {
+               GHashTableIter iter2;
+               gpointer key2, value2;
+
+               if (value) {
+                       g_hash_table_iter_init(&iter2, (GHashTable *)value);
+                       while (g_hash_table_iter_next(&iter2, &key2, &value2) == TRUE) {
+                               if (g_str_equal(key2, "0") == TRUE) {
+                                       if (!value2 || (g_strcmp0((const char*)value2, "") == 0)) {
+                                               profile_id = 0;
+                                       }
+                                       else{
+                                               profile_id = atoi((const char*)value2);
+                                       }
+
+                                       /* TODO - Check this logic */
+                                       break;
+                               }
+                       }
+                       //break;        /* TODO - Check this logic */
+               }
+       }
+
+       /* Free resources */
+       g_hash_table_destroy(out_param);
+       /* De-initialize Storage */
+       remove_handle(handle);
+       return profile_id;
+}
+
+static gboolean __get_default_profile_from_database(int network_info_id, int svc_category_id)
+{
+       gpointer handle;
+       GHashTable *in_param, *out_param;
+       char szQuery[5000];
+       gboolean rv, ret = FALSE;
+       guint profile_cnt;
+
+       /* Initialize Storage */
+       handle = create_handle(DATABASE_PATH);
+       if (handle == NULL) {
+               msg("Failed to get Storage handle");
+               return FALSE;
+       }
+
+       /* Initialize parameters */
+       in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+       g_hash_table_insert(in_param, "1", g_strdup_printf("%d", network_info_id));
+       g_hash_table_insert(in_param, "2", g_strdup_printf("%d", svc_category_id));
+
+       out_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL,
+                       (GDestroyNotify) g_hash_table_destroy);
+
+       /* SQL query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcpy(szQuery,"select profile_id from pdp_profile ");
+       strcat(szQuery,"where network_info_id = ? and svc_category_id = ? and default_internet_con = 1");
+
+       rv = read_query_database(handle, szQuery, in_param, out_param, 1);
+       msg("Read Database: [%s]", (rv == TRUE ? "SUCCESS" : "FAIL"));
+
+       profile_cnt = g_hash_table_size(out_param);
+       if(profile_cnt > 0) {
+               msg("default profile for (svc_category_id: %d, network_info_id: %d) exists: count[%d]",
+                       svc_category_id, network_info_id, profile_cnt);
+               ret = TRUE;
+       }
+       /* Free resources */
+       g_hash_table_destroy(in_param);
+       g_hash_table_destroy(out_param);
+
+       /* De-initialize Database */
+       remove_handle(handle);
+       return ret;
+}
+
+static gboolean __insert_apns_to_database(GHashTable *in_param)
+{
+       gpointer handle;
+       char szQuery[5000];
+       gboolean rv = FALSE;
+
+       if(in_param == NULL) {
+               msg("in_param is NULL !!!");
+               return rv;
+       }
+
+       /* Initialize Database */
+       handle = create_handle(DATABASE_PATH);
+       if (handle == NULL) {
+               msg("Failed to get db handle");
+               return rv;
+       }
+       /* SQL query */
+       memset(szQuery, 0x0, sizeof(szQuery));
+       strcpy(szQuery," insert into pdp_profile( ");
+       strcat(szQuery," profile_id, profile_name, apn, auth_type, auth_id, auth_pwd, ");
+       strcat(szQuery," pdp_protocol, svc_category_id, proxy_ip_addr, home_url, linger_time,");
+       strcat(szQuery," network_info_id, hidden, editable, default_internet_con, user_defined) values( ");
+       strcat(szQuery," ?, ?, ?, ?, ?, ?,");//1,2,3,4,5,6(auth_pwd)
+       strcat(szQuery," ?, ?, ?, ?, 300,");//7,8,9,10(home_url)
+       strcat(szQuery," ?, 0, 1, ?, 0)");//11,12(default_internet_con)
+
+       rv = query_database(handle, szQuery, in_param);
+       msg("Insert to Database: [%s]", (rv == TRUE ? "SUCCESS" : "FAIL"));
+
+       /* De-initialize Database */
+       remove_handle(handle);
+       return rv;
+}
+
+static gboolean __duplicate_profile_by_type(GHashTable *in_param, gpointer node, int svc_category_id)
+{
+       gpointer tmp;
+       xmlNode *cur_node = node;
+       gchar *in_tuple = NULL;
+       int profile_index;
+
+       if(!in_param || !node)
+               return FALSE;
+
+       tmp = g_hash_table_lookup(in_param, "1");
+       if(tmp) { // profile_id
+               profile_index = atoi((char *)tmp);
+               profile_index++;
+               g_hash_table_insert(in_param, "1", g_strdup_printf("%d", profile_index));
+               msg("profile_id = %d", profile_index);
+       } else {
+               return FALSE;
+       }
+
+       {// svc_category_id
+               g_hash_table_insert(in_param, "8", g_strdup_printf("%d", svc_category_id));
+               msg("svc_category_id = %d", svc_category_id);
+       }
+
+       {// proxy ip
+               gchar *proxy_ip_addr = NULL, *proxy = NULL, *port = NULL;
+
+               if(svc_category_id == CONTEXT_ROLE_MMS) {
+                       proxy = (char *)xmlGetProp(cur_node, (const xmlChar *)"mmsproxy");
+                       port = (char *)xmlGetProp(cur_node, (const xmlChar *)"mmsport");
+               } else {
+                       proxy = (char *)xmlGetProp(cur_node, (const xmlChar *)"proxy");
+                       port = (char *)xmlGetProp(cur_node, (const xmlChar *)"port");
+               }
+               if(proxy && port) {
+                       proxy_ip_addr = g_strdup_printf("%s:%s", proxy, port);
+                       in_tuple = g_strdup(proxy_ip_addr);
+                       g_free(proxy_ip_addr);
+               } else {
+                       in_tuple = g_strdup("");
+               }
+               g_hash_table_insert(in_param, "9", g_strdup(in_tuple));
+               msg("proxy_ip_addr = %s", in_tuple);
+               g_free(in_tuple);
+       }
+
+       {//home url
+               gchar *mmsc = NULL;
+               mmsc = (char *)xmlGetProp(cur_node, (const xmlChar *)"mmsc");
+               if(mmsc && svc_category_id == CONTEXT_ROLE_MMS)
+                       in_tuple = g_strdup(mmsc);
+               else
+                       in_tuple = g_strdup("");
+               g_hash_table_insert(in_param, "10", g_strdup(in_tuple));
+               msg("home_url = %s", in_tuple);
+               g_free(in_tuple);
+       }
+
+       {//default internet connection
+               int default_internet_con = 1; // default
+
+               tmp = g_hash_table_lookup(in_param, "11"); // network_info_id
+               if(tmp) {
+                       int network_info_id = atoi((char *)tmp);
+                       msg("network_info_id = %d", network_info_id);
+                       if(network_info_id > 0 && __get_default_profile_from_database(network_info_id, svc_category_id))
+                               default_internet_con = 0;
+               }
+               g_hash_table_insert(in_param, "12", g_strdup_printf("%d", default_internet_con));
+               msg("default_internet_con = %d", default_internet_con);
+       }
+
+       /* insert duplacte profile to database. */
+       return __insert_apns_to_database(in_param);
+}
+
+static GHashTable *__construct_profile_tuples(gpointer node)
+{
+       xmlNode *cur_node = node;
+       GHashTable *in_param = NULL;
+       gchar *in_tuple = NULL;
+       int profile_id = 0, network_info_id = -1, svc_category_id = 0;
+
+       if(!cur_node)
+               return NULL;
+
+       /* Initialize parameters */
+       in_param = g_hash_table_new_full(g_str_hash, g_str_equal, NULL, g_free);
+
+       {//profile id
+               profile_id = __load_profile_id_from_database();
+               profile_id++;
+               g_hash_table_insert(in_param, "1", g_strdup_printf("%d", profile_id));
+               msg("profile_id = %d", profile_id);
+       }
+
+       {//profile name
+               gchar *profile_name = NULL;
+               profile_name = (char *)xmlGetProp(cur_node, (const xmlChar *)"carrier");
+               if(profile_name) {
+                       in_tuple = g_strdup(profile_name);
+               } else
+                       in_tuple = g_strdup_printf("TEMP_PROFILE_%d", profile_id);
+
+               g_hash_table_insert(in_param, "2", g_strdup(in_tuple));
+               msg("profile_name = %s", in_tuple);
+               g_free(in_tuple);
+       }
+
+       {//apn
+               gchar *apn = NULL;
+               apn = (char *)xmlGetProp(cur_node, (const xmlChar *)"apn");
+               if(apn)
+                       in_tuple = g_strdup(apn);
+               else
+                       in_tuple = g_strdup("");
+               g_hash_table_insert(in_param, "3", g_strdup(in_tuple));
+               msg("apn = %s", in_tuple);
+               g_free(in_tuple);
+       }
+
+       {//auth type
+               gchar *auth_type = NULL, *auth = NULL;
+               auth_type = (char *)xmlGetProp(cur_node, (const xmlChar *)"auth_type");
+               auth = (char *)xmlGetProp(cur_node, (const xmlChar *)"auth");
+               if(auth_type) {
+                       in_tuple = g_strdup(auth_type);
+               } else if (auth) {
+                       in_tuple = g_strdup(auth);
+               } else {
+                       in_tuple = g_strdup("0"); // CONTEXT_AUTH_NONE
+               }
+               g_hash_table_insert(in_param, "4", g_strdup(in_tuple));
+               msg("auth_type = %s", in_tuple);
+               g_free(in_tuple);
+       }
+
+       {//auth id
+               gchar *auth_id = NULL;
+               auth_id = (char *)xmlGetProp(cur_node, (const xmlChar *)"user");
+               if(auth_id)
+                       in_tuple = g_strdup(auth_id);
+               else
+                       in_tuple = g_strdup("");
+               g_hash_table_insert(in_param, "5", g_strdup(in_tuple));
+               msg("auth_id = %s", in_tuple);
+               g_free(in_tuple);
+       }
+
+       {//auth pwd
+               gchar *auth_pwd = NULL;
+               auth_pwd = (char *)xmlGetProp(cur_node, (const xmlChar *)"password");
+               if(auth_pwd)
+                       in_tuple = g_strdup(auth_pwd);
+               else
+                       in_tuple = g_strdup("");
+               g_hash_table_insert(in_param, "6", g_strdup(in_tuple));
+               msg("auth_pwd = %s", in_tuple);
+               g_free(in_tuple);
+       }
+
+       {//pdp protocol
+               gchar *protocol = NULL;
+               int pdp_protocol = CONTEXT_TYPE_IP;
+               protocol = (char *)xmlGetProp(cur_node, (const xmlChar *)"protocol");
+               if(protocol) {
+                       if(!g_strcmp0(protocol, "IPV6"))
+                               pdp_protocol = CONTEXT_TYPE_IPV6;
+                       else if(!g_strcmp0(protocol, "IPV4V6"))
+                               pdp_protocol = CONTEXT_TYPE_IPV4V6;
+               }
+               g_hash_table_insert(in_param, "7", g_strdup_printf("%d", pdp_protocol));
+               msg("protocol = %s", protocol);
+       }
+
+       {//service category id
+               gchar *svc_type = NULL;
+               svc_type = (char *)xmlGetProp(cur_node, (const xmlChar *)"type");
+               if(NULL != g_strrstr(svc_type, "default")) {
+                       svc_category_id = CONTEXT_ROLE_INTERNET;
+               } else if(!g_strcmp0(svc_type, "mms")) {
+                       svc_category_id = CONTEXT_ROLE_MMS;
+               } else if(!g_strcmp0(svc_type, "dun")) {
+                       svc_category_id = CONTEXT_ROLE_TETHERING;
+               }
+               g_hash_table_insert(in_param, "8", g_strdup_printf("%d", svc_category_id));
+               msg("svc_category_id = %d", svc_category_id);
+       }
+
+       {// proxy ip
+               gchar *proxy_ip_addr = NULL, *proxy = NULL, *port = NULL;
+
+               if(svc_category_id == CONTEXT_ROLE_MMS) {
+                       proxy = (char *)xmlGetProp(cur_node, (const xmlChar *)"mmsproxy");
+                       port = (char *)xmlGetProp(cur_node, (const xmlChar *)"mmsport");
+               } else {
+                       proxy = (char *)xmlGetProp(cur_node, (const xmlChar *)"proxy");
+                       port = (char *)xmlGetProp(cur_node, (const xmlChar *)"port");
+               }
+               if(proxy && port) {
+                       proxy_ip_addr = g_strdup_printf("%s:%s", proxy, port);
+                       in_tuple = g_strdup(proxy_ip_addr);
+                       g_free(proxy_ip_addr);
+               } else {
+                       in_tuple = g_strdup("");
+               }
+               g_hash_table_insert(in_param, "9", g_strdup(in_tuple));
+               msg("proxy_ip_addr = %s", in_tuple);
+               g_free(in_tuple);
+       }
+
+       {//home url
+               gchar *mmsc = NULL;
+               mmsc = (char *)xmlGetProp(cur_node, (const xmlChar *)"mmsc");
+               if(mmsc && svc_category_id == CONTEXT_ROLE_MMS)
+                       in_tuple = g_strdup(mmsc);
+               else
+                       in_tuple = g_strdup("");
+               g_hash_table_insert(in_param, "10", g_strdup(in_tuple));
+               msg("home_url = %s", in_tuple);
+               g_free(in_tuple);
+       }
+
+       {//network info id
+               gchar *plmn = NULL, *mcc = NULL, *mnc = NULL;
+               mcc = (char *)xmlGetProp(cur_node, (const xmlChar *)"mcc");
+               mnc = (char *)xmlGetProp(cur_node, (const xmlChar *)"mnc");
+
+               if(mcc && mnc) {
+                       plmn = g_strdup_printf("%s%s", mcc, mnc);
+                       msg("mccmnc = %s", plmn);
+                       network_info_id = __get_network_id(plmn);
+                       g_free(plmn);
+               }
+               g_hash_table_insert(in_param, "11", g_strdup_printf("%d", network_info_id));
+               msg("network_info_id = %d", network_info_id);
+       }
+
+       {//default internet connection
+               int default_internet_con = 1;
+               if(__get_default_profile_from_database(network_info_id, svc_category_id))
+                       default_internet_con = 0;
+               g_hash_table_insert(in_param, "12", g_strdup_printf("%d", default_internet_con));
+               msg("default_internet_con = %d", default_internet_con);
+       }
+
+       return in_param;
+}
+
+static gboolean __init_global_apns_from_xml(const char *file_path)
+{
+       xmlNode *cur_node = NULL;
+       xmlNodePtr cur, root_node;
+       void *xml_doc = NULL, *xml_root_node = NULL;
+       char *version = NULL;
+       gboolean ret = FALSE;
+
+       // remove pdp_profile table first.
+       __reset_database();
+
+       __load_xml_file(file_path, "apns", &xml_doc, &xml_root_node);
+       if (!xml_root_node) {
+               msg("[APNS CONF] Load error - Root node is NULL.");
+               goto EXIT;
+       }
+       root_node = (xmlNodePtr)xml_root_node;
+       version = (char *)xmlGetProp(root_node, (const xmlChar *)"version");
+       if(version)
+               msg("apns-conf.xml <apns version=\"%s\">", version);
+       cur = root_node->xmlChildrenNode;
+       /* Compare property */
+       for(cur_node = cur; cur_node; cur_node = cur_node->next) {
+               if (cur_node->type == XML_ELEMENT_NODE) {
+                       GHashTable *in_param = NULL;
+                       gchar *svc_type = NULL;
+                       gboolean rv = FALSE;
+
+                       in_param = __construct_profile_tuples(cur_node);
+                       rv = __insert_apns_to_database(in_param);
+                       if(rv == FALSE)
+                               continue;
+
+                       /* duplicate profiles for the same APNs */
+                       svc_type = (char *)xmlGetProp(cur_node, (const xmlChar *)"type");
+                       if(NULL != g_strrstr(svc_type, "default")) {
+                               if(NULL != g_strrstr(svc_type, "mms")) {
+                                       //type="default,supl,mms"
+                                       __duplicate_profile_by_type(in_param, cur_node, CONTEXT_ROLE_MMS);
+                                       if(NULL != g_strrstr(svc_type, "dun")) {
+                                               //type="default,supl,mms,dun"
+                                               __duplicate_profile_by_type(in_param, cur_node, CONTEXT_ROLE_TETHERING);
+                                       }
+                               } else if(NULL != g_strrstr(svc_type, "dun")) {
+                                       //type="default,supl,dun"
+                                       __duplicate_profile_by_type(in_param, cur_node, CONTEXT_ROLE_TETHERING);
+                               }
+                       }
+                       g_hash_table_destroy(in_param);
+               }
+       }
+EXIT:
+       __unload_xml_file(&xml_doc, &xml_root_node);
+       return ret;
+}
+
+
+int main(int arg, char **argv)
+{
+       int rv;
+       __init_global_apns_from_xml("/usr/share/ps-plugin/apns-conf.xml");
+       rv = __system_command("/bin/mkdir /opt/usr/share/telephony");
+       msg("system command sent, rv(%d)", rv);
+       /* remove exist sql */
+       rv = __system_command("/bin/rm /opt/usr/share/telephony/dnet_db_init.sql");
+       msg("system command sent, rv(%d)", rv);
+       /* Dump pdp_profile to sql */
+       rv = __system_command("/usr/bin/sqlite3 /opt/dbspace/.dnet.db .dump | grep \"INSERT INTO \\\"pdp_profile\\\"\" > /opt/usr/share/telephony/dnet_db_init.sql");
+       msg("system command sent, rv(%d)", rv);
+       return 0;
+}
+