Make netd track and notify IP address changes.

Subscribe netd's netlink socket to listen to IPv4 and IPv6
address changes (and ND opts, which we'll need for IPv6 DNS
later), and make NetlinkHandler notify the system of address
changes.

[Cherry-pick of 9b3cd7635caf5948d7d4b11f8f588c9d2811d58e]

Bug: 10232006
Change-Id: Ib9dfd58635dce389980d8ee9529a17661a02320a
Unbreak interface add/delete notifications.

The change to enable address tracking via netlink incorrectly
changed the subsystem of rtnetlink events from "net" to
"interface". This broke interface add/delete notifications,
which come from the kernel with subsystem "net".

Switch back to "net" and deal with address tracking via new
action codes instead of a new subsystem.

[Cherry-pick of 4da12db25b4a2947b1a98b0322e4be56a30c5e17]

Bug: 10433320
Change-Id: I59a50e9c7cb49f46e680c7d84ac8e196a861ca4b
Don't log "Unexpected netlink message" on NDUSEROPT

When opening the netlink socket, NetlinkManager specifies it's
interested in ND_USEROPT messages, but we since we don't have
code to parse them yet, we end up logging an error message for
packets that contain them. Get rid of the logspam by not asking
the kernel to receive them.

[Cherry-pick of a95f8a3426e6a4f17cf41888673f58302781b7be]

Bug: 10718651
Change-Id: Ib1b7748448a983cfa7bb7725e48e238d85152ea2
Simplify notification code in NetlinkHandler.

1. Factor most of the notification code out to a common function.
2. Use vasprintf instead of snprintf so we don't have to worry
   about clipping notifications due to fixed-size message
   buffers.

[Cherry-pick of 0b454ea4abdc8a563af6da58fa37835729220acf]

Bug: 9180552
Change-Id: Idde16ee6dd56d38dab866f0ea678b04d98b3048d
Make netd listen for and notify RDNSS options.

[Cherry-pick of 12acae8db9dee865a41f0fd11dacf01112115920]

Bug: 9180552
Change-Id: Id2485b35c2299cfc455dd2b3b725136e5eb2a7e4
Merge "Make netd track and notify IP address changes."
Merge "Unbreak interface add/delete notifications."
Merge "Don't log "Unexpected netlink message" on NDUSEROPT"
Merge "Simplify notification code in NetlinkHandler."
Merge "Make netd listen for and notify RDNSS options."
am 4006ada5: (-s ours) Merge "Make netd track and notify IP address changes."

* commit '4006ada573f332b5ef4d32273bd4e2c058aa2b73':
  Make netd track and notify IP address changes.
am 1dc26be0: Merge "Unbreak interface add/delete notifications."

* commit '1dc26be03b0ace9a52a23caaa669a4edf9b0bd85':
  Unbreak interface add/delete notifications.
am 634b7b7b: Merge "Don\'t log "Unexpected netlink message" on NDUSEROPT"

* commit '634b7b7b6c83269e5c1ad71b871f8c5a7a020c0d':
  Don't log "Unexpected netlink message" on NDUSEROPT
am 6eeea7cb: Merge "Simplify notification code in NetlinkHandler."

* commit '6eeea7cb5a563cf8369c8373ae469ef1f676d7a9':
  Simplify notification code in NetlinkHandler.
am 22f485dc: Merge "Make netd listen for and notify RDNSS options."

* commit '22f485dc390ba75c76645d2ced812cd1988b6bf0':
  Make netd listen for and notify RDNSS options.
Merge commit 'f0aa90f7898502aae6a015b49abcb2a5a0719fad' into HEAD

Change-Id: If9a70bdfa24a37bab6980194af6fa4f73d9f4bd1
am 57c2b4c8: Merge commit \'f0aa90f7898502aae6a015b49abcb2a5a0719fad\' into HEAD

* commit '57c2b4c8aa5d66cb3198770d1a71f299b8b14470':
tethering: Add --dhcp-authoritative to dnsmasq daemon

Bug: 12114185

Change-Id: I91e83c78de251ebe88bed30174f1422b62edca07
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
Merge "tethering: Add --dhcp-authoritative to dnsmasq daemon"
am 7f4117ee: Merge "tethering: Add --dhcp-authoritative to dnsmasq daemon"

* commit '7f4117ee430e5069bffc89ad4e3841845586951a':
  tethering: Add --dhcp-authoritative to dnsmasq daemon