OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef COMPONENTS_UPDATE_CLIENT_COMPONENT_UNPACKER_H_ | 5 #ifndef COMPONENTS_UPDATE_CLIENT_COMPONENT_UNPACKER_H_ |
6 #define COMPONENTS_UPDATE_CLIENT_COMPONENT_UNPACKER_H_ | 6 #define COMPONENTS_UPDATE_CLIENT_COMPONENT_UNPACKER_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
11 #include <string> | 11 #include <string> |
12 #include <vector> | 12 #include <vector> |
13 | 13 |
14 #include "base/callback.h" | 14 #include "base/callback.h" |
15 #include "base/files/file_path.h" | 15 #include "base/files/file_path.h" |
16 #include "base/json/json_file_value_serializer.h" | 16 #include "base/json/json_file_value_serializer.h" |
17 #include "base/macros.h" | 17 #include "base/macros.h" |
18 #include "base/memory/ref_counted.h" | 18 #include "base/memory/ref_counted.h" |
19 #include "base/sequenced_task_runner.h" | 19 #include "base/sequenced_task_runner.h" |
| 20 #include "components/update_client/out_of_process_patcher.h" |
20 #include "components/update_client/update_client_errors.h" | 21 #include "components/update_client/update_client_errors.h" |
21 | 22 |
22 namespace update_client { | 23 namespace update_client { |
23 | 24 |
24 class CrxInstaller; | 25 class CrxInstaller; |
25 class ComponentPatcher; | 26 class ComponentPatcher; |
26 class OutOfProcessPatcher; | |
27 | 27 |
28 // Deserializes the CRX manifest. The top level must be a dictionary. | 28 // Deserializes the CRX manifest. The top level must be a dictionary. |
29 std::unique_ptr<base::DictionaryValue> ReadManifest( | 29 std::unique_ptr<base::DictionaryValue> ReadManifest( |
30 const base::FilePath& unpack_path); | 30 const base::FilePath& unpack_path); |
31 | 31 |
32 // In charge of unpacking the component CRX package and verifying that it is | 32 // In charge of unpacking the component CRX package and verifying that it is |
33 // well formed and the cryptographic signature is correct. | 33 // well formed and the cryptographic signature is correct. |
34 // | 34 // |
35 // This class should be used only by the component updater. It is inspired by | 35 // This class should be used only by the component updater. It is inspired by |
36 // and overlaps with code in the extension's SandboxedUnpacker. | 36 // and overlaps with code in the extension's SandboxedUnpacker. |
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
136 UnpackerError error_; | 136 UnpackerError error_; |
137 int extended_error_; | 137 int extended_error_; |
138 scoped_refptr<base::SequencedTaskRunner> task_runner_; | 138 scoped_refptr<base::SequencedTaskRunner> task_runner_; |
139 | 139 |
140 DISALLOW_COPY_AND_ASSIGN(ComponentUnpacker); | 140 DISALLOW_COPY_AND_ASSIGN(ComponentUnpacker); |
141 }; | 141 }; |
142 | 142 |
143 } // namespace update_client | 143 } // namespace update_client |
144 | 144 |
145 #endif // COMPONENTS_UPDATE_CLIENT_COMPONENT_UNPACKER_H_ | 145 #endif // COMPONENTS_UPDATE_CLIENT_COMPONENT_UNPACKER_H_ |
OLD | NEW |