From 0c4a89bb5e3205e47085b93ffec210778e474508 Mon Sep 17 00:00:00 2001 From: Irfan Sheriff Date: Fri, 15 Jul 2011 15:43:21 -0700 Subject: Fix dhcp renew behavior We use the -n option to renew the ip address. The current behavior of the client is to reset and initialize all available interfaces sending traffic on them. Change the behavior to do a renew alone Bug: 4987402 Change-Id: I3004feddf77aea248a9c749333d5c0d5ec9d4d3e --- dhcpcd.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/dhcpcd.c b/dhcpcd.c index e984ceb..791f513 100644 --- a/dhcpcd.c +++ b/dhcpcd.c @@ -1474,6 +1474,12 @@ handle_signal(_unused void *arg) syslog(LOG_INFO, "received SIGTERM, stopping"); break; case SIGALRM: +#ifdef ANDROID + syslog(LOG_INFO, "received SIGALRM, renewing"); + for (ifp = ifaces; ifp; ifp = ifp->next) { + start_renew(ifp); + } +#else syslog(LOG_INFO, "received SIGALRM, rebinding"); for (i = 0; i < ifac; i++) free(ifav[i]); @@ -1495,6 +1501,7 @@ handle_signal(_unused void *arg) options = ifo->options; free_options(ifo); reconf_reboot(1, 0, NULL, 0); +#endif return; case SIGHUP: syslog(LOG_INFO, "received SIGHUP, releasing"); -- cgit v1.1