summaryrefslogtreecommitdiff
path: root/chromium/chrome/common/safe_browsing/download_file_types.proto
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/chrome/common/safe_browsing/download_file_types.proto')
-rw-r--r--chromium/chrome/common/safe_browsing/download_file_types.proto80
1 files changed, 80 insertions, 0 deletions
diff --git a/chromium/chrome/common/safe_browsing/download_file_types.proto b/chromium/chrome/common/safe_browsing/download_file_types.proto
new file mode 100644
index 00000000000..f9e2f3bb561
--- /dev/null
+++ b/chromium/chrome/common/safe_browsing/download_file_types.proto
@@ -0,0 +1,80 @@
+// Copyright 2016 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.
+
+syntax = "proto2";
+
+option optimize_for = LITE_RUNTIME;
+
+package safe_browsing;
+
+// See //chrome/browser/resources/safe_browsing/README.md for guidelines
+// on how to set fields in this file.
+
+// Next id: 5
+message DownloadFileType {
+ optional string extension = 1; // required, except in default_file_type.
+ optional int64 uma_value = 2; // required
+ optional bool is_archive = 3 [default = false];
+
+ enum PingSetting {
+ SAMPLED_PING = 0;
+ NO_PING = 1;
+ FULL_PING = 2;
+ }
+ optional PingSetting ping_setting = 4; // required
+
+ enum DangerLevel {
+ NOT_DANGEROUS = 0;
+ ALLOW_ON_USER_GESTURE = 1;
+ DANGEROUS = 2;
+ }
+
+ enum AutoOpenHint {
+ DISALLOW_AUTO_OPEN = 0;
+ ALLOW_AUTO_OPEN = 1;
+ }
+
+ enum PlatformType {
+ PLATFORM_ANY = 0;
+ PLATFORM_ANDROID = 1;
+ PLATFORM_CHROME_OS = 2;
+ PLATFORM_LINUX = 3;
+ PLATFORM_MAC = 4;
+ PLATFORM_WINDOWS = 5;
+ }
+
+ // Next id: 5
+ message PlatformSettings {
+ optional PlatformType platform = 1 [default = PLATFORM_ANY];
+ optional DangerLevel danger_level = 2; // required
+ optional AutoOpenHint auto_open_hint = 3; // required
+ optional uint64 max_file_size_to_analyze = 4
+ [default = 18446744073709551615]; // (2^64)-1]
+ };
+
+ // Protos parsed by Chrome should have exactly one entry here.
+ repeated PlatformSettings platform_settings = 5;
+
+ // The type of file content inspection we should do, if any.
+ enum InspectionType {
+ NONE = 0;
+ ZIP = 1;
+ RAR = 2;
+ DMG = 3;
+ }
+ optional InspectionType inspection_type = 6;
+};
+
+// Next id: 6
+message DownloadFileTypeConfig {
+ // All required
+ optional uint32 version_id = 1;
+ optional float sampled_ping_probability = 2;
+ repeated DownloadFileType file_types = 3;
+ optional DownloadFileType default_file_type = 4;
+
+ // Limits on repeated fields in the ClientDownloadRequest (i.e. the
+ // download ping). Limits are per-ping.
+ optional uint64 max_archived_binaries_to_report = 5;
+}