shill: vpn: Parse route options through openvpn notify callback.

BUG=chromium-os:27056
TEST=unit tests

Change-Id: Ia69e87c040936a7375cb31a69b3724f39be580d6
Reviewed-on: https://gerrit.chromium.org/gerrit/17314
Commit-Ready: Darin Petkov <petkov@chromium.org>
Reviewed-by: Darin Petkov <petkov@chromium.org>
Tested-by: Darin Petkov <petkov@chromium.org>
diff --git a/ipconfig.h b/ipconfig.h
index ed2fc35..b3afed2 100644
--- a/ipconfig.h
+++ b/ipconfig.h
@@ -17,6 +17,7 @@
 #include "shill/ip_address.h"
 #include "shill/property_store.h"
 #include "shill/refptr_types.h"
+#include "shill/routing_table_entry.h"
 
 namespace shill {
 class ControlInterface;
@@ -28,6 +29,12 @@
 // class.
 class IPConfig : public base::RefCounted<IPConfig> {
  public:
+  struct Route {
+    std::string host;
+    std::string netmask;
+    std::string gateway;
+  };
+
   struct Properties {
     Properties() : address_family(IPAddress::kFamilyUnknown),
                    subnet_cidr(0),
@@ -44,6 +51,7 @@
     std::string method;
     std::string peer_address;
     int32 mtu;
+    std::vector<Route> routes;
   };
 
   IPConfig(ControlInterface *control_interface, const std::string &device_name);