| Index: chrome/common/chrome_utility_messages.h
|
| diff --git a/chrome/common/chrome_utility_messages.h b/chrome/common/chrome_utility_messages.h
|
| index fd7b41f3cbe3d8868dd8d6b6b7b649c393790397..80ea64c713f88842c0159b1c082edc2c43046b26 100644
|
| --- a/chrome/common/chrome_utility_messages.h
|
| +++ b/chrome/common/chrome_utility_messages.h
|
| @@ -15,12 +15,17 @@
|
| #include "base/strings/string16.h"
|
| #include "base/tuple.h"
|
| #include "base/values.h"
|
| -#include "chrome/common/safe_browsing/zip_analyzer.h"
|
| +#include "chrome/common/safe_browsing/zip_analyzer_results.h"
|
| #include "ipc/ipc_message_macros.h"
|
| #include "ipc/ipc_platform_file.h"
|
| #include "third_party/skia/include/core/SkBitmap.h"
|
| #include "ui/gfx/ipc/gfx_param_traits.h"
|
|
|
| +#if defined(FULL_SAFE_BROWSING)
|
| +#include "chrome/common/safe_browsing/ipc_protobuf_message_macros.h"
|
| +#include "chrome/common/safe_browsing/protobuf_message_param_traits.h"
|
| +#endif
|
| +
|
| // Singly-included section for typedefs.
|
| #ifndef CHROME_COMMON_CHROME_UTILITY_MESSAGES_H_
|
| #define CHROME_COMMON_CHROME_UTILITY_MESSAGES_H_
|
| @@ -37,12 +42,71 @@ typedef std::vector<Tuple<base::string16, base::string16>>
|
| #define IPC_MESSAGE_START ChromeUtilityMsgStart
|
|
|
| #if defined(FULL_SAFE_BROWSING)
|
| +IPC_ENUM_TRAITS_VALIDATE(
|
| + safe_browsing::ClientDownloadRequest_DownloadType,
|
| + safe_browsing::ClientDownloadRequest_DownloadType_IsValid(value))
|
| +
|
| +IPC_PROTOBUF_MESSAGE_TRAITS_BEGIN(safe_browsing::ClientDownloadRequest_Digests)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_COMPLEX_MEMBER(sha256)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_COMPLEX_MEMBER(sha1)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_COMPLEX_MEMBER(md5)
|
| +IPC_PROTOBUF_MESSAGE_TRAITS_END()
|
| +
|
| +IPC_PROTOBUF_MESSAGE_TRAITS_BEGIN(
|
| + safe_browsing::ClientDownloadRequest_CertificateChain_Element)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_COMPLEX_MEMBER(certificate)
|
| +IPC_PROTOBUF_MESSAGE_TRAITS_END()
|
| +
|
| +IPC_PROTOBUF_MESSAGE_TRAITS_BEGIN(
|
| + safe_browsing::ClientDownloadRequest_CertificateChain)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_REPEATED_COMPLEX_MEMBER(element)
|
| +IPC_PROTOBUF_MESSAGE_TRAITS_END()
|
| +
|
| +IPC_PROTOBUF_MESSAGE_TRAITS_BEGIN(
|
| + safe_browsing::ClientDownloadRequest_SignatureInfo)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_REPEATED_COMPLEX_MEMBER(certificate_chain)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_FUNDAMENTAL_MEMBER(trusted)
|
| +IPC_PROTOBUF_MESSAGE_TRAITS_END()
|
| +
|
| +IPC_PROTOBUF_MESSAGE_TRAITS_BEGIN(
|
| + safe_browsing::ClientDownloadRequest_PEImageHeaders_DebugData)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_COMPLEX_MEMBER(directory_entry)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_COMPLEX_MEMBER(raw_data)
|
| +IPC_PROTOBUF_MESSAGE_TRAITS_END()
|
| +
|
| +IPC_PROTOBUF_MESSAGE_TRAITS_BEGIN(
|
| + safe_browsing::ClientDownloadRequest_PEImageHeaders)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_COMPLEX_MEMBER(dos_header)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_COMPLEX_MEMBER(file_header)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_COMPLEX_MEMBER(optional_headers32)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_COMPLEX_MEMBER(optional_headers64)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_REPEATED_COMPLEX_MEMBER(section_header)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_COMPLEX_MEMBER(export_section_data)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_REPEATED_COMPLEX_MEMBER(debug_data)
|
| +IPC_PROTOBUF_MESSAGE_TRAITS_END()
|
| +
|
| +IPC_PROTOBUF_MESSAGE_TRAITS_BEGIN(
|
| + safe_browsing::ClientDownloadRequest_ImageHeaders)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_COMPLEX_MEMBER(pe_headers)
|
| +IPC_PROTOBUF_MESSAGE_TRAITS_END()
|
| +
|
| +IPC_PROTOBUF_MESSAGE_TRAITS_BEGIN(
|
| + safe_browsing::ClientDownloadRequest_ArchivedBinary)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_COMPLEX_MEMBER(file_basename)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_FUNDAMENTAL_MEMBER(download_type)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_COMPLEX_MEMBER(digests)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_FUNDAMENTAL_MEMBER(length)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_COMPLEX_MEMBER(signature)
|
| + IPC_PROTOBUF_MESSAGE_TRAITS_OPTIONAL_COMPLEX_MEMBER(image_headers)
|
| +IPC_PROTOBUF_MESSAGE_TRAITS_END()
|
| +
|
| IPC_STRUCT_TRAITS_BEGIN(safe_browsing::zip_analyzer::Results)
|
| IPC_STRUCT_TRAITS_MEMBER(success)
|
| IPC_STRUCT_TRAITS_MEMBER(has_executable)
|
| IPC_STRUCT_TRAITS_MEMBER(has_archive)
|
| + IPC_STRUCT_TRAITS_MEMBER(archived_binary)
|
| IPC_STRUCT_TRAITS_END()
|
| -#endif
|
| +#endif // FULL_SAFE_BROWSING
|
|
|
| #if defined(OS_WIN)
|
| IPC_STRUCT_BEGIN(ChromeUtilityMsg_GetSaveFileName_Params)
|
| @@ -105,9 +169,11 @@ IPC_MESSAGE_CONTROL0(ChromeUtilityMsg_StartupPing)
|
|
|
| #if defined(FULL_SAFE_BROWSING)
|
| // Tells the utility process to analyze a zip file for malicious download
|
| -// protection.
|
| -IPC_MESSAGE_CONTROL1(ChromeUtilityMsg_AnalyzeZipFileForDownloadProtection,
|
| - IPC::PlatformFileForTransit /* zip_file */)
|
| +// protection, providing a file that can be used temporarily to analyze binaries
|
| +// contained therein.
|
| +IPC_MESSAGE_CONTROL2(ChromeUtilityMsg_AnalyzeZipFileForDownloadProtection,
|
| + IPC::PlatformFileForTransit /* zip_file */,
|
| + IPC::PlatformFileForTransit /* temp_file */)
|
| #endif
|
|
|
| #if defined(OS_WIN)
|
|
|