On Mon, 2014-12-22 at 13:01 +0200, pasi.sjoh...@jolla.com wrote:
> From: Pasi Sjöholm <pasi.sjoh...@jollamobile.com>
> 
> ---
>  plugins/ofono.c | 25 ++++++++++++++-----------
>  1 file changed, 14 insertions(+), 11 deletions(-)
> 
> diff --git a/plugins/ofono.c b/plugins/ofono.c
> index 1617764..782c93e 100644
> --- a/plugins/ofono.c
> +++ b/plugins/ofono.c
> @@ -824,20 +824,23 @@ static void extract_ipv4_settings(DBusMessageIter 
> *array,
>  
>       context->index = index;
>  
> -     if (context->ipv4_method != CONNMAN_IPCONFIG_METHOD_FIXED)
> -             goto out;
> +     if (address) {
>  
> -     context->ipv4_address = 
> connman_ipaddress_alloc(CONNMAN_IPCONFIG_TYPE_IPV4);
> -     if (!context->ipv4_address) {
> -             context->index = -1;
> -             goto out;
> -     }
> +             if (context->ipv4_method != CONNMAN_IPCONFIG_METHOD_FIXED)
> +                     goto out;
>  
> -     connman_ipaddress_set_ipv4(context->ipv4_address, address,
> -                             netmask, gateway);
> +             context->ipv4_address = 
> connman_ipaddress_alloc(CONNMAN_IPCONFIG_TYPE_IPV4);
> +             if (!context->ipv4_address) {
> +                     context->index = -1;
> +                     goto out;
> +             }
>  
> -     g_free(context->ipv4_nameservers);
> -     context->ipv4_nameservers = nameservers;
> +             connman_ipaddress_set_ipv4(context->ipv4_address, address,
> +                                     netmask, gateway);
> +
> +             g_free(context->ipv4_nameservers);
> +             context->ipv4_nameservers = nameservers;
> +     }
>  
>  out:
>       if (context->ipv4_nameservers != nameservers)

NACK.

From your other mail:
{ConnectionContext} [/ril_0/context1] Settings = { Gateway =
10.233.105.246, Address = 10.233.105.245, Method = static, Netmask =
255.255.255.0, Interface = rmnet0, DomainNameServers = 62.241.198.245
62.241.198.246 }
...
{ConnectionContext} [/ril_0/context1] IPv6.Settings = { Gateway =
2001::1223, Address = 2001::8a0f, Interface = rmnet0, DomainNameServers
= 2001::0001 2001::0002 }

This clearly shows oFono is sending DomainNameServers which ConnMan does
not have any reason not to use. Unless some RFC clearly says
DomainNameServers are to be ignored if updated via DHCP or stateless
DHCPv6.

I don't see anything *invalid* being sent/stale information being used
by the code.

Cheers,

        Patrik


As your ofono trace shows, 

_______________________________________________
connman mailing list
connman@connman.net
https://lists.connman.net/mailman/listinfo/connman

Reply via email to