History log of /system/update_engine/update_manager/real_system_provider.cc
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
e5f6f2571d43eb65e0b27dd8d50f2c1f0b3fe30f 20-Apr-2017 Daniel Erat <derat@chromium.org> update_engine: Use org.chromium.NetworkProxyService.

Make update_engine call Chrome's new
org.chromium.NetworkProxyService D-Bus service to resolve
network proxies instead of using
org.chromium.LibCrosService. The new service supports
asynchronous replies instead of responding via D-Bus
signals.

BUG=chromium:446115,chromium:703217
TEST=unit tests pass; also added debug logging and verified
that chrome's proxy settings are used

(cherry picked from commit 941cf235c5e56eddc6e4f2de2f38bee032a4dead)
Cherry-pick updated to resolve conflicts with existing code in AOSP.

Change-Id: I8c0704482e9988fe9ed14d32797b3a5b8da3d46a
Reviewed-on: https://chromium-review.googlesource.com/497491
Commit-Ready: Dan Erat <derat@chromium.org>
Tested-by: Dan Erat <derat@chromium.org>
Reviewed-by: Ben Chan <benchan@chromium.org>
/system/update_engine/update_manager/real_system_provider.cc
c92195c0f6cba4851b7352062bba03c95b7a7e94 14-Jun-2016 Sen Jiang <senj@google.com> Compile libupdate_engine without DBus.

Test: mma with and without BRILLO_USE_DBUS=1
Test: adb shell /data/nativetest/update_engine_unittests/update_engine_unittests
Bug: 28800946

Change-Id: If3b05e7bc7a123d3d9b0dcc4597d915249a2de33
/system/update_engine/update_manager/real_system_provider.cc
857ded125104a6e8dc7cabb3035a1fa42ccbd166 13-May-2016 Alex Deymo <deymo@google.com> Define static members outside the template class.

When defining a static const member of a template class,
MyClass<T1>::some_static_member and MyClass<T2>::some_static_member
could be different values. We define these values inline in the class,
but ASan complains about an undefined reference.

Since those constants don't depend on the type, This patch moves them
to plain constants in the anonymous namespace.

Bug: chromium:611405
TEST=USE="clang asan" emerge-link update_engine

Change-Id: I6a1becb87f186cca9341ff4dbaf5eb2b7ba456a6
/system/update_engine/update_manager/real_system_provider.cc
ed9bd92e00099eddda86b32fd2bb4896cb44cd51 07-Apr-2016 Xiyuan Xia <xiyuan@google.com> Follow up on AllowKioskAppControlChromeVersion policy CL

- Update header includes, adding missed and removing unused.
- UpdateCheckAllowedKioskPinWithNoRequiredVersion verifies target
version prefix is empty.
- Change RealSystemProvider's required platform version variable to
be a RetryPollVariable to handle D-Bus call failure.
- Update ChromeOSPolicy to defer update check when kiosk pin policy
is effective but system provider does not set the required platform
version.

BUG=chromium:577783

Change-Id: Id5400d09fff69001a37e367fff9ede1664c2e060
/system/update_engine/update_manager/real_system_provider.cc
6e30bc57d672f304595e6529dd6ad0aefc3c5453 25-Feb-2016 Xiyuan Xia <xiyuan@google.com> Handle AllowKioskAppControlChromeVersion device policy

When AllowKioskAppControlChromeVersion is set to true, get the
required platform version of the auto launched kiosk app from
Chrome and use it as the target version prefix. If the required
platform version is empty, ignore update disabled policy and do
AU to latest.

BUG=chromium:577783

Change-Id: I2ff1981b6c03aa9da4fe46b6f78061c69a71c49a
/system/update_engine/update_manager/real_system_provider.cc
39910dcd1d68987ccee7c3031dc269233a8490bb 10-Nov-2015 Alex Deymo <deymo@google.com> Split payload application code into a subdirectory.

This patch splits from the main libupdate_engine code the part that
is strictly used to download and apply a payload into a new static
library, moving the code to subdirectories. The new library is divided
in two subdirectories: common/ and payload_consumer/, and should not
depend on other update_engine files outside those two subdirectories.
The main difference between those two is that the common/ tools are more
generic and not tied to the payload consumer process, but otherwise they
are both compiled together.

There are still dependencies from the new libpayload_consumer library
into the main directory files and DBus generated files. Those will be
addressed in follow up CLs.

Bug: 25197634
Test: FEATURES=test emerge-link update_engine; `mm` on Brillo.

Change-Id: Id8d0204ea573627e6e26ca9ea17b9592ca95bc23
/system/update_engine/update_manager/real_system_provider.cc
40d86b22363fd9461e67ad288e0273bed509937b 04-Sep-2015 Alex Deymo <deymo@google.com> Make Hardware class platform specific.

