diff options
author | Nishanth V <nishanth.v@intel.com> | 2016-04-18 20:45:07 +0530 |
---|---|---|
committer | Denis Kenzior <denkenz@gmail.com> | 2016-04-19 20:53:29 -0500 |
commit | b44f59e5e48742f32085fa47b4bac6ef25edc6fc (patch) | |
tree | b688d9bc91fef8545da8c5ab39855fa8cbbab21c | |
parent | db7faf0ad3a081fe1069fd148b5c54ee942b7786 (diff) | |
download | ofono-b44f59e5e48742f32085fa47b4bac6ef25edc6fc.tar.gz |
gprs-context: fix set ipv4 netmask for rilmodem
-rw-r--r-- | drivers/rilmodem/gprs-context.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/rilmodem/gprs-context.c b/drivers/rilmodem/gprs-context.c index f0a687d8..2bc64459 100644 --- a/drivers/rilmodem/gprs-context.c +++ b/drivers/rilmodem/gprs-context.c @@ -275,6 +275,7 @@ static void ril_setup_data_call_cb(struct ril_msg *message, gpointer user_data) if (raw_addrs) { char **ip_addrs = g_strsplit(raw_addrs, " ", 3); char **split_ip_addr; + char *netmask; if (ip_addrs == NULL || g_strv_length(ip_addrs) == 0) { g_strfreev(ip_addrs); @@ -292,6 +293,9 @@ static void ril_setup_data_call_cb(struct ril_msg *message, gpointer user_data) * explicitly strip any prefix after calculating the netmask */ split_ip_addr = g_strsplit(ip_addrs[0], "/", 2); + + netmask = ril_util_get_netmask(ip_addrs[0]); + g_strfreev(ip_addrs); if (split_ip_addr == NULL || @@ -300,8 +304,7 @@ static void ril_setup_data_call_cb(struct ril_msg *message, gpointer user_data) goto error_free; } - ofono_gprs_context_set_ipv4_netmask(gc, - ril_util_get_netmask(split_ip_addr[0])); + ofono_gprs_context_set_ipv4_netmask(gc, netmask); ofono_gprs_context_set_ipv4_address(gc, split_ip_addr[0], TRUE); } |