Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(612)

Unified Diff: chrome/browser/chromeos/cros/cros_network_functions.h

Issue 9702005: Call libcros functions through proxy functions (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: More comment fix Created 8 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | chrome/browser/chromeos/cros/cros_network_functions.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/chromeos/cros/cros_network_functions.h
diff --git a/chrome/browser/chromeos/cros/cros_network_functions.h b/chrome/browser/chromeos/cros/cros_network_functions.h
new file mode 100644
index 0000000000000000000000000000000000000000..80848d4d08ed7531b94a43578de01f2090d08a57
--- /dev/null
+++ b/chrome/browser/chromeos/cros/cros_network_functions.h
@@ -0,0 +1,242 @@
+// Copyright (c) 2012 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef CHROME_BROWSER_CHROMEOS_CROS_CROS_NETWORK_FUNCTIONS_H_
+#define CHROME_BROWSER_CHROMEOS_CROS_CROS_NETWORK_FUNCTIONS_H_
+
+#include "third_party/cros/chromeos_network.h"
+
+namespace chromeos {
+
+// This header is introduced to make it easy to switch from chromeos_network.cc
+// to Chrome's own DBus code. crosbug.com/16557
+// All calls to functions in chromeos_network.h should be made through
+// functions provided by this header.
+
+// Activates the cellular modem specified by |service_path| with carrier
+// specified by |carrier|.
+// |carrier| is NULL or an empty string, this will activate with the currently
+// active carrier.
+// Returns false on failure and true on success.
+bool CrosActivateCellularModem(const char* service_path, const char* carrier);
+
+
+// Sets a property of a service to the provided value
+// Success is indicated by the receipt of a matching PropertyChanged signal.
+void CrosSetNetworkServicePropertyGValue(const char* service_path,
+ const char* property,
+ const GValue* gvalue);
+
+// Clears a property of a service
+void CrosClearNetworkServiceProperty(const char* service_path,
+ const char* property);
+
+// Sets a property of a device to the provided value
+// Success is indicated by the receipt of a matching PropertyChanged signal.
+void CrosSetNetworkDevicePropertyGValue(const char* device_path,
+ const char* property,
+ const GValue* gvalue);
+
+// Sets a property of an ip config to the provided value
+// Success is indicated by the receipt of a matching PropertyChanged signal.
+void CrosSetNetworkIPConfigPropertyGValue(const char* ipconfig_path,
+ const char* property,
+ const GValue* gvalue);
+
+// Deletes a remembered service from a profile.
+void CrosDeleteServiceFromProfile(const char* profile_path,
+ const char* service_path);
+
+// Requests an update of the data plans. A callback will be received by any
+// object that invoked MonitorCellularDataPlan when up to date data is ready.
+void CrosRequestCellularDataPlanUpdate(const char* modem_service_path);
+
+// Sets up monitoring of the PropertyChanged signal on the flimflam manager.
+// The provided |callback| will be called whenever a manager property changes.
+// |object| will be supplied as the first argument to the callback.
+NetworkPropertiesMonitor CrosMonitorNetworkManagerProperties(
+ MonitorPropertyGValueCallback callback,
+ void* object);
+
+// Similar to MonitorNetworkManagerProperties for a specified network service.
+NetworkPropertiesMonitor CrosMonitorNetworkServiceProperties(
+ MonitorPropertyGValueCallback callback,
+ const char* service_path,
+ void* object);
+
+// Similar to MonitorNetworkManagerProperties for a specified network device.
+NetworkPropertiesMonitor CrosMonitorNetworkDeviceProperties(
+ MonitorPropertyGValueCallback callback,
+ const char* device_path,
+ void* object);
+
+// Disconnects a PropertyChangeMonitor.
+void CrosDisconnectNetworkPropertiesMonitor(
+ NetworkPropertiesMonitor monitor);
+
+// Sets up monitoring of the cellular data plan updates from Cashew.
+DataPlanUpdateMonitor CrosMonitorCellularDataPlan(
+ MonitorDataPlanCallback callback,
+ void* object);
+
+// Disconnects a DataPlanUpdateMonitor.
+void CrosDisconnectDataPlanUpdateMonitor(DataPlanUpdateMonitor monitor);
+
+// Similar to MonitorNetworkManagerProperties for a specified network device.
+SMSMonitor CrosMonitorSMS(const char* modem_device_path,
+ MonitorSMSCallback callback,
+ void* object);
+
+// Disconnects a SMSMonitor.
+void CrosDisconnectSMSMonitor(SMSMonitor monitor);
+
+// Connects to the service with the |service_path|.
+// Service parameters such as authentication must already be configured.
+// Note, a successful invocation of the callback only indicates that
+// the connection process has started. You will have to query the
+// connection state to determine if the connection was established
+// successfully.
+void CrosRequestNetworkServiceConnect(const char* service_path,
+ NetworkActionCallback callback,
+ void* object);
+
+// Retrieves the latest info for the manager.
+void CrosRequestNetworkManagerProperties(
+ NetworkPropertiesGValueCallback callback,
+ void* object);
+
+// Retrieves the latest info for a service.
+void CrosRequestNetworkServiceProperties(
+ const char* service_path,
+ NetworkPropertiesGValueCallback callback,
+ void* object);
+
+// Retrieves the latest info for a particular device.
+void CrosRequestNetworkDeviceProperties(
+ const char* device_path,
+ NetworkPropertiesGValueCallback callback,
+ void* object);
+
+// Retrieves the list of remembered services for a profile.
+void CrosRequestNetworkProfileProperties(
+ const char* profile_path,
+ NetworkPropertiesGValueCallback callback,
+ void* object);
+
+// Retrieves the latest info for a profile service entry.
+void CrosRequestNetworkProfileEntryProperties(
+ const char* profile_path,
+ const char* profile_entry_path,
+ NetworkPropertiesGValueCallback callback,
+ void* object);
+
+// Requests a wifi service not in the network list (i.e. hidden).
+void CrosRequestHiddenWifiNetworkProperties(
+ const char* ssid,
+ const char* security,
+ NetworkPropertiesGValueCallback callback,
+ void* object);
+
+// Requests a new VPN service.
+void CrosRequestVirtualNetworkProperties(
+ const char* service_name,
+ const char* server_hostname,
+ const char* provider_type,
+ NetworkPropertiesGValueCallback callback,
+ void* object);
+
+// Disconnects from network service asynchronously.
+void CrosRequestNetworkServiceDisconnect(const char* service_path);
+
+// Removes an exisiting network service (e.g. after forgetting a VPN).
+void CrosRequestRemoveNetworkService(const char* service_path);
+
+// Requests a scan of services of |type|.
+// |type| should be is a string recognized by flimflam's Manager API.
+void CrosRequestNetworkScan(const char* network_type);
+
+// Requests enabling or disabling a device.
+void CrosRequestNetworkDeviceEnable(const char* network_type, bool enable);
+
+// Enables or disables PIN protection for a SIM card.
+void CrosRequestRequirePin(const char* device_path,
+ const char* pin,
+ bool enable,
+ NetworkActionCallback callback,
+ void* object);
+
+// Enters a PIN to unlock a SIM card.
+void CrosRequestEnterPin(const char* device_path,
+ const char* pin,
+ NetworkActionCallback callback,
+ void* object);
+
+// Enters a PUK to unlock a SIM card whose PIN has been entered
+// incorrectly too many times. A new |pin| must be supplied
+// along with the |unblock_code| (PUK).
+void CrosRequestUnblockPin(const char* device_path,
+ const char* unblock_code,
+ const char* pin,
+ NetworkActionCallback callback,
+ void* object);
+
+// Changes the PIN used to unlock a SIM card.
+void CrosRequestChangePin(const char* device_path,
+ const char* old_pin,
+ const char* new_pin,
+ NetworkActionCallback callback,
+ void* object);
+
+// Proposes to trigger a scan transaction. For cellular networks scan result
+// is set in the property Cellular.FoundNetworks.
+void CrosProposeScan(const char* device_path);
+
+// Initiates registration on the network specified by network_id, which is in
+// the form MCCMNC. If the network ID is the empty string, then switch back to
+// automatic registration mode before initiating registration.
+void CrosRequestCellularRegister(const char* device_path,
+ const char* network_id,
+ NetworkActionCallback callback,
+ void* object);
+
+// Enables or disables the specific network device for connection.
+// Set offline mode. This will turn off all radios.
+// Returns false on failure and true on success.
+bool CrosSetOfflineMode(bool offline);
+
+// Gets a list of all the IPConfigs using a given device path
+IPConfigStatus* CrosListIPConfigs(const char* device_path);
+
+// Adds a IPConfig of the given type to the device
+bool CrosAddIPConfig(const char* device_path, IPConfigType type);
+
+// Removes an existing IP Config
+bool CrosRemoveIPConfig(IPConfig* config);
+
+// Frees out a full status
+void CrosFreeIPConfigStatus(IPConfigStatus* status);
+
+// Retrieves the list of visible network objects. This structure is not cached
+// within the DLL, and is fetched via d-bus on each call.
+// Ownership of the DeviceNetworkList is returned to the caller; use
+// FreeDeviceNetworkList to release it.
+DeviceNetworkList* CrosGetDeviceNetworkList();
+
+// Deletes a DeviceNetworkList type that was allocated in the ChromeOS dll. We
+// need to do this to safely pass data over the dll boundary between our .so
+// and Chrome.
+void CrosFreeDeviceNetworkList(DeviceNetworkList* network_list);
+
+// Configures the network service specified by |properties|.
+// |identifier| can be the service path, guid, or any other identifier
+// specified by the calling code; it is ignored by libcros and flimflam,
+// except to pass it back in |callback| as |path|.
+void CrosConfigureService(const char* identifier,
+ const GHashTable* properties,
+ NetworkActionCallback callback,
+ void* object);
+
+} // namespace chromeos
+
+#endif // CHROME_BROWSER_CHROMEOS_CROS_CROS_NETWORK_FUNCTIONS_H_
« no previous file with comments | « no previous file | chrome/browser/chromeos/cros/cros_network_functions.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698