netd: Accept NetId instead of interface name in DNS resolver commands.

Conflicts:
	DnsProxyListener.cpp
	NetworkController.cpp
	NetworkController.h

Change-Id: Ic82b73de6f50d39d56c5e1a32f5b1f3ebb80bb7d
diff --git a/NetworkController.cpp b/NetworkController.cpp
index efa23f1..395798d 100644
--- a/NetworkController.cpp
+++ b/NetworkController.cpp
@@ -38,16 +38,13 @@
 
 NetworkController::NetworkController(PermissionsController* permissionsController,
                                      RouteController* routeController)
-        : mDefaultNetId(NETID_UNSET),
-          mNextFreeNetId(MIN_NET_ID),
-          mPermissionsController(permissionsController),
+        : mPermissionsController(permissionsController),
           mRouteController(routeController) {
 }
 
 void NetworkController::clearNetworkPreference() {
     android::RWLock::AutoWLock lock(mRWLock);
     mUidMap.clear();
-    mPidMap.clear();
 }
 
 unsigned NetworkController::getDefaultNetwork() const {
@@ -94,15 +91,6 @@
     return status;
 }
 
-void NetworkController::setNetworkForPid(int pid, unsigned netId) {
-    android::RWLock::AutoWLock lock(mRWLock);
-    if (netId == 0) {
-        mPidMap.erase(pid);
-    } else {
-        mPidMap[pid] = netId;
-    }
-}
-
 bool NetworkController::setNetworkForUidRange(int uid_start, int uid_end, unsigned netId,
         bool forward_dns) {
     android::RWLock::AutoWLock lock(mRWLock);
@@ -134,8 +122,7 @@
     return false;
 }
 
-unsigned NetworkController::getNetwork(int uid, unsigned requested_netId, int pid,
-        bool for_dns) const {
+unsigned NetworkController::getNetwork(int uid, unsigned requested_netId, bool for_dns) const {
     android::RWLock::AutoRLock lock(mRWLock);
     for (std::list<UidEntry>::const_iterator it = mUidMap.begin(); it != mUidMap.end(); ++it) {
         if (uid < it->uid_start || it->uid_end < uid)
@@ -146,11 +133,6 @@
     }
     if (isNetIdValid(requested_netId))
         return requested_netId;
-    if (pid != PID_UNSPECIFIED) {
-        std::map<int, unsigned>::const_iterator it = mPidMap.find(pid);
-        if (it != mPidMap.end())
-            return it->second;
-    }
     return mDefaultNetId;
 }
 
@@ -158,10 +140,7 @@
     std::map<std::string, unsigned>::const_iterator it = mIfaceNetidMap.find(interface);
     if (it != mIfaceNetidMap.end())
         return it->second;
-
-    unsigned netId = mNextFreeNetId++;
-    mIfaceNetidMap[interface] = netId;
-    return netId;
+    return NETID_UNSET;
 }
 
 bool NetworkController::createNetwork(unsigned netId, const char* interface,
@@ -183,6 +162,7 @@
 
     mPermissionsController->setPermissionForNetwork(permission, netId);
     mNetIdToInterfaces.insert(std::pair<unsigned, std::string>(netId, interface));
+    mIfaceNetidMap[interface] = netId;
     return true;
 }