From 5627d0d9d59bc7a5cc0830bcd9f2ab3403ba4174 Mon Sep 17 00:00:00 2001 From: "arron.wang" Date: Fri, 20 Jul 2012 16:03:05 +0800 Subject: Tizen: Add option to disable link local address When dhcp is failed, the user may can't auto-generate IP address, IPV4 link local address may puzzle user when we are connected but failed to surf the Internet --- configure.ac | 7 +++++++ src/dhcp.c | 11 +++++++++++ 2 files changed, 18 insertions(+) diff --git a/configure.ac b/configure.ac index ebc8170a..57b06947 100644 --- a/configure.ac +++ b/configure.ac @@ -377,6 +377,13 @@ if (test "${enable_wifi}" != "no"); then $PATH:/sbin:/usr/sbin) fi +AC_ARG_ENABLE(linklocaladdr, AC_HELP_STRING([--disable-linklocaladdr], + [disable link local address when dhcp failed]), [ + if (test "${enableval}" = "no"); then + CFLAGS="$CFLAGS -DDISABLE_LINK_LOCAL_ADDR" + fi +]) + AC_ARG_ENABLE(datafiles, AC_HELP_STRING([--disable-datafiles], [don't install configuration and data files]), [enable_datafiles=${enableval}]) diff --git a/src/dhcp.c b/src/dhcp.c index f32bfaef..c5c14a8a 100644 --- a/src/dhcp.c +++ b/src/dhcp.c @@ -368,6 +368,17 @@ static void ipv4ll_available_cb(GDHCPClient *dhcp_client, gpointer user_data) if (service == NULL) return; +#if defined DISABLE_LINK_LOCAL_ADDR + dhcp_invalidate(dhcp, TRUE); + + __connman_service_ipconfig_indicate_state(service, + CONNMAN_SERVICE_STATE_IDLE, + CONNMAN_IPCONFIG_TYPE_IPV4); + __connman_service_ipconfig_indicate_state(service, + CONNMAN_SERVICE_STATE_IDLE, + CONNMAN_IPCONFIG_TYPE_IPV6); + return; +#endif ipconfig = __connman_service_get_ip4config(service); if (ipconfig == NULL) return; -- cgit v1.2.3