Unduplicate IPv6 address setting code.

Currently, the IPv6 address gets set in two different codepaths
depending on whether it's being configured on startup or happens
because the interface changed its prefix. Refactor the two into
a common function.

Change-Id: I37035401bef7a57ff40540bd0f2aed0f6863269d
diff --git a/config.h b/config.h
index 654e909..a56d6fc 100644
--- a/config.h
+++ b/config.h
@@ -19,7 +19,6 @@
 #define __CONFIG_H__
 
 #include <netinet/in.h>
-#include <sys/system_properties.h>
 
 #define DEFAULT_IPV4_LOCAL_SUBNET "192.0.0.4"
 
@@ -31,7 +30,7 @@
   struct in6_addr ipv6_host_id;
   struct in_addr ipv4_local_subnet;
   struct in6_addr plat_subnet;
-  char default_pdp_interface[PROP_VALUE_MAX];
+  char *default_pdp_interface;
   char *plat_from_dns64_hostname;
 };