The Hardware class abstracts the interaction with the actual hardware
which is inherently platform-specific. This patch implementes a stub
version for Android and moves the Chromium OS implementation, handling
both with the same public factory method.

Bug: 23084776
TEST=emerge-link update_engine; `mma -i` builds the stubs.

Change-Id: I19c791a2e3fa22f0ac38bbe68a9c47838bcf019a
/system/update_engine/update_manager/real_system_provider.cc
763e7dbaac735da0ae802933a1015b6b7874bce2 28-Aug-2015 Alex Deymo <deymo@google.com> update_engine: New BootControlInterface class.

The new BootControlInterface class is a platform-independent
abstraction to control the bootloader. It provides methods for setting
what partition slots are available for booting and getting the
bootloader status about the available slots.

The Chrome OS specific implementation of the bootloader was moved to
the BootControlChromeOS which now depends on the vboot_host
implementation used in Chrome OS. Follow up CL will implement the
equivalent class for Brillo.

BUG=b:23010637
TEST=unittests; cros flash from the new image and rolled back from it.

Change-Id: I0a03aeeb8c21d8c99e1866b625e6e8c96628215b
/system/update_engine/update_manager/real_system_provider.cc
aea4c1cea20dda7ae7e85fc8924a2d784f70d806 20-Aug-2015 Alex Deymo <deymo@google.com> Re-license update_engine 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 and .gypi files, the NOTICE was
replaced with a copy of the Apache2 license and MODULE_LICENSE_* file
was updated.

BUG=b/23084294
TEST=grep 'Chromium OS Authors' doesn't find anything.

Change-Id: Ie5083750755f5180a8a785b24fe67dbf9195cd10
/system/update_engine/update_manager/real_system_provider.cc
f329b933db41d26644a97afef928eb1b319d6d99 30-Oct-2014 Alex Deymo <deymo@chromium.org> update_engine: Fix all the "using" declaration usage.

This patch removes unused "using" declarations, that is, declarations
included in a .cc file at a global scope such that "using foo::bar"
that later don't use the identifier "bar" at all.

This also unifies the usage of these identifiers in the .cc files
in favor of using the short name defined by the using declaration.
For example, in several cases the .h refer to a type like
"std::string" because using declarations are forbidden in header
files while the .cc includes "using std::string;" with the purpose
of just writting "string" in the .cc file. Very rarely, the full
identifier is used when a local name ocludes it, for example,
StringVectorToGStrv() and StringVectorToString() in utils.cc named
its argument just "vector" need to refer to std::vector with the
full name. This patch renames those arguments instead.

Finally, it also sorts a few lists of using declarations that weren't
in order.

BUG=None
TEST=FEATURES=test emerge-link update_engine

Change-Id: I30f6b9510ecb7e03640f1951c48d5bb106309840
Reviewed-on: https://chromium-review.googlesource.com/226423
Reviewed-by: Alex Vakulenko <avakulenko@chromium.org>
Commit-Queue: Alex Deymo <deymo@chromium.org>
Tested-by: Alex Deymo <deymo@chromium.org>
/system/update_engine/update_manager/real_system_provider.cc
bfc44f70a99a74bdb714c84fc65be2ab50806bab 09-Jul-2014 Gilad Arnold <garnold@chromium.org> UpdateManager: Do not schedule update checks if booted from removable device.

This abides by the current logic, as found in
UpdateCheckScheduler::Run(). New unit test added to verify this
behavior.

BUG=chromium:358269
TEST=Unit tests.

Change-Id: I5720b2b3c85c7de7f64eec4f7da000d3e13c778d
Reviewed-on: https://chromium-review.googlesource.com/207230
Reviewed-by: Alex Deymo <deymo@chromium.org>
Tested-by: Gilad Arnold <garnold@chromium.org>
Commit-Queue: Gilad Arnold <garnold@chromium.org>
/system/update_engine/update_manager/real_system_provider.cc
63784a578dd26880454d70797519358a2326291b 28-May-2014 Alex Deymo <deymo@chromium.org> Rename the PolicyManager to UpdateManager.

This change renames the PolicyManager class, directory, tests, etc,
to avoid confusion with libpolicy and its classes.

BUG=chromium:373551
TEST=emerged on link.
CQ-DEPEND=CL:I43081673c7ba409f02273197da7915537bde39c6

Change-Id: Iffa76caa3b95ecbbdba87ab01006d1d8ce35a27f
Reviewed-on: https://chromium-review.googlesource.com/201876
Tested-by: Alex Deymo <deymo@chromium.org>
Reviewed-by: David Zeuthen <zeuthen@chromium.org>
Commit-Queue: Alex Deymo <deymo@chromium.org>
/system/update_engine/update_manager/real_system_provider.cc