| Index: courgette/courgette.h
|
| diff --git a/courgette/courgette.h b/courgette/courgette.h
|
| index 521053e06550b5b5d2bcbd5bd40e9c90d698e2f8..127a150353845a62e10f8bdc9df92ae5b9037528 100644
|
| --- a/courgette/courgette.h
|
| +++ b/courgette/courgette.h
|
| @@ -1,4 +1,4 @@
|
| -// Copyright (c) 2009 The Chromium Authors. All rights reserved.
|
| +// Copyright (c) 2011 The Chromium Authors. All rights reserved.
|
| // Use of this source code is governed by a BSD-style license that can be
|
| // found in the LICENSE file.
|
|
|
| @@ -50,6 +50,13 @@ enum Status {
|
| C_ADJUSTMENT_FAILED = 27, //
|
| };
|
|
|
| +// What type of executable is something
|
| +// Generally corresponds to CourgettePatchFile::TransformationMethodId
|
| +enum ExecutableType {
|
| + UNKNOWN,
|
| + WIN32_X86
|
| +};
|
| +
|
| class SinkStream;
|
| class SinkStreamSet;
|
| class SourceStream;
|
| @@ -80,12 +87,16 @@ Status ApplyEnsemblePatch(const FilePath::CharType* old_file_name,
|
| Status GenerateEnsemblePatch(SourceStream* old, SourceStream* target,
|
| SinkStream* patch);
|
|
|
| -// Parses a Windows 32-bit 'Portable Executable' format file from memory,
|
| -// storing the pointer to the AssemblyProgram in |*output|.
|
| +// Detects the type of an executable, and returns UNKNOWN if it cannot
|
| +// be parsed.
|
| +ExecutableType DetectExecutableType(const void* buffer, size_t length);
|
| +
|
| +// Attempts to detect the type of executable, and parse it with the
|
| +// appropriate tools, storing the pointer to the AssemblyProgram in |*output|.
|
| // Returns C_OK if successful, otherwise returns an error status and sets
|
| // |*output| to NULL.
|
| -Status ParseWin32X86PE(const void* buffer, size_t length,
|
| - AssemblyProgram** output);
|
| +Status ParseDetectedExecutable(const void* buffer, size_t length,
|
| + AssemblyProgram** output);
|
|
|
| // Converts |program| into encoded form, returning it as |*output|.
|
| // Returns C_OK if succeeded, otherwise returns an error status and
|
|
|