---
 drivers/mbmmodem/gprs-context.c |   21 +++++++++++++++++++++
 1 files changed, 21 insertions(+), 0 deletions(-)

diff --git a/drivers/mbmmodem/gprs-context.c b/drivers/mbmmodem/gprs-context.c
index ecbafa0..d3e03b7 100644
--- a/drivers/mbmmodem/gprs-context.c
+++ b/drivers/mbmmodem/gprs-context.c
@@ -172,6 +172,25 @@ error:
        CALLBACK_WITH_FAILURE(cb, data);
 }
 
+static void mbm_gprs_create_interface(struct ofono_gprs_context *gc,
+                                       struct ofono_gprs_primary_context *ctx)
+{
+       const char *interface;
+       struct ofono_modem *modem = ofono_gprs_context_get_modem(gc);
+
+       interface = ofono_modem_get_string(modem, "NetworkInterface");
+
+       g_free(ctx->interface);
+       ctx->interface = g_strdup(interface);
+}
+
+static void mbm_gprs_destroy_interface(struct ofono_gprs_context *gc,
+                                       struct ofono_gprs_primary_context *ctx)
+{
+       g_free(ctx->interface);
+       ctx->interface = NULL;
+}
+
 static void e2nap_notifier(GAtResult *result, gpointer user_data)
 {
        struct ofono_gprs_context *gc = user_data;
@@ -237,6 +256,8 @@ static struct ofono_gprs_context_driver driver = {
        .remove                 = mbm_gprs_context_remove,
        .activate_primary       = mbm_gprs_activate_primary,
        .deactivate_primary     = mbm_gprs_deactivate_primary,
+       .create_interface       = mbm_gprs_create_interface,
+       .destroy_interface      = mbm_gprs_destroy_interface,
 };
 
 void mbm_gprs_context_init()
-- 
1.6.1.3

_______________________________________________
ofono mailing list
ofono@ofono.org
http://lists.ofono.org/listinfo/ofono

Reply via email to