Print operation names using InstallOperationTypeName().

PayloadFile had a local array to convert from the operation type enum
to a human-readable string name. Since the enum is converted to an int
this method will not fail to compile whenever new operations are added.

This patch removes such array and uses the existing
InstallOperationTypeName() function to convert the enum to string. This
fixes a buffer overflow in test code that generates new operations.

Bug: chromium:543593
Test: USE="clang asan" FEATURES=test emerge-link update_engine

Change-Id: Ib8d80711d039edf18a323aefaad4ce96e5dfc2e3
1 file changed
tree: 42baeedef7e32b8854de65920e72c275097910d3
  1. client_library/
  2. dbus_bindings/
  3. include/
  4. init/
  5. payload_generator/
  6. sample_images/
  7. update_manager/
  8. update_payload_key/
  9. .gitignore
  10. action.h
  11. action_pipe.h
  12. action_pipe_unittest.cc
  13. action_processor.cc
  14. action_processor.h
  15. action_processor_unittest.cc
  16. action_unittest.cc
  17. Android.mk
  18. boot_control.h
  19. boot_control_android.cc
  20. boot_control_android.h
  21. boot_control_chromeos.cc
  22. boot_control_chromeos.h
  23. boot_control_chromeos_unittest.cc
  24. boot_control_interface.h
  25. bzip.cc
  26. bzip.h
  27. bzip_extent_writer.cc
  28. bzip_extent_writer.h
  29. bzip_extent_writer_unittest.cc
  30. certificate_checker.cc
  31. certificate_checker.h
  32. certificate_checker_unittest.cc
  33. chrome_browser_proxy_resolver.cc
  34. chrome_browser_proxy_resolver.h
  35. chrome_browser_proxy_resolver_unittest.cc
  36. clock.cc
  37. clock.h
  38. clock_interface.h
  39. connection_manager.cc
  40. connection_manager.h
  41. connection_manager_interface.h
  42. connection_manager_unittest.cc
  43. constants.cc
  44. constants.h
  45. daemon.cc
  46. daemon.h
  47. dbus_service.cc
  48. dbus_service.h
  49. dbus_service_unittest.cc
  50. dbus_test_utils.h
  51. delta_performer.cc
  52. delta_performer.h
  53. delta_performer_integration_test.cc
  54. delta_performer_unittest.cc
  55. download_action.cc
  56. download_action.h
  57. download_action_unittest.cc
  58. error_code.h
  59. extent_writer.cc
  60. extent_writer.h
  61. extent_writer_unittest.cc
  62. fake_boot_control.h
  63. fake_clock.h
  64. fake_extent_writer.h
  65. fake_file_writer.h
  66. fake_hardware.h
  67. fake_p2p_manager.h
  68. fake_p2p_manager_configuration.h
  69. fake_prefs.cc
  70. fake_prefs.h
  71. fake_shill_proxy.cc
  72. fake_shill_proxy.h
  73. fake_system_state.cc
  74. fake_system_state.h
  75. file_descriptor.cc
  76. file_descriptor.h
  77. file_writer.cc
  78. file_writer.h
  79. file_writer_unittest.cc
  80. filesystem_verifier_action.cc
  81. filesystem_verifier_action.h
  82. filesystem_verifier_action_unittest.cc
  83. generate_pc_file.sh
  84. hardware.h
  85. hardware_android.cc
  86. hardware_android.h
  87. hardware_chromeos.cc
  88. hardware_chromeos.h
  89. hardware_interface.h
  90. http_common.cc
  91. http_common.h
  92. http_fetcher.cc
  93. http_fetcher.h
  94. http_fetcher_unittest.cc
  95. hwid_override.cc
  96. hwid_override.h
  97. hwid_override_unittest.cc
  98. install_plan.cc
  99. install_plan.h
  100. libcros_proxy.cc
  101. libcros_proxy.h
  102. libcurl_http_fetcher.cc
  103. libcurl_http_fetcher.h
  104. libupdate_engine-client-test.pc.in
  105. libupdate_engine-client.pc.in
  106. local_coverage_rate
  107. main.cc
  108. metrics.cc
  109. metrics.h
  110. mock_action.h
  111. mock_action_processor.h
  112. mock_certificate_checker.h
  113. mock_connection_manager.h
  114. mock_file_writer.h
  115. mock_hardware.h
  116. mock_http_fetcher.cc
  117. mock_http_fetcher.h
  118. mock_omaha_request_params.h
  119. mock_p2p_manager.h
  120. mock_payload_state.h
  121. mock_prefs.h
  122. mock_update_attempter.h
  123. MODULE_LICENSE_APACHE2
  124. mtd_file_descriptor.cc
  125. mtd_file_descriptor.h
  126. multi_range_http_fetcher.cc
  127. multi_range_http_fetcher.h
  128. NOTICE
  129. omaha_hash_calculator.cc
  130. omaha_hash_calculator.h
  131. omaha_hash_calculator_unittest.cc
  132. omaha_request_action.cc
  133. omaha_request_action.h
  134. omaha_request_action_unittest.cc
  135. omaha_request_params.cc
  136. omaha_request_params.h
  137. omaha_request_params_unittest.cc
  138. omaha_response.h
  139. omaha_response_handler_action.cc
  140. omaha_response_handler_action.h
  141. omaha_response_handler_action_unittest.cc
  142. OWNERS
  143. p2p_manager.cc
  144. p2p_manager.h
  145. p2p_manager_unittest.cc
  146. payload_constants.cc
  147. payload_constants.h
  148. payload_state.cc
  149. payload_state.h
  150. payload_state_interface.h
  151. payload_state_unittest.cc
  152. payload_verifier.cc
  153. payload_verifier.h
  154. platform_constants.h
  155. platform_constants_android.cc
  156. platform_constants_chromeos.cc
  157. postinstall_runner_action.cc
  158. postinstall_runner_action.h
  159. postinstall_runner_action_unittest.cc
  160. prefs.cc
  161. prefs.h
  162. prefs_interface.h
  163. prefs_unittest.cc
  164. PRESUBMIT.cfg
  165. proxy_resolver.cc
  166. proxy_resolver.h
  167. real_system_state.cc
  168. real_system_state.h
  169. run_unittests
  170. sample_omaha_v3_response.xml
  171. shill_proxy.cc
  172. shill_proxy.h
  173. shill_proxy_interface.h
  174. subprocess.cc
  175. subprocess.h
  176. subprocess_unittest.cc
  177. system_state.h
  178. tar_bunzip2.gypi
  179. terminator.cc
  180. terminator.h
  181. terminator_unittest.cc
  182. test_http_server.cc
  183. test_utils.cc
  184. test_utils.h
  185. test_utils_unittest.cc
  186. testrunner.cc
  187. unittest_key.pem
  188. unittest_key2.pem
  189. update_attempter.cc
  190. update_attempter.h
  191. update_attempter_unittest.cc
  192. update_engine-client.gyp
  193. update_engine.conf
  194. update_engine.gyp
  195. update_engine.rc
  196. update_engine_client.cc
  197. update_metadata.proto
  198. update_status_utils.cc
  199. update_status_utils.h
  200. UpdateEngine.conf
  201. utils.cc
  202. utils.h
  203. utils_unittest.cc
  204. WATCHLISTS
  205. xz_extent_writer.cc
  206. xz_extent_writer.h
  207. xz_extent_writer_unittest.cc
  208. zip_unittest.cc