From: Richard Röjfors <[email protected]>
The ublox modems always run DHCP when in router mode.
Unfortunately the code overwrote the IP settings with
static IP settings while activating.
Now we respect the networking_mode regardless if
we read settings during activation or read settings
phase.
---
drivers/ubloxmodem/gprs-context.c | 17 ++++++++---------
1 file changed, 8 insertions(+), 9 deletions(-)
diff --git a/drivers/ubloxmodem/gprs-context.c
b/drivers/ubloxmodem/gprs-context.c
index 35abae02..489f31e8 100644
--- a/drivers/ubloxmodem/gprs-context.c
+++ b/drivers/ubloxmodem/gprs-context.c
@@ -235,6 +235,14 @@ static void ublox_read_settings(struct ofono_gprs_context
*gc)
{
struct gprs_context_data *gcd = ofono_gprs_context_get_data(gc);
+ if (gcd->networking_mode == NETWORKING_MODE_ROUTER) {
+ /* Use DHCP */
+ set_gprs_context_interface(gc);
+ ofono_gprs_context_set_ipv4_address(gc, NULL, 0);
+ CALLBACK_WITH_SUCCESS(gcd->cb, gcd->cb_data);
+ return;
+ }
+
if (ublox_send_cgcontrdp(gc) < 0)
CALLBACK_WITH_FAILURE(gcd->cb, gcd->cb_data);
}
@@ -247,15 +255,6 @@ static void ublox_gprs_read_settings(struct
ofono_gprs_context *gc,
DBG("cid %u", cid);
- if (gcd->networking_mode == NETWORKING_MODE_ROUTER) {
- /* Use DHCP */
- gcd->active_context = cid;
- set_gprs_context_interface(gc);
- ofono_gprs_context_set_ipv4_address(gc, NULL, 0);
- CALLBACK_WITH_SUCCESS(cb, data);
- return;
- }
-
gcd->active_context = cid;
gcd->cb = cb;
gcd->cb_data = data;
--
2.19.1
_______________________________________________
ofono mailing list
[email protected]
https://lists.ofono.org/mailman/listinfo/ofono