Re-add netd support for enabling IPv6 optimistic mode.

Enables optimistic_dad and use_optimistic on all interfaces
by default.

---

This functionality was originally submitted in ag/569594.  Owing
to issues with bind()ing to optimistic addresses (see b/18609055)
this was reverted in ag/598690.

This reverts the revert.  :-)

Bug: 17769720
Change-Id: I156e5636341a846f41fb9a15c84cf06878b239d8
diff --git a/server/InterfaceController.cpp b/server/InterfaceController.cpp
index b38c137..b7a4d0b 100644
--- a/server/InterfaceController.cpp
+++ b/server/InterfaceController.cpp
@@ -38,6 +38,9 @@
 	setAcceptRA("2");
 
 	setAcceptRARouteTable(-RouteController::ROUTE_TABLE_OFFSET_FROM_INDEX);
+
+	// Enable optimistic DAD for IPv6 addresses on all interfaces.
+	setIPv6OptimisticMode("1");
 }
 
 InterfaceController::~InterfaceController() {
@@ -147,3 +150,8 @@
 	free(path);
 	return success;
 }
+
+void InterfaceController::setIPv6OptimisticMode(const char *value) {
+	setOnAllInterfaces("optimistic_dad", value);
+	setOnAllInterfaces("use_optimistic", value);
+}