History log of /system/netd/server/CommandListener.cpp
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
31701a903560b165f8241d34b9d98c18b8aaad6a 06-Apr-2016 Erik Kline <ek@google.com> Merge "Remove "resolver flushnet <netid>" command." into nyc-dev
767cd3fc050503a52bb03ce1ac72dc6ae2788666 06-Apr-2016 Erik Kline <ek@google.com> Remove "resolver flushnet <netid>" command.

Change-Id: I117adc3c7e240597e7fd91c709898bbbbe988261
/system/netd/server/CommandListener.cpp
95f5f94aa4c10893b9118b9b79138a1500b5d85b 09-Mar-2016 Pierre Imai <imaipi@google.com> DO NOT MERGE: Let netd to use the new set_nameservers_for_net call.

Also add more test for netd's resolver.

(cherry picked from commit 12f6baf16328cdeea8f079616c2c44ac28f82496)

Change-Id: I446f11b3462522ec3a18c2a3ec9401ad6cf77e8b
/system/netd/server/CommandListener.cpp
dedd271d9961dbe8b99ffa7d54ffd63ac326f866 21-Mar-2016 Lorenzo Colitti <lorenzo@google.com> Add a binder RPC to enable/disable data saver.

Bug: 26685616
Bug: 27506285
Change-Id: Id11ee717cfc1c79070b6bbec397986c25947646c
/system/netd/server/CommandListener.cpp
a33d47992ca04eb3f911fa41ca9d3794f1986b27 17-Mar-2016 Lorenzo Colitti <lorenzo@google.com> Remove the ability to enable/disable the happy box.

This code is unused, and the plan is to have the happy box
enabled at all times.

Bug: 26685616
Bug: 27506285
Change-Id: Ie15b0775d535df7ca94547a7d8b8a5ed536e6dbd
/system/netd/server/CommandListener.cpp
0434d459827861734d1228736a426b14b01595ab 02-Mar-2016 Lorenzo Colitti <lorenzo@google.com> Merge changes I2dc1a074,Ic83d8160,I246696c4 into nyc-dev

* changes:
Move SockDiagTest into system/netd/server.
Add an RPC to replace a UID firewall rule.
Allow finer-grained locking, and use it in FirewallCmd.
a31db12406330d0bcbae85a35e83ff1ae76d81c3 01-Mar-2016 Felipe Leme <felipeal@google.com> Merge "Created a firewall chain for power save mode." into nyc-dev
ddf2d5bc87fe6de7cae2b73a17dbaf35033565ca 26-Feb-2016 Lorenzo Colitti <lorenzo@google.com> Allow finer-grained locking, and use it in FirewallCmd.

FirewallController is stateless and FirewallCmd does not access
any other controllers, so it is safe not to take the big netd
lock.

Bug: 27239233
Change-Id: I246696c4b17fa005c7d6b38ecd627747aa608831
/system/netd/server/CommandListener.cpp
1cfa54374f5ba63d69d6fcca767c4f6647cb6de2 24-Feb-2016 Pierre Imai <imaipi@google.com> Wrap netd's controller to make them usable from other classes

Change-Id: Icb76b43e89c5a9e5806b95002d3653dd99912494
/system/netd/server/CommandListener.cpp
e4d626ea35b7a402388b524e2feafc81e6387697 02-Feb-2016 Lorenzo Colitti <lorenzo@google.com> Initial netd binder interface.

In this change:

1. AIDL files for a new, android.net.INetd service, and
corresponding implementation using generated code. For now the
interface is just a prototype: it only has one trivial method.
2. Permission checking code to check for CONNECTIVITY_INTERNAL.
3. Add a Big Netd Lock and provide a wrapper that makes it easy
to ensure that it is taken by every CommandListener command.

Bug: 27239233
Change-Id: I448d0ac233edd0e351a7fe7f13901fb6871683a2
/system/netd/server/CommandListener.cpp
5e69c7f6c92678ccbc75e77dbb661d9bdc0dec83 05-Feb-2016 Erik Kline <ek@google.com> Switch to ifc_add_address() for setcfg

This avoids the issue where, for example, 10.0.0.1/8 is added first,
then 10.0.0.1/8 is deleted, and 10.0.0.1/24 is added. Netlink changes
observed at the wrong time would make it seem as though IPv4 had
been lost when in fact everthing was fine.

