Pass dns domain info to resolver.

bug:6799630
Change-Id: I2e1eb75562a7fba005f830ef1350386b9924a8a3
diff --git a/CommandListener.cpp b/CommandListener.cpp
index 7b82682..fbbff89 100644
--- a/CommandListener.cpp
+++ b/CommandListener.cpp
@@ -887,9 +887,10 @@
                     "Wrong number of arguments to resolver setdefaultif", false);
             return 0;
         }
-    } else if (!strcmp(argv[1], "setifdns")) { // "resolver setifdns <iface> <dns1> <dns2> ..."
-        if (argc >= 4) {
-            rc = sResolverCtrl->setInterfaceDnsServers(argv[2], &argv[3], argc - 3);
+    } else if (!strcmp(argv[1], "setifdns")) {
+        // "resolver setifdns <iface> <domains> <dns1> <dns2> ..."
+        if (argc >= 5) {
+            rc = sResolverCtrl->setInterfaceDnsServers(argv[2], argv[3], &argv[4], argc - 4);
         } else {
             cli->sendMsg(ResponseCode::CommandSyntaxError,
                     "Wrong number of arguments to resolver setifdns", false);
diff --git a/ResolverController.cpp b/ResolverController.cpp
index 23554e8..08a54a7 100644
--- a/ResolverController.cpp
+++ b/ResolverController.cpp
@@ -37,12 +37,12 @@
     return 0;
 }
 
-int ResolverController::setInterfaceDnsServers(const char* iface, char** servers, int numservers) {
+int ResolverController::setInterfaceDnsServers(const char* iface, const char* domains,
+        char** servers, int numservers) {
     if (DBG) {
         ALOGD("setInterfaceDnsServers iface = %s\n", iface);
     }
-
-    _resolv_set_nameservers_for_iface(iface, servers, numservers);
+    _resolv_set_nameservers_for_iface(iface, servers, numservers, domains);
 
     return 0;
 }
diff --git a/ResolverController.h b/ResolverController.h
index c6260da..9cb88ab 100644
--- a/ResolverController.h
+++ b/ResolverController.h
@@ -26,7 +26,8 @@
     virtual ~ResolverController() {};
 
     int setDefaultInterface(const char* iface);
-    int setInterfaceDnsServers(const char* iface, char** servers, int numservers);
+    int setInterfaceDnsServers(const char* iface, const char * domains, char** servers,
+            int numservers);
     int setInterfaceAddress(const char* iface, struct in_addr* addr);
     int flushDefaultDnsCache();
     int flushInterfaceDnsCache(const char* iface);