Hi Denis, On 16/04/2012 15:09, Guillaume Zajac wrote:
Shutdown PPP session if modem did not do it. --- drivers/atmodem/gprs-context.c | 11 +++++++++++ 1 files changed, 11 insertions(+), 0 deletions(-)diff --git a/drivers/atmodem/gprs-context.c b/drivers/atmodem/gprs-context.c index 16893ce..100c80b 100644 --- a/drivers/atmodem/gprs-context.c +++ b/drivers/atmodem/gprs-context.c @@ -239,6 +239,17 @@ static void at_gprs_activate_primary(struct ofono_gprs_context *gc, memcpy(gcd->username, ctx->username, sizeof(ctx->username)); memcpy(gcd->password, ctx->password, sizeof(ctx->password)); + /* + * For some modem, mainly Huawei branded, when GPRS is no more attached + * to the network, oFono core will reset context although the modem + * has not ended ppp sesssion at driver level. + * In this case trigger a disconnection manually and send an error. + */ + if (gcd->ppp != NULL&& gcd->state == STATE_ACTIVE) { + g_at_ppp_shutdown(gcd->ppp); + goto error; + } + gcd->state = STATE_ENABLING; if (gcd->vendor == OFONO_VENDOR_ZTE) {
Do you have any feedback on this fix? Thanks. Kind regards, Guillaume _______________________________________________ ofono mailing list [email protected] http://lists.ofono.org/listinfo/ofono