Bug: 26991160

(cherry picked from commit 397fbc056c1ae1478f0311feab3a8a44cc6a4685)

Change-Id: Ia5a5fcdd01e0950ac099c2054d74f0c52aa20b9c
/system/netd/server/CommandListener.cpp
3f62434145c43e85436b86ed9b95a550bbdf486b 11-Feb-2016 Felipe Leme <felipeal@google.com> Created a firewall chain for power save mode.

When power-save mode was first implemented, there were no firewall rules
on netd, so the solution was to make all network interface metered and
re-use the bw_penalty_box chain.

This change removes that workaround by creating a explicit fw_powersave
chain, whose behavior is similar to fw_dozable (in fact, it reuses some
of its code); such change not only makes network restrictions on
power-save mode simpler, but it also allows to optimze how the restrict
network rules are changed.

BUG: 27127112
Change-Id: I52aee49d80386594e3a52fea9667d580d2d944a1
/system/netd/server/CommandListener.cpp
f90a8b92eaf5e74979f589f1f6d3fa403dc26680 13-Nov-2015 Erik Kline <ek@google.com> Pass both IPv4 and IPv6 nameservers to dnsmasq

Additionally, store and return a list of strings for
DNS forwarders, since that's what is most useful. These
strings are guaranteed to be valid IP string literals by
virtue of validation on input.

Bug: 9580643
Change-Id: I4fbaf19835055b12e38d585c0bfba0d2b18b9717
/system/netd/server/CommandListener.cpp
13fa01fab904679970e4b95357f8eed7327b6d49 12-Nov-2015 Erik Kline <ek@google.com> Change dnsmasq input command argument separator

Heretofore netd issued commands to dnsmasq over a stdin channel
using ":" as an argument separator. This make it very complicated
to issue commands that involve IPv6 addresses.

This changes the separator from ":" to "|".

Additionally:

- Pass DHCP range string literals through to startTethering(),
still performing string literal to IPv4 address validation.

Bug: 9580643
Change-Id: I210daf311a4c3d84dae3ed054b92c9fa399a791f
/system/netd/server/CommandListener.cpp
1cdfa9adfa584029cb6d9ac13a2896786001b3a1 09-Jun-2015 Xiaohui Chen <xiaohuic@google.com> netd: add two child chains to firewall

This is an attempt to speed up getting out of device idle. It groups
uid firewall rules in these child chains so we can attach/detach a whole
chain instead of individual uid rules.

BUG:21446713
Change-Id: I61dc7d14110e633c5994e466481b9cac633a7a4f
/system/netd/server/CommandListener.cpp
390e4ea8106f9e741bc80fb962aaee94d5b28cbb 26-Apr-2015 Amith Yamasani <yamasani@google.com> Blacklist uids for network access

FirewallController can now be in blacklist mode (aka disabled)
or whitelist mode (aka enabled).

Some of the methods don't do anything when in blacklist mode.

Uid rules updated to allow dropping packets to uids that
shouldn't get any network access, usually for idle apps.

Added a wait option to iptables calls to make sure it doesn't
fail if there's contention. Fixes a flakiness I was seeing in
removing rules.

Bug: 20066058
Change-Id: I815bcb45aa06d04020e902df8c67bb3894e98f40
/system/netd/server/CommandListener.cpp
a59c928252869242642edfed689902a488a6298f 01-Apr-2015 Erik Kline <ek@google.com> Corrently log /set/ MTU error.

Change-Id: I90e2d4f64a5c3ec9f640fd7dc41438517110cf68
/system/netd/server/CommandListener.cpp
a4614fe5bfaafd0ff6be60ddb6fd135f99f5a5a5 16-Mar-2015 Vinit Deshpande <vinitd@google.com> Merge remote-tracking branch 'goog/mirror-m-wireless-internal-release'

Change-Id: I51337014e2851f47dd5e183c4bfdf39bafa59942
8656c84dcab2800fd7c1d64bba307527619d7bdb 10-Mar-2015 Vinit Deshpande <vinitd@google.com> am "Parse all netids with stringToNetId."

merged from partner/m-wireless-wifi-dev
6c65afd Parse all netids with stringToNetId.
32d768792bcd5860512998543f6904d91da1a9b7 25-Feb-2015 Lorenzo Colitti <lorenzo@google.com> Separate NAT from forwarding.

