shill: vpn: Disconnect VPN service when underlying connection disconnects.
BUG=chromium-os:30737,chromium-os:30774
TEST=unit tests, tested on device with 000OpenVPNGenesis
Change-Id: Ib350cb23edd3e68b3bd5390378789a6b60857b80
Reviewed-on: https://gerrit.chromium.org/gerrit/22461
Tested-by: Darin Petkov <petkov@chromium.org>
Reviewed-by: Paul Stewart <pstew@chromium.org>
Reviewed-by: mukesh agrawal <quiche@chromium.org>
Commit-Ready: Darin Petkov <petkov@chromium.org>
diff --git a/l2tp_ipsec_driver.h b/l2tp_ipsec_driver.h
index da25fdf..d624c83 100644
--- a/l2tp_ipsec_driver.h
+++ b/l2tp_ipsec_driver.h
@@ -42,6 +42,7 @@
int interface_index);
virtual void Connect(const VPNServiceRefPtr &service, Error *error);
virtual void Disconnect();
+ virtual void OnConnectionDisconnected();
virtual std::string GetProviderType() const;
private:
@@ -59,6 +60,7 @@
FRIEND_TEST(L2TPIPSecDriverTest, InitPSKOptions);
FRIEND_TEST(L2TPIPSecDriverTest, Notify);
FRIEND_TEST(L2TPIPSecDriverTest, NotifyFail);
+ FRIEND_TEST(L2TPIPSecDriverTest, OnConnectionDisconnected);
FRIEND_TEST(L2TPIPSecDriverTest, OnL2TPIPSecVPNDied);
FRIEND_TEST(L2TPIPSecDriverTest, ParseIPConfiguration);
FRIEND_TEST(L2TPIPSecDriverTest, SpawnL2TPIPSecVPN);