Index: chrome/browser/component_updater/component_unpacker.h |
=================================================================== |
--- chrome/browser/component_updater/component_unpacker.h (revision 201835) |
+++ chrome/browser/component_updater/component_unpacker.h (working copy) |
@@ -5,11 +5,13 @@ |
#ifndef CHROME_BROWSER_COMPONENT_UPDATER_COMPONENT_UNPACKER_H_ |
#define CHROME_BROWSER_COMPONENT_UPDATER_COMPONENT_UNPACKER_H_ |
+#include <string> |
#include <vector> |
#include "base/files/file_path.h" |
class ComponentInstaller; |
+class ComponentPatcher; |
// In charge of unpacking the component CRX package and verifying that it is |
// well formed and the cryptographic signature is correct. If there is no |
@@ -30,18 +32,27 @@ |
kNone, |
kInvalidParams, |
kInvalidFile, |
- kUzipPathError, |
+ kUnzipPathError, |
kUnzipFailed, |
kNoManifest, |
kBadManifest, |
kBadExtension, |
kInvalidId, |
kInstallerError, |
+ kIoError, |
+ kDeltaVerificationFailure, |
+ kDeltaBadCommands, |
+ kDeltaUnsupportedCommand, |
+ kDeltaOperationFailure, |
+ kDeltaPatchProcessFailure, |
+ kFingerprintWriteFailed, |
}; |
// Unpacks, verifies and calls the installer. |pk_hash| is the expected |
// public key SHA256 hash. |path| is the current location of the CRX. |
ComponentUnpacker(const std::vector<uint8>& pk_hash, |
const base::FilePath& path, |
+ const std::string& fingerprint, |
+ ComponentPatcher* patcher, |
ComponentInstaller* installer); |
// If something went wrong during unpacking or installer invocation, the |
@@ -50,9 +61,12 @@ |
Error error() const { return error_; } |
+ int extended_error() const { return extended_error_; } |
+ |
private: |
base::FilePath unpack_path_; |
Error error_; |
+ int extended_error_; // Provides additional error information. |
}; |
#endif // CHROME_BROWSER_COMPONENT_UPDATER_COMPONENT_UNPACKER_H_ |