Bug: 19500693

Change-Id: Ib3871106ea3c0d68327611e7568c0710210e4ff2
/system/netd/server/CommandListener.cpp
799625cd5b0a2191632f5b042bf9ff559c18a848 24-Feb-2015 Lorenzo Colitti <lorenzo@google.com> Changes to forwarding for wifi calling.

1. Support multiple forwarding requests. Keep track of all
requests inside TetherController, and enable system
forwarding any time there is more than one active request.
2. Enable both IPv4 and IPv6 forwarding.

Bug: 19500693
Change-Id: Ic81bae7b399bc6ebf6a63de4bcd341885638dfa4
/system/netd/server/CommandListener.cpp
6c65afddc22abb87b7c531f283bde42c7e1b7a48 20-Jan-2015 Erik Kline <ek@google.com> Parse all netids with stringToNetId.

Bug: 19049156
Change-Id: Iaa3b1a84afa469dfbc0cd0798271467528196c9d
/system/netd/server/CommandListener.cpp
9adc9f32a45d19b34b5b4c4be7a20396c7e20c22 20-Jan-2015 Erik Kline <ek@google.com> Parse all netids with stringToNetId.

Bug: 19049156
Change-Id: Iaa3b1a84afa469dfbc0cd0798271467528196c9d
/system/netd/server/CommandListener.cpp
732c34ee7cf9fdd93e8e2aa41bac1df231d9b50b 16-Jan-2015 Jeff Sharkey <jsharkey@android.com> am 535b94fa: Merge "Offer to detect non-SSL/TLS network traffic."

* commit '535b94fa9d88097220de3ea04cb8d9a91114baa8':
Offer to detect non-SSL/TLS network traffic.
fbe497fcd808e4317572ad48c42545105309a347 29-Oct-2014 Jeff Sharkey <jsharkey@android.com> Offer to detect non-SSL/TLS network traffic.

Introduces new module that provides network-related features for
the StrictMode developer API. The first feature offers to detect
sockets sending data not wrapped inside a layer of SSL/TLS
encryption.

This carefully only adds overhead to UIDs that have requested
detection, and it uses CONNMARK to quickly accept/reject packets
from streams that have already been inspected. Detection is done
by looking for a well-known TLS handshake header; it's not future
proof, but it's a good start. Handles both IPv4 and IPv6.

When requested, we also log the triggering packet through NFLOG and
back up to the framework to aid investigation.

Bug: 18335678
Change-Id: Ie8fab785139dfb55a71b6dc7a0f3c75a8408224b
/system/netd/server/CommandListener.cpp
dadc5f850ee7a4dbe9ed418ae9d363b237f7a0e8 29-Nov-2014 Lorenzo Colitti <lorenzo@google.com> Add a command to clear a network's DNS servers.

Bug: 18327075
Change-Id: I0df13ff4a17ee65e640be96695a3af31b020963a
/system/netd/server/CommandListener.cpp
584dbee59ceb7750e22c48371342635aa6a98517 04-Nov-2014 Sreeram Ramachandran <sreeram@google.com> Don't use framework permission strings for netd permissions.

These framework permission strings were being used as arbitrary labels
that mapped to netd permissions that have completely different meaning.
This leads to confusion, so use different strings.

Bug: 18194858
Change-Id: Ib3ec377ab26ce904d3d4678f04edec6cb1260517
/system/netd/server/CommandListener.cpp
0ea8ff87012f6bda41b6d2b4629d4fd0fd6f4794 27-Oct-2014 Lorenzo Colitti <lorenzo@google.com> Add a netd interface command to disable ND offload.

This will be used to support 464xlat on wifi and IPv6 tethering.

Bug: 12111730
Change-Id: I3b97f4dfb787b2c5d5021811c6da51850bdc70d1
/system/netd/server/CommandListener.cpp
ac7fefcf3d90cf856b0f1664207d056ed1dd4725 20-Oct-2014 Lorenzo Colitti <lorenzo@google.com> Support more than one clatd at a time.

1. Change from a single PID to a map of interface names to PIDs.
2. Make clatd commands take an interface argument.
3. Give the clatd processes names that depend on their parent
interface, e.g., clatd-rmnet0.

