Add interactive override update restriction flags

Add the ability for an interactive update to provide its own set of
update restriction flags that are used instead of the normal set.

Bug: 66016687
Test: unit-tests, manual OTA
Exempt-From-Owner-Approval: cherry-pick from nyc-iot-dev

Change-Id: I7b80a0dadde6b163e8b5e2bc6fd197c2d7761646
(cherry picked from commit a6fbaa5323022080af2f711290e3fb953b9826a4)
11 files changed
tree: 436e1d9d6c2adff830945fbe6716c766c4f918e7
  1. binder_bindings/
  2. client_library/
  3. common/
  4. dbus_bindings/
  5. init/
  6. payload_consumer/
  7. payload_generator/
  8. sample_images/
  9. scripts/
  10. update_manager/
  11. update_payload_key/
  12. .gitignore
  13. Android.mk
  14. binder_service_android.cc
  15. binder_service_android.h
  16. binder_service_brillo.cc
  17. binder_service_brillo.h
  18. boot_control_android.cc
  19. boot_control_android.h
  20. boot_control_chromeos.cc
  21. boot_control_chromeos.h
  22. boot_control_chromeos_unittest.cc
  23. boot_control_recovery.cc
  24. boot_control_recovery.h
  25. boot_control_recovery_stub.cc
  26. certificate_checker.cc
  27. certificate_checker.h
  28. certificate_checker_unittest.cc
  29. chrome_browser_proxy_resolver.cc
  30. chrome_browser_proxy_resolver.h
  31. chrome_browser_proxy_resolver_unittest.cc
  32. common_service.cc
  33. common_service.h
  34. common_service_unittest.cc
  35. connection_manager.cc
  36. connection_manager.h
  37. connection_manager_android.cc
  38. connection_manager_android.h
  39. connection_manager_interface.h
  40. connection_manager_unittest.cc
  41. connection_utils.cc
  42. connection_utils.h
  43. CPPLINT.cfg
  44. daemon.cc
  45. daemon.h
  46. daemon_state_android.cc
  47. daemon_state_android.h
  48. daemon_state_interface.h
  49. dbus_connection.cc
  50. dbus_connection.h
  51. dbus_service.cc
  52. dbus_service.h
  53. dbus_test_utils.h
  54. fake_file_writer.h
  55. fake_p2p_manager.h
  56. fake_p2p_manager_configuration.h
  57. fake_shill_proxy.cc
  58. fake_shill_proxy.h
  59. fake_system_state.cc
  60. fake_system_state.h
  61. generate_pc_file.sh
  62. hardware_android.cc
  63. hardware_android.h
  64. hardware_chromeos.cc
  65. hardware_chromeos.h
  66. hardware_chromeos_unittest.cc
  67. image_properties.h
  68. image_properties_android.cc
  69. image_properties_android_unittest.cc
  70. image_properties_chromeos.cc
  71. image_properties_chromeos_unittest.cc
  72. libcurl_http_fetcher.cc
  73. libcurl_http_fetcher.h
  74. libupdate_engine-client-test.pc.in
  75. libupdate_engine-client.pc.in
  76. local_coverage_rate
  77. main.cc
  78. metrics_constants.h
  79. metrics_reporter_android.cc
  80. metrics_reporter_android.h
  81. metrics_reporter_interface.h
  82. metrics_reporter_omaha.cc
  83. metrics_reporter_omaha.h
  84. metrics_reporter_omaha_unittest.cc
  85. metrics_reporter_stub.cc
  86. metrics_reporter_stub.h
  87. metrics_utils.cc
  88. metrics_utils.h
  89. metrics_utils_unittest.cc
  90. mock_certificate_checker.h
  91. mock_connection_manager.h
  92. mock_file_writer.h
  93. mock_metrics_reporter.h
  94. mock_omaha_request_params.h
  95. mock_p2p_manager.h
  96. mock_payload_state.h
  97. mock_power_manager.h
  98. mock_proxy_resolver.h
  99. mock_service_observer.h
  100. mock_update_attempter.h
  101. MODULE_LICENSE_APACHE2
  102. network_selector.h
  103. network_selector_android.cc
  104. network_selector_android.h
  105. network_selector_interface.h
  106. network_selector_stub.cc
  107. network_selector_stub.h
  108. NOTICE
  109. omaha_request_action.cc
  110. omaha_request_action.h
  111. omaha_request_action_unittest.cc
  112. omaha_request_params.cc
  113. omaha_request_params.h
  114. omaha_request_params_unittest.cc
  115. omaha_response.h
  116. omaha_response_handler_action.cc
  117. omaha_response_handler_action.h
  118. omaha_response_handler_action_unittest.cc
  119. omaha_utils.cc
  120. omaha_utils.h
  121. omaha_utils_unittest.cc
  122. OWNERS
  123. p2p_manager.cc
  124. p2p_manager.h
  125. p2p_manager_unittest.cc
  126. parcelable_update_engine_status.cc
  127. parcelable_update_engine_status.h
  128. parcelable_update_engine_status_unittest.cc
  129. payload_state.cc
  130. payload_state.h
  131. payload_state_interface.h
  132. payload_state_unittest.cc
  133. power_manager_android.cc
  134. power_manager_android.h
  135. power_manager_chromeos.cc
  136. power_manager_chromeos.h
  137. power_manager_interface.h
  138. PRESUBMIT.cfg
  139. PREUPLOAD.cfg
  140. proxy_resolver.cc
  141. proxy_resolver.h
  142. proxy_resolver_unittest.cc
  143. pylintrc
  144. real_system_state.cc
  145. real_system_state.h
  146. run_unittests
  147. sample_omaha_v3_response.xml
  148. service_delegate_android_interface.h
  149. service_observer_interface.h
  150. shill_proxy.cc
  151. shill_proxy.h
  152. shill_proxy_interface.h
  153. sideload_main.cc
  154. system_state.h
  155. tar_bunzip2.gypi
  156. test_http_server.cc
  157. test_subprocess.cc
  158. testrunner.cc
  159. unittest_key.pem
  160. unittest_key2.pem
  161. update_attempter.cc
  162. update_attempter.h
  163. update_attempter_android.cc
  164. update_attempter_android.h
  165. update_attempter_android_unittest.cc
  166. update_attempter_unittest.cc
  167. update_engine-client.gyp
  168. update_engine.conf
  169. update_engine.gyp
  170. update_engine.rc
  171. update_engine_client.cc
  172. update_engine_client_android.cc
  173. update_metadata.proto
  174. update_status_utils.cc
  175. update_status_utils.h
  176. UpdateEngine.conf
  177. utils_android.cc
  178. utils_android.h
  179. WATCHLISTS