shill: Implement VPN service disconnect.

BUG=chromium-os:27461,chromium-os:27385
TEST=unit tests

Change-Id: I39c676acf041463a2266c08725f847499e31f5ea
Reviewed-on: https://gerrit.chromium.org/gerrit/17690
Reviewed-by: Darin Petkov <petkov@chromium.org>
Tested-by: Darin Petkov <petkov@chromium.org>
Commit-Ready: Darin Petkov <petkov@chromium.org>
diff --git a/openvpn_driver.h b/openvpn_driver.h
index 0707341..39c8502 100644
--- a/openvpn_driver.h
+++ b/openvpn_driver.h
@@ -49,6 +49,7 @@
   virtual void Connect(const VPNServiceRefPtr &service, Error *error);
   virtual bool ClaimInterface(const std::string &link_name,
                               int interface_index);
+  virtual void Disconnect();
 
  private:
   friend class OpenVPNDriverTest;
@@ -58,6 +59,7 @@
   FRIEND_TEST(OpenVPNDriverTest, Cleanup);
   FRIEND_TEST(OpenVPNDriverTest, Connect);
   FRIEND_TEST(OpenVPNDriverTest, ConnectTunnelFailure);
+  FRIEND_TEST(OpenVPNDriverTest, Disconnect);
   FRIEND_TEST(OpenVPNDriverTest, GetRouteOptionEntry);
   FRIEND_TEST(OpenVPNDriverTest, InitOptions);
   FRIEND_TEST(OpenVPNDriverTest, InitOptionsNoHost);