Bug: 12111730
Change-Id: Ia770952d6511f8598a3356be5911da4ffa01b46a
/system/netd/server/CommandListener.cpp
e8164ddc8204b626c1144a0a504754bf6622c6fd 02-Oct-2014 Lorenzo Colitti <lorenzo@google.com> Fix MSS clamping.

http://ag/553410 added an iptables chain and rule to do MSS
clamping for tethered clients, but did not add the chain to any
other chains, so the rule had no effect.

Fix this by adding the chain to the proper forwarding chains.
Also rename some of the new variables and constants so they are
more consistent with the previous code.

Bug: 17552732
Bug: 17727533
Change-Id: I9fcae31de5c0283d7d9f1dac989de84f77c5e53c
/system/netd/server/CommandListener.cpp
4c95a125e0930c112555437589f7620575482095 18-Sep-2014 Lorenzo Colitti <lorenzo@google.com> Support manipulating throw routes.

We already supported unreachable routes. Throw routes are
necessary so we can exempt the VPN endpoint from being routed
through the VPN in legacy VPN modes that do not pass traffic
through a tun or ppp interface but just directly appply IPsec
transformations to outgoing packets.

Bug: 17462989
Change-Id: I8635472ca3e96ec2866af2de48e6260ab2da13fb
/system/netd/server/CommandListener.cpp
bbdde9909b7b4fd31c5857156ceb00049bf4992d 06-Sep-2014 Sreeram Ramachandran <sreeram@google.com> Reserve NetIds 1..50 for OEM use.

Also reserve 51..100 for our use.

Bug: 17303534
Change-Id: Id082368b493dc3c5b5c479e51d273458d80ec6aa
/system/netd/server/CommandListener.cpp
667c477133318e4779819d34364194c8e5eaf19c 26-Aug-2014 Lorenzo Colitti <lorenzo@google.com> Add a socket mark parameter to tethering DNS commands.

This allows the framework to pass down to dnsmasq the socket mark
to use for DNS queries.

Bug: 16357676
Change-Id: I8933b6de198a92c2aaf0291931ace8966ddba275
/system/netd/server/CommandListener.cpp
6a46f3384b3f48e6ef77a83a5e058a47a2939a0d 06-Aug-2014 Paul Jensen <pauljensen@google.com> 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
/system/netd/server/CommandListener.cpp
de5d5df753dd35d852ac47a6174b06eacd0d5523 27-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Prohibit address families by default unless a VPN explicitly allows them.

Bug: 15972465
Change-Id: I3278d94536fefacc86390c1ba4231680f7be8589
/system/netd/server/CommandListener.cpp
95684ba176a9fe5ea59207d7202e47fa12bbfdbe 23-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Implement support for bypassable VPNs.

Bypassable VPNs grab all traffic by default (just like secure VPNs), but:
+ They allow all apps to choose other networks using the multinetwork APIs.
If these other networks are insecure ("untrusted"), they will enforce that the
app holds the necessary permissions, such as CHANGE_NETWORK_STATE.
+ They support consistent routing. If an app has an existing connection over
some other network when the bypassable VPN comes up, it's not interrupted.

Bug: 15347374
Change-Id: Iaee9c6f6fa8103215738570d2b65d3fcf10343f3
/system/netd/server/CommandListener.cpp
1604e18615f824adb2d54c36320069ba6fcb4796 20-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Cleanup: Delete dead code.

Bug: 15413389
Change-Id: I315468832ef18ffc84174e54774ab63b86d284dc
/system/netd/server/CommandListener.cpp
87475a1471373b72ffc9f81f17dfd7884723fa86 16-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Fix WiFi-Direct and Tethering.

A LocalNetwork object now always exists in the NetworkController, with a fixed
NetId that's guaranteed not to collide with NetIds created by the framework.

When routes are added on an interface tracked by the LocalNetwork, they are
added to a fixed "local_network" table.

When NAT is enabled, we add a special "iif -> oif" tethering rule.

Bug: 15413694
Bug: 15413741

Change-Id: I36effc438d5ac193a77174493bf196cb68a5b97a
/system/netd/server/CommandListener.cpp
6a773534e7f8541f221f27fb8063af079b1a5936 11-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Fix tethering in the case of a regular upstream connection.

Fixes tethering via Ethernet, Bluetooth and WiFi (hotspot).

Tethering when the upstream has a DUN-specific APN is likely still broken
(untested).

