diff options
author | Abhishek Sansanwal <abhishek.s94@samsung.com> | 2017-08-03 09:27:22 +0530 |
---|---|---|
committer | Abhishek Sansanwal <abhishek.s94@samsung.com> | 2017-08-03 09:27:22 +0530 |
commit | fd3573b27dcecd10afaaabada6892a0e65974e44 (patch) | |
tree | 18223155b852ec01834c1c247acbe1a3690ca8ec /src | |
parent | 1b56f4d34a2583a30be96f9e0e5dd44ab4c30be8 (diff) | |
download | connman-fd3573b27dcecd10afaaabada6892a0e65974e44.tar.gz connman-fd3573b27dcecd10afaaabada6892a0e65974e44.tar.bz2 connman-fd3573b27dcecd10afaaabada6892a0e65974e44.zip |
Changes required for DHCP leased seconds APIsubmit/tizen/20170809.085632submit/tizen/20170808.043745accepted/tizen/unified/20170811.021044
Change-Id: I0727c24f30be5162d27e49996dfa376348f98527
Signed-off-by: Abhishek Sansanwal <abhishek.s94@samsung.com>
Diffstat (limited to 'src')
-rwxr-xr-x | src/connman.h | 5 | ||||
-rwxr-xr-x | src/dhcp.c | 9 | ||||
-rwxr-xr-x | src/ipconfig.c | 14 |
3 files changed, 28 insertions, 0 deletions
diff --git a/src/connman.h b/src/connman.h index 7c44d1c1..237c1ec7 100755 --- a/src/connman.h +++ b/src/connman.h @@ -367,6 +367,11 @@ const char *__connman_ipconfig_get_broadcast(struct connman_ipconfig *ipconfig); void __connman_ipconfig_set_broadcast(struct connman_ipconfig *ipconfig, const char *broadcast); const char *__connman_ipconfig_get_gateway(struct connman_ipconfig *ipconfig); void __connman_ipconfig_set_gateway(struct connman_ipconfig *ipconfig, const char *gateway); + +#if defined TIZEN_EXT +void __connman_ipconfig_set_dhcp_lease_duration(struct connman_ipconfig *ipconfig, int dhcp_lease_duration); +#endif + unsigned char __connman_ipconfig_get_prefixlen(struct connman_ipconfig *ipconfig); void __connman_ipconfig_set_prefixlen(struct connman_ipconfig *ipconfig, unsigned char prefixlen); @@ -473,6 +473,10 @@ static void lease_available_cb(GDHCPClient *dhcp_client, gpointer user_data) __connman_ipconfig_set_dhcp_address(dhcp->ipconfig, address); DBG("last address %s", address); +#if defined TIZEN_EXT + int dhcp_lease_duration = g_dhcp_client_get_dhcp_lease_duration(dhcp_client); +#endif + option = g_dhcp_client_get_option(dhcp_client, G_DHCP_SUBNET); if (option) netmask = g_strdup(option->data); @@ -505,6 +509,11 @@ static void lease_available_cb(GDHCPClient *dhcp_client, gpointer user_data) __connman_ipconfig_set_method(dhcp->ipconfig, CONNMAN_IPCONFIG_METHOD_DHCP); + +#if defined TIZEN_EXT + __connman_ipconfig_set_dhcp_lease_duration(dhcp->ipconfig, dhcp_lease_duration); +#endif + if (ip_change) { __connman_ipconfig_set_local(dhcp->ipconfig, address); __connman_ipconfig_set_prefixlen(dhcp->ipconfig, prefixlen); diff --git a/src/ipconfig.c b/src/ipconfig.c index 411fc450..700384fe 100755 --- a/src/ipconfig.c +++ b/src/ipconfig.c @@ -53,6 +53,10 @@ struct connman_ipconfig { struct connman_ipaddress *address; struct connman_ipaddress *system; +#if defined TIZEN_EXT + int dhcp_lease_duration; +#endif + int ipv6_privacy_config; char *last_dhcp_address; char **last_dhcpv6_prefixes; @@ -1098,6 +1102,14 @@ void __connman_ipconfig_set_gateway(struct connman_ipconfig *ipconfig, } #if defined TIZEN_EXT +void __connman_ipconfig_set_dhcp_lease_duration(struct connman_ipconfig *ipconfig, + int dhcp_lease_duration) +{ + ipconfig->dhcp_lease_duration = dhcp_lease_duration; +} +#endif + +#if defined TIZEN_EXT int __connman_ipconfig_gateway_add(struct connman_ipconfig *ipconfig, struct connman_service *service) #else int __connman_ipconfig_gateway_add(struct connman_ipconfig *ipconfig) @@ -1903,6 +1915,8 @@ void __connman_ipconfig_append_ipv4(struct connman_ipconfig *ipconfig, DBUS_TYPE_STRING, &server_ip); g_free(server_ip); } + connman_dbus_dict_append_basic(iter, "DHCPLeaseDuration", + DBUS_TYPE_INT32, &ipconfig->dhcp_lease_duration); } #endif } |