History log of /system/connectivity/apmanager/device_info.cc
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
f933540bb968efa2744ee48b40ab713ccd358d51 16-Nov-2015 Peter Qiu <zqiu@google.com> Refactor D-Bus adaptor for Device out of the Device class

This removes the RPC specific dependencies out of the Device class.
Device adaptors will now be created through the ControlInterface.

While there, make the D-Bus object registration for Device object to
be synchronous instead of asynchronous. Since the daemon will not
be doing anything anyway besides waiting for the registration to
complete. This avoids unnecessary complexity with the object
registration.

Currently for D-Bus, the property variables are being created/stored
in the generated adaptor code. This means that the property variables
will be stored in the adaptor instead of the Device class itself.
Even though this is not ideal, there is no good way around it. In the
ideal world, the Device would maintain its property variables, and
register them with the RPC specific adaptor.

So for the unittest, we will use FakeDeviceAdaptor, which provides the
storage for the property variables.

Also currently gmock doesn't support mocking of a function that returns
a unique_ptr, since it only supports copyable return value and unique_ptr
is not copyable. To work around this issue, I've created mock functions
that return a raw pointer, and override the proxy/adaptor creation
functions to use the mock function in MockControl.

Bug: 24194427
TEST=Start AP service on both Brillo and Chrome OS
TEST=Run unittests on both Brillo and Chrome OS

Change-Id: I8e9f736bb27fe6736f616dd752a37b9cc1be8dfe
/system/connectivity/apmanager/device_info.cc
326b6cfba5ab73c9e41a7585d1bc95871631122a 02-Sep-2015 Peter Qiu <zqiu@google.com> Re-license apmanager to Apache2

This patch automatically replaced the license on all text files from
Chromium OS (BSD style) to AOSP (Apache2), keeping the original year as
a reference.

The license header was added to .gyp, the NOTICE was replaced with a copy
of the Apache2 license and MODULE_LICENSE_* file was updated.

BUG=23619937
TEST=grep 'Chromium OS Authors' doesn't find anything.

Change-Id: I4ade0a15ff18ab159d4a2f99525b62c780b13c89
/system/connectivity/apmanager/device_info.cc
74cfdc9a3fb1a1052512971b9c48f5fb5fd9e5fc 13-Apr-2015 Nathan Bullock <nathanbullock@google.com> shill: Pass groups to RtnlHandler.Start

Allow clients of the RtnlHandler to explicitly define which groups
they want to listen to. This will allow more flexibility in the clients
without causing everyone to have to listen to all groups.

BUG=none
TEST=FEATURES=test emerge-$BOARD apmanager shill

Change-Id: I2682f6bcfda3a50dade2d1a2b34a2bc1254d7fde
Reviewed-on: https://chromium-review.googlesource.com/265460
Reviewed-by: Nathan Bullock <nathanbullock@google.com>
Commit-Queue: Nathan Bullock <nathanbullock@google.com>
Tested-by: Nathan Bullock <nathanbullock@google.com>
/system/connectivity/apmanager/device_info.cc
e9d77fb5ff9349c95b06c38a7011629a70f6bb55 14-Jan-2015 Peter Qiu <zqiu@chromium.org> shill: create Sockets object in RTNLHandler

Create and maintain Sockets object in RTNLHandler to prevent the
possibility of Sockets object being destructed before RTNLHandler.

BUG=chromium:448823
TEST=USE="asan clang" FEATURES=test emerge-$BOARD shill apmanager
Verify we still have network connectivity through shill
Verify apmanager doesn't seg fault when exiting

Change-Id: I3a60068718ba6c547cef1437aa1fec22bd27e3eb
Reviewed-on: https://chromium-review.googlesource.com/240801
Trybot-Ready: Zeping Qiu <zqiu@chromium.org>
Tested-by: Zeping Qiu <zqiu@chromium.org>
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Queue: Zeping Qiu <zqiu@chromium.org>
/system/connectivity/apmanager/device_info.cc
7e0ffcf4e8d2fb05b2a57fc2127451ece8556cf5 02-Dec-2014 Peter Qiu <zqiu@chromium.org> apmanager: claim interfaces from shill

apmanager requires sole ownership of a device before it can successfully
start a hostapd on that device.

The support for reclaiming interfaces from shill when an instance of
shill is started/restarted is not in yet. It requires support for registering
DBusNameOwnerChanged callback to the dbus_object_proxy_ which is not possible
in the current generated proxy code.

BUG=chromium:435704
TEST=unittests and manual test using apmanager on stumpy router

Change-Id: I7f737d0bf55f31c1e4ed2a7e5ffe04943ea056db
Reviewed-on: https://chromium-review.googlesource.com/232752
Reviewed-by: Paul Stewart <pstew@chromium.org>
Commit-Queue: Peter Qiu <zqiu@chromium.org>
Tested-by: Peter Qiu <zqiu@chromium.org>
/system/connectivity/apmanager/device_info.cc
1ff67a70eb6dea94ba8a6a836add9810536bec31 22-Nov-2014 Peter Qiu <zqiu@chromium.org> apmanager: support on-demand device enumeration

Enumerate a new device when a new interface is detected but its
corresponding device has not been enumerated yet. This is possible
if apmanager starts before WiFi driver is loaded or a WiFi device
is plug-in during run time.

BUG=chromium:431763
TEST=unittests

Change-Id: I9df224ae8ed55f50d629c4386088c508ebffb223
Reviewed-on: https://chromium-review.googlesource.com/231476
Reviewed-by: Peter Qiu <zqiu@chromium.org>
Commit-Queue: Peter Qiu <zqiu@chromium.org>
Tested-by: Peter Qiu <zqiu@chromium.org>
/system/connectivity/apmanager/device_info.cc
fb39ba4b2ef92f0c9d19f6910a350cd8a14405a0 21-Nov-2014 Peter Qiu <zqiu@chromium.org> apmanager: support for WiFi devices and interfaces

Added DeviceInfo for enumerating WiFi devices (PHYs) and detecting
WiFi interfaces. Also Created a Device class for abstracting WiFi PHYs,
which will maintain the device's capabilities and manage interfaces
created on the device.

Integrate Device with Manager and Config to allow user to start
an AP service without providing interface information.

Next up, will focus on parsing HT/VHT capabilities for each band and
integrate it into ap configuration. Also adding shill support for
claim/release interface.

BUG=chromium:431763
TEST=unittest

Change-Id: I62f4251064483b57e264d1278fde68022a737aea
Reviewed-on: https://chromium-review.googlesource.com/231257
Reviewed-by: Peter Qiu <zqiu@chromium.org>
Commit-Queue: Peter Qiu <zqiu@chromium.org>
Tested-by: Peter Qiu <zqiu@chromium.org>
/system/connectivity/apmanager/device_info.cc