For now, assign a fixed NetId (a hack) until we can change the framework to
create a valid NetworkAgent and all that jazz.

Bug: 15968336
Bug: 14988803
Change-Id: Idcf4d492d9329a9c87913e27be6dd835a792bea2
/system/netd/server/CommandListener.cpp
e09b20aee85f1dfd8c18c3d8581ac875d939ba70 06-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Add full support for UIDs in VPNs.

Major:
+ Implement the functions mentioned in http://go/android-multinetwork-routing
correctly, including handling accept(), connect(), setNetworkForSocket()
and protect() and supporting functions like canUserSelectNetwork().
+ Eliminate the old code path of getting/setting UID ranges through
SecondaryTableController (which is currently unused) and mUidMap.

Minor:
+ Rename some methods/variables for clarity and consistency.
+ Moved some methods in .cpp files to match declaration order in the .h files.

Bug: 15409918
Change-Id: Ic6ce3646c58cf645db0d9a53cbeefdd7ffafff93
/system/netd/server/CommandListener.cpp
ed4bd1f7d219f9f5f56763ea02cf4947e78397f6 05-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Fix permissions handling.

+ Rename the permissions as per: http://go/android-multinetwork-routing
+ Make the SYSTEM permission explicitly include NETWORK.
+ Grant the SYSTEM permission to system UIDs by default, but allow the framework
to override them if necessary.
+ Move the "string to permission" parsing to CommandListener.cpp, thus allowing
us to get rid of Permission.cpp.
+ There's no need to support multiple permissions string arguments, so tighten
that up.

Change-Id: I73d51b5e2f44a97e6d5ab5943ff198cebfbcc0c4
/system/netd/server/CommandListener.cpp
89dad013e4dd98434b0409a84567f38782894029 02-Jul-2014 Sreeram Ramachandran <sreeram@google.com> Keep track of users allowed to call protect() explicitly.

This is an API change between ConnectivityService and Netd.

The ownerUid was meant for this purpose, but it's insufficient, as apps need to
call protect() _before_ they create a VPN.

Bug: 15409918
Change-Id: If804aa106002e96d5ffb623d32db35fd76928367
/system/netd/server/CommandListener.cpp
b1425cc09f8a29350520db0d4f489331df5a689b 24-Jun-2014 Sreeram Ramachandran <sreeram@google.com> Add UID range support to VPNs.

This adds the necessary routing rules.

Future CLs will add the ability to select the right netId for connect(),
setNetworkForSocket(), DNS resolutions, etc.

Bug: 15409918
Change-Id: I88a67660d49cecda834dd72ab947fbfed250f09d
/system/netd/server/CommandListener.cpp
4043f01f8e25f24246efadc710ad7440aab75529 23-Jun-2014 Sreeram Ramachandran <sreeram@google.com> Introduce VPN support.

This change sets up the basic routing rules for VPNs. It doesn't yet handle UID
ranges (that are meant to apply to the VPN) correctly. That's forthcoming in
other CLs.

Bug: 15409918
Change-Id: I284de04f176dcf6ba702361de6a614266256d04e
/system/netd/server/CommandListener.cpp
f4f6c8de3f091be4b91a5a9d7f14e8882ec6d502 23-Jun-2014 Sreeram Ramachandran <sreeram@google.com> Refactor: Encapsulate permissions and interfaces into a Network class.

Currently, there's a lot of logic in NetworkController surrounding events such
as interface addition/removal, network creation/destruction and default network
change, because these events are interwined. For example, adding an interface
means also adding a corresponding default network rule if the interface is being
added to the current default network.

When we introduce VPNs into this mix, things will get hairy real quick for all
this logic in NetworkController.

In this refactor, we introduce an abstract base class Network which supports
adding and removing interfaces. The main concrete implementation of this is
PhysicalNetwork, which allows setting permissions and "default network" state.

Since we've moved network permissions into the above class, and user permissions
into NetworkController, PermissionsController is unused and has been removed.

Also fix a few bugs in RouteController:
+ Use uidEnd correctly.
+ Check for all error cases in inet_pton.
+ Check the return value of android_fork_execvp() correctly.
+ The "return cmd1() && cmd2()" pattern is wrong. Rewrite that code.

