diff --git a/connection_manager.h b/connection_manager.h
index 58307ff..b50782b 100644
--- a/connection_manager.h
+++ b/connection_manager.h
@@ -20,6 +20,13 @@
   kNetUnknown
 };
 
+enum class NetworkTethering {
+  kNotDetected = 0,
+  kSuspected,
+  kConfirmed,
+  kUnknown
+};
+
 class SystemState;
 
 // This class exposes a generic interface to the connection manager
@@ -32,19 +39,27 @@
   explicit ConnectionManager(SystemState* system_state);
 
   // Populates |out_type| with the type of the network connection
-  // that we are currently connected. The dbus_iface is used to
-  // query the real connection manager (e.g shill).
-  virtual bool GetConnectionType(DBusWrapperInterface* dbus_iface,
-                                 NetworkConnectionType* out_type) const;
+  // that we are currently connected and |out_tethering| with the estimate of
+  // whether that network is being tethered. The dbus_iface is used to query
+  // the real connection manager (e.g shill).
+  virtual bool GetConnectionProperties(DBusWrapperInterface* dbus_iface,
+                                       NetworkConnectionType* out_type,
+                                       NetworkTethering* out_tethering) const;
 
   // Returns true if we're allowed to update the system when we're
-  // connected to the internet through the given network connection type.
-  virtual bool IsUpdateAllowedOver(NetworkConnectionType type) const;
+  // connected to the internet through the given network connection type and the
+  // given tethering state.
+  virtual bool IsUpdateAllowedOver(NetworkConnectionType type,
+                                   NetworkTethering tethering) const;
 
   // Returns the string representation corresponding to the given
   // connection type.
   virtual const char* StringForConnectionType(NetworkConnectionType type) const;
 
+  // Returns the string representation corresponding to the given tethering
+  // state.
+  virtual const char* StringForTethering(NetworkTethering tethering) const;
+
  private:
   // The global context for update_engine
   SystemState* system_state_;
