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

Side by Side 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: review 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef CHROME_BROWSER_CHROMEOS_CROS_CROS_NETWORK_FUNCTIONS_H_
6 #define CHROME_BROWSER_CHROMEOS_CROS_CROS_NETWORK_FUNCTIONS_H_
7
8 #include "third_party/cros/chromeos_network.h"
9
10 namespace chromeos {
11
12 // This header is introduced to make it easy to switch from chromeos_network.cc
13 // to Chrome's own DBus code. crosbug.com/16557
14 // All calls to functions in chromeos_network.h should be made through
15 // functions provided by this header.
16
17 // Activates the cellular modem specified by |service_path| with carrier
18 // specified by |carrier|.
19 // |carrier| is NULL or an empty string, this will activate with the currently
20 // active carrier.
21 //
stevenjb 2012/03/14 21:42:45 nit: no blank lines in function comments here and
hashimoto 2012/03/14 22:48:19 Done.
22 // Returns false on failure and true on success.
23 bool CrosActivateCellularModem(const char* service_path, const char* carrier);
24
25
26 // Set a property of a service to the provided value
27 //
28 // Success is indicated by the receipt of a matching PropertyChanged signal.
29 void CrosSetNetworkServicePropertyGValue(const char* service_path,
30 const char* property,
31 const GValue* gvalue);
32
33 // Clear a property of a service
34 void CrosClearNetworkServiceProperty(const char* service_path,
35 const char* property);
36
37 // Set a property of a device to the provided value
38 //
39 // Success is indicated by the receipt of a matching PropertyChanged signal.
40 void CrosSetNetworkDevicePropertyGValue(const char* device_path,
41 const char* property,
42 const GValue* gvalue);
43
44 // Set a property of an ip config to the provided value
45 //
46 // Success is indicated by the receipt of a matching PropertyChanged signal.
47 void CrosSetNetworkIPConfigPropertyGValue(const char* ipconfig_path,
48 const char* property,
49 const GValue* gvalue);
50
51 // Delete a remembered service from a profile.
52 void CrosDeleteServiceFromProfile(const char* profile_path,
53 const char* service_path);
54
55 // Request an update of the data plans. A callback will be received by any
56 // object that invoked MonitorCellularDataPlan when up to date data is ready.
57 void CrosRequestCellularDataPlanUpdate(const char* modem_service_path);
58
59 // Sets up monitoring of the PropertyChanged signal on the flimflam manager.
60 // The provided |callback| will be called whenever a manager property changes.
61 // |object| will be supplied as the first argument to the callback.
62 NetworkPropertiesMonitor CrosMonitorNetworkManagerProperties(
63 MonitorPropertyGValueCallback callback,
64 void* object);
65
66 // Similar to MonitorNetworkManagerProperties for a specified network service.
67 NetworkPropertiesMonitor CrosMonitorNetworkServiceProperties(
68 MonitorPropertyGValueCallback callback,
69 const char* service_path,
70 void* object);
71
72 // Similar to MonitorNetworkManagerProperties for a specified network device.
73 NetworkPropertiesMonitor CrosMonitorNetworkDeviceProperties(
74 MonitorPropertyGValueCallback callback,
75 const char* device_path,
76 void* object);
77
78 // Disconnects a PropertyChangeMonitor.
79 void CrosDisconnectNetworkPropertiesMonitor(
80 NetworkPropertiesMonitor monitor);
81
82 // Sets up monitoring of the cellular data plan updates from Cashew.
83 DataPlanUpdateMonitor CrosMonitorCellularDataPlan(
84 MonitorDataPlanCallback callback,
85 void* object);
86
87 // Disconnects a DataPlanUpdateMonitor.
88 void CrosDisconnectDataPlanUpdateMonitor(DataPlanUpdateMonitor monitor);
89
90 SMSMonitor CrosMonitorSMS(const char* modem_device_path,
91 MonitorSMSCallback callback,
92 void* object);
93
94 void CrosDisconnectSMSMonitor(SMSMonitor monitor);
stevenjb 2012/03/14 21:42:45 These functions should have comments.
hashimoto 2012/03/14 22:48:19 Done.
95
96 // Connect to the service with the |service_path|.
97 //
98 // Service parameters such as authentication must already be configured.
99 //
100 // Note, a successful invocation of the callback only indicates that
101 // the connection process has started. You will have to query the
102 // connection state to determine if the connection was established
103 // successfully.
104 void CrosRequestNetworkServiceConnect(const char* service_path,
105 NetworkActionCallback callback,
106 void* object);
107
108 void CrosRequestNetworkManagerProperties(
109 NetworkPropertiesGValueCallback callback,
110 void* object);
111
112 void CrosRequestNetworkServiceProperties(
113 const char* service_path,
114 NetworkPropertiesGValueCallback callback,
115 void* object);
116
117 // Retrieve the latest info for a particular device.
118 void CrosRequestNetworkDeviceProperties(
119 const char* device_path,
120 NetworkPropertiesGValueCallback callback,
121 void* object);
122
123 // Retrieve the list of remembered services for a profile.
124 void CrosRequestNetworkProfileProperties(
125 const char* profile_path,
126 NetworkPropertiesGValueCallback callback,
127 void* object);
128
129 // Retrieve the latest info for a profile service entry.
130 void CrosRequestNetworkProfileEntryProperties(
131 const char* profile_path,
132 const char* profile_entry_path,
133 NetworkPropertiesGValueCallback callback,
134 void* object);
135
136 // Request a wifi service not in the network list (i.e. hidden).
137 void CrosRequestHiddenWifiNetworkProperties(
138 const char* ssid,
139 const char* security,
140 NetworkPropertiesGValueCallback callback,
141 void* object);
142
143 // Request a new VPN service.
144 void CrosRequestVirtualNetworkProperties(
145 const char* service_name,
146 const char* server_hostname,
147 const char* provider_type,
148 NetworkPropertiesGValueCallback callback,
149 void* object);
150
151 // Asynchronous disconnect from network service.
152 void CrosRequestNetworkServiceDisconnect(const char* service_path);
153
154 // Remove an exisiting network service (e.g. after forgetting a VPN).
155 void CrosRequestRemoveNetworkService(const char* service_path);
156
157 // Requests a scan of services of |type|.
158 // |type| should be is a string recognized by flimflam's Manager API.
159 void CrosRequestNetworkScan(const char* network_type);
160
161 // Request enabling or disabling a device.
162 void CrosRequestNetworkDeviceEnable(const char* network_type, bool enable);
163
164 // Enable or disable PIN protection for a SIM card.
165 void CrosRequestRequirePin(const char* device_path,
166 const char* pin,
167 bool enable,
168 NetworkActionCallback callback,
169 void* object);
170
171 // Enter a PIN to unlock a SIM card.
172 void CrosRequestEnterPin(const char* device_path,
173 const char* pin,
174 NetworkActionCallback callback,
175 void* object);
176
177 // Enter a PUK to unlock a SIM card whose PIN has been entered
178 // incorrectly too many times. A new |pin| must be supplied
179 // along with the |unblock_code| (PUK).
180 void CrosRequestUnblockPin(const char* device_path,
181 const char* unblock_code,
182 const char* pin,
183 NetworkActionCallback callback,
184 void* object);
185
186 // Change the PIN used to unlock a SIM card.
187 void CrosRequestChangePin(const char* device_path,
188 const char* old_pin,
189 const char* new_pin,
190 NetworkActionCallback callback,
191 void* object);
192
193 // Proposes to trigger a scan transaction. For cellular networks scan result
194 // is set in the property Cellular.FoundNetworks.
195 void CrosProposeScan(const char* device_path);
196
197 // Initiate registration on the network specified by network_id, which is in the
198 // form MCCMNC. If the network ID is the empty string, then switch back to
199 // automatic registration mode before initiating registration.
200 void CrosRequestCellularRegister(const char* device_path,
201 const char* network_id,
202 NetworkActionCallback callback,
203 void* object);
204
205 //////////////////////////////////////////////////////////////////////////////
206 // Enable or disable the specific network device for connection.
207 //
208 // Set offline mode. This will turn off all radios.
209 //
210 // Returns false on failure and true on success.
211 bool CrosSetOfflineMode(bool offline);
212
213 // Gets a list of all the IPConfigs using a given device path
214 IPConfigStatus* CrosListIPConfigs(const char* device_path);
215
216 // Add a IPConfig of the given type to the device
217 bool CrosAddIPConfig(const char* device_path, IPConfigType type);
218
219 // Remove an existing IP Config
220 bool CrosRemoveIPConfig(IPConfig* config);
221
222 // Free out a full status
223 void CrosFreeIPConfigStatus(IPConfigStatus* status);
224
225 // Retrieves the list of visible network objects. This structure is not cached
226 // within the DLL, and is fetched via d-bus on each call.
227 // Ownership of the DeviceNetworkList is returned to the caller; use
228 // FreeDeviceNetworkList to release it.
229 DeviceNetworkList* CrosGetDeviceNetworkList();
230
231 // Deletes a DeviceNetworkList type that was allocated in the ChromeOS dll. We
232 // need to do this to safely pass data over the dll boundary between our .so
233 // and Chrome.
234 void CrosFreeDeviceNetworkList(DeviceNetworkList* network_list);
235
236 // Configures the network service specified by |properties|.
237 // |identifier| can be the service path, guid, or any other identifier
238 // specified by the calling code; it is ignored by libcros and flimflam,
239 // except to pass it back in |callback| as |path|.
240 void CrosConfigureService(const char* identifier,
241 const GHashTable* properties,
242 NetworkActionCallback callback,
243 void* object);
244
245 } // namespace chromeos
246
247 #endif // CHROME_BROWSER_CHROMEOS_CROS_CROS_NETWORK_FUNCTIONS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698