Also (non-functional changes):
+ Remove instantiations of RouteController. It has static methods only.
+ Reorder some blocks in CommandListener so that the most frequent commands are
checked first.
+ Remove unused paramError() and clearNetworkPreference().
+ Change all return codes to int (negative errno) wherever applicable.
+ Add WARN_UNUSED_RESULT everywhere.
+ Cleanup some style in RouteController and NetworkController.
+ Use uid_t instead of unsigned for user IDs.
+ Add clearer log messages at the source of failures.
+ Add a check for when fwmark bits are set without corresponding mask bits.

Bug: 15409918

Change-Id: Ibba78b0850160f9f3d17d476f16331a6db0025d1
/system/netd/server/CommandListener.cpp
96f261e8b28048b8cb48f5a4e81822c73bb813f4 23-Jun-2014 Lorenzo Colitti <lorenzo@google.com> Pass rule modification errors back to CommandListener.

Change-Id: If01334dccad8b6230648713a57fd58be180ac66b
/system/netd/server/CommandListener.cpp
f7fc8eccb0a6a4fbca4cafdf53f5c167c8f1d755 17-Jun-2014 Lorenzo Colitti <lorenzo@google.com> Pass route add/delete errors back to CommandListener.

Change-Id: Id1d6d578963080e141f71bc1303801fc53bce40a
/system/netd/server/CommandListener.cpp
84c1d035fdef996602ab8878d952c4fcb1f6963d 30-May-2014 Paul Jensen <pauljensen@google.com> Pass NetID to clatd as a command line argument.

Change-Id: I77a47b24e68c7786f790974f05787a40a4934af5
/system/netd/server/CommandListener.cpp
56afacf838d24cf8e54d2cf0d8ab9182ab704125 29-May-2014 Sreeram Ramachandran <sreeram@google.com> Turn on C++11 and make all warnings into errors.

As a consequence:
+ Comment out the names of all unused parameters.
+ Remove all unused variables and functions.

In server/Android.mk, there are a couple of non-trivial changes:
+ Use libcxx instead of stlport. This is needed to fix a bunch of errors due to
specifying -std=c++11.
+ LOCAL_SHARED_LIBRARIES is sorted. Technically, the order in which libraries
are listed has an effect on linking, but nobody should be doing such brittle
things anyway.

Change-Id: I0aff5b745e04609da23144d0e8be4c5694321b8b
/system/netd/server/CommandListener.cpp
38b7af1f2cb9579895465fabc37865f5dadcac25 22-May-2014 Sreeram Ramachandran <sreeram@google.com> Support legacy routes added by apps via ensureRouteToHost().

This adds the routes to two fixed tables:
+ LEGACY, which has higher priority than other non-explicit lookup tables
(per-network and default network).
+ PRIVILEGED_LEGACY, available only to system apps and has higher priority than
VPNs (system apps are those with the CONNECTIVITY_INTERNAL permission).

This will be changed to per-UID tables once the kernel supports UID-based
routing, so that these legacy routes are scoped to each app and not global.

Also, fix a TODO: The framework (as of http://ag/471599) will not set the
gateway argument if it's actually a direct-connected route.

Change-Id: I0ee1ca89fdc859d75a89021ca8c1902811b1e4a9
/system/netd/server/CommandListener.cpp
72604075e74af459fb4637404fbf030422c6b6b6 21-May-2014 Sreeram Ramachandran <sreeram@google.com> Rework the determination of a "valid network".

+ isNetIdValid() doesn't make much sense. What we want is whether the netId has
actually been created (via createNetwork()).
+ It isn't an error to call deleteNetwork() or setDefaultNetwork() even when
there are no interfaces assigned to the network.
+ Secure all accesses to the maps in PermissionsController with locks; they are
called from many threads (CommandListener, DnsProxyListener and FwmarkServer).
+ Remove the redundant mIfaceNetidMap.
+ Minor cosmetic changes to things such as #includes and log messages.

Change-Id: Ieb154589b24f00ba8067eaaec4def3534aec4923
/system/netd/server/CommandListener.cpp
f4cfad361175a7f9ccf4d41e76a9b289c3c3da22 21-May-2014 Sreeram Ramachandran <sreeram@google.com> Move netd_client into netd.

Change-Id: Ie4b6b303225c93f2448a503d6ea9cebb552cbad5
/system/netd/server/CommandListener.cpp