Revert "update_engine: trigger a crash on unrecoverable condition"

This reverts commit 1329fd880962c9441d4ca462e8cda3fbc29049c9.

Reason for revert: https://crbug.com/962730#c18

Original change's description:
> update_engine: trigger a crash on unrecoverable condition
> 
> CURLM_INTERNAL_ERROR and CURLM_OUT_OF_MEMORY are two libcurl error codes
> that caller (update_engine) has no way to recover on its own. Reference: https://curl.haxx.se/libcurl/c/libcurl-errors.html
> 
> Since those error conditions aren't recoverable and might be responsible
> for the failures to update observed in crbug.com/927039, we exit and let the
> system respawn update_engine to start from a fresh state and recover.
> 
> BUG=chromium:962730,chromium:927039
> TEST=unittest
> 
> Change-Id: I55946e58e518da5bc5cb0c23690430c6298b8582
> Reviewed-on: https://chromium-review.googlesource.com/1616425
> Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
> Tested-by: Xiaochu Liu <xiaochu@chromium.org>
> Legacy-Commit-Queue: Commit Bot <commit-bot@chromium.org>
> Reviewed-by: Amin Hassani <ahassani@chromium.org>

TBR=senj@chromium.org,norvez@chromium.org,ahassani@chromium.org,xiaochu@chromium.org,chromiumos-cl-exonerator@appspot.gserviceaccount.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: chromium:962730, chromium:927039
Change-Id: I3d10173cdacfcd1edf22b4515dce6091e9d3b258
Reviewed-on: https://chromium-review.googlesource.com/c/aosp/platform/system/update_engine/+/1737130
Reviewed-by: Xiaochu Liu <xiaochu@chromium.org>
Reviewed-by: Amin Hassani <ahassani@chromium.org>
Tested-by: Xiaochu Liu <xiaochu@chromium.org>
Commit-Queue: Xiaochu Liu <xiaochu@chromium.org>
1 file changed
tree: d6a98d82b052f6dcad1c3b5d33c82b67a734131c
  1. binder_bindings/
  2. client-headers/
  3. client_library/
  4. common/
  5. dbus_bindings/
  6. fuzz/
  7. init/
  8. payload_consumer/
  9. payload_generator/
  10. sample_images/
  11. scripts/
  12. update_engine/
  13. update_manager/
  14. update_payload_key/
  15. .clang-format
  16. .gitignore
  17. Android.bp
  18. binder_service_android.cc
  19. binder_service_android.h
  20. boot_control_android.cc
  21. boot_control_android.h
  22. boot_control_android_unittest.cc
  23. boot_control_chromeos.cc
  24. boot_control_chromeos.h
  25. boot_control_chromeos_unittest.cc
  26. BUILD.gn
  27. certificate_checker.cc
  28. certificate_checker.h
  29. certificate_checker_unittest.cc
  30. chrome_browser_proxy_resolver.cc
  31. chrome_browser_proxy_resolver.h
  32. COMMIT-QUEUE.ini
  33. common_service.cc
  34. common_service.h
  35. common_service_unittest.cc
  36. connection_manager.cc
  37. connection_manager.h
  38. connection_manager_android.cc
  39. connection_manager_android.h
  40. connection_manager_interface.h
  41. connection_manager_unittest.cc
  42. connection_utils.cc
  43. connection_utils.h
  44. CPPLINT.cfg
  45. daemon_android.cc
  46. daemon_android.h
  47. daemon_base.h
  48. daemon_chromeos.cc
  49. daemon_chromeos.h
  50. daemon_state_android.cc
  51. daemon_state_android.h
  52. daemon_state_interface.h
  53. dbus_connection.cc
  54. dbus_connection.h
  55. dbus_service.cc
  56. dbus_service.h
  57. dbus_test_utils.h
  58. dlcservice_chromeos.cc
  59. dlcservice_chromeos.h
  60. dynamic_partition_control_android.cc
  61. dynamic_partition_control_android.h
  62. dynamic_partition_control_interface.h
  63. fake_file_writer.h
  64. fake_p2p_manager.h
  65. fake_p2p_manager_configuration.h
  66. fake_shill_proxy.cc
  67. fake_shill_proxy.h
  68. fake_system_state.cc
  69. fake_system_state.h
  70. generate_pc_file.sh
  71. hardware_android.cc
  72. hardware_android.h
  73. hardware_chromeos.cc
  74. hardware_chromeos.h
  75. hardware_chromeos_unittest.cc
  76. image_properties.h
  77. image_properties_android.cc
  78. image_properties_android_unittest.cc
  79. image_properties_chromeos.cc
  80. image_properties_chromeos_unittest.cc
  81. libcurl_http_fetcher.cc
  82. libcurl_http_fetcher.h
  83. libcurl_http_fetcher_unittest.cc
  84. local_coverage_rate
  85. main.cc
  86. metrics_constants.h
  87. metrics_reporter_android.cc
  88. metrics_reporter_android.h
  89. metrics_reporter_interface.h
  90. metrics_reporter_omaha.cc
  91. metrics_reporter_omaha.h
  92. metrics_reporter_omaha_unittest.cc
  93. metrics_reporter_stub.cc
  94. metrics_reporter_stub.h
  95. metrics_utils.cc
  96. metrics_utils.h
  97. metrics_utils_unittest.cc
  98. mock_boot_control_hal.h
  99. mock_certificate_checker.h
  100. mock_connection_manager.h
  101. mock_dynamic_partition_control.h
  102. mock_file_writer.h
  103. mock_metrics_reporter.h
  104. mock_omaha_request_params.h
  105. mock_p2p_manager.h
  106. mock_payload_state.h
  107. mock_power_manager.h
  108. mock_service_observer.h
  109. mock_update_attempter.h
  110. MODULE_LICENSE_APACHE2
  111. network_selector.h
  112. network_selector_android.cc
  113. network_selector_android.h
  114. network_selector_interface.h
  115. network_selector_stub.cc
  116. network_selector_stub.h
  117. NOTICE
  118. omaha_request_action.cc
  119. omaha_request_action.h
  120. omaha_request_action_fuzzer.cc
  121. omaha_request_action_unittest.cc
  122. omaha_request_builder_xml.cc
  123. omaha_request_builder_xml.h
  124. omaha_request_builder_xml_unittest.cc
  125. omaha_request_params.cc
  126. omaha_request_params.h
  127. omaha_request_params_unittest.cc
  128. omaha_response.h
  129. omaha_response_handler_action.cc
  130. omaha_response_handler_action.h
  131. omaha_response_handler_action_unittest.cc
  132. omaha_utils.cc
  133. omaha_utils.h
  134. omaha_utils_unittest.cc
  135. OWNERS
  136. p2p_manager.cc
  137. p2p_manager.h
  138. p2p_manager_unittest.cc
  139. payload_state.cc
  140. payload_state.h
  141. payload_state_interface.h
  142. payload_state_unittest.cc
  143. power_manager_android.cc
  144. power_manager_android.h
  145. power_manager_chromeos.cc
  146. power_manager_chromeos.h
  147. power_manager_interface.h
  148. PRESUBMIT.cfg
  149. PREUPLOAD.cfg
  150. pylintrc
  151. real_system_state.cc
  152. real_system_state.h
  153. run_unittests
  154. sample_omaha_v3_response.xml
  155. service_delegate_android_interface.h
  156. service_observer_interface.h
  157. shill_proxy.cc
  158. shill_proxy.h
  159. shill_proxy_interface.h
  160. sideload_main.cc
  161. system_state.h
  162. tar_bunzip2.gni
  163. test_http_server.cc
  164. test_subprocess.cc
  165. testrunner.cc
  166. unittest_key.pem
  167. unittest_key2.pem
  168. update_attempter.cc
  169. update_attempter.h
  170. update_attempter_android.cc
  171. update_attempter_android.h
  172. update_attempter_android_unittest.cc
  173. update_attempter_unittest.cc
  174. update_boot_flags_action.cc
  175. update_boot_flags_action.h
  176. update_boot_flags_action_unittest.cc
  177. update_engine.conf
  178. update_engine.rc
  179. update_engine_client.cc
  180. update_engine_client_android.cc
  181. update_metadata.proto
  182. update_status_utils.cc
  183. update_status_utils.h
  184. update_status_utils_unittest.cc
  185. UpdateEngine.conf