From 6a46f3384b3f48e6ef77a83a5e058a47a2939a0d Mon Sep 17 00:00:00 2001 From: Paul Jensen Date: Wed, 6 Aug 2014 18:42:27 +0000 Subject: [PATCH] Revert DNS cache flush command deletion from "Cleanup: Delete dead code." This reverts part of commit 1604e18615f824adb2d54c36320069ba6fcb4796. The DNS cache flushing code needs to be called when routes change. Change-Id: I20d39eabfa088deeeeeff0c3292b1910fd948b0d bug:16549455 --- server/CommandListener.cpp | 8 ++++++++ server/ResolverController.cpp | 10 ++++++++++ server/ResolverController.h | 1 + 3 files changed, 19 insertions(+) diff --git a/server/CommandListener.cpp b/server/CommandListener.cpp index cba3731..b946492 100644 --- a/server/CommandListener.cpp +++ b/server/CommandListener.cpp @@ -766,6 +766,14 @@ int CommandListener::ResolverCmd::runCommand(SocketClient *cli, int argc, char * "Wrong number of arguments to resolver setnetdns", false); return 0; } + } else if (!strcmp(argv[1], "flushnet")) { // "resolver flushnet " + if (argc == 3) { + rc = sResolverCtrl->flushDnsCache(strtoul(argv[2], NULL, 0)); + } else { + cli->sendMsg(ResponseCode::CommandSyntaxError, + "Wrong number of arguments to resolver flushnet", false); + return 0; + } } else { cli->sendMsg(ResponseCode::CommandSyntaxError,"Resolver unknown command", false); return 0; diff --git a/server/ResolverController.cpp b/server/ResolverController.cpp index 8d807af..a5d69ae 100644 --- a/server/ResolverController.cpp +++ b/server/ResolverController.cpp @@ -37,3 +37,13 @@ int ResolverController::setDnsServers(unsigned netId, const char* domains, return 0; } + +int ResolverController::flushDnsCache(unsigned netId) { + if (DBG) { + ALOGD("flushDnsCache netId = %u\n", netId); + } + + _resolv_flush_cache_for_net(netId); + + return 0; +} diff --git a/server/ResolverController.h b/server/ResolverController.h index cba3263..0c245d7 100644 --- a/server/ResolverController.h +++ b/server/ResolverController.h @@ -27,6 +27,7 @@ public: int setDnsServers(unsigned netid, const char * domains, const char** servers, int numservers); + int flushDnsCache(unsigned netid); // TODO: Add deleteDnsCache(unsigned netId) }; -- 2.11.0