shill: vpn: Conditionally build VPN support into shill.
VPN is disabled if SHILL_VPN=0 is passed to the Makefile.
BUG=chromium-os:39329
TEST=Together with I9e4d5741cbdcd99c9c109259167d87dbff04ee7a:
- FEATURES=test emerge-lumpy shill;
- After unmerging dependencies, FEATURES=test USE=-vpn emerge-lumpy shill
- Connected to OpenVPN successfully with default USE flags.
- Tested connectivity with shill with no VPN support.
Change-Id: I480a5911a4310ff9f80ca312db2a1bc3fe67bbd1
Reviewed-on: https://gerrit.chromium.org/gerrit/45740
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Queue: Darin Petkov <petkov@chromium.org>
Tested-by: Darin Petkov <petkov@chromium.org>
diff --git a/vpn_provider.cc b/vpn_provider.cc
index 754b1a1..dbadcbc 100644
--- a/vpn_provider.cc
+++ b/vpn_provider.cc
@@ -144,6 +144,13 @@
Error *error) {
SLOG(VPN, 2) << __func__ << " type " << type << " name " << name
<< " storage id " << storage_id;
+#if defined(DISABLE_VPN)
+
+ Error::PopulateAndLog(error, Error::kNotSupported, "VPN is not supported.");
+ return NULL;
+
+#else
+
scoped_ptr<VPNDriver> driver;
if (type == flimflam::kProviderOpenVpn) {
driver.reset(new OpenVPNDriver(
@@ -170,6 +177,8 @@
manager_->RegisterService(service);
return service;
+
+#endif // DISABLE_VPN
}
VPNServiceRefPtr VPNProvider::FindService(const std::string &type,