| // Copyright 2019 The Chromium Authors |
| // 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 chrome_browser_crowd_deny; |
| |
| // Information, about a specific site, relevant for making permission decisions. |
| message SiteReputation { |
| // The domain of the site this records describes. |
| optional string domain = 1; |
| |
| // The quality of the experience users have with notifications on a site. |
| enum NotificationUserExperienceQuality { |
| UNKNOWN = 0; |
| ACCEPTABLE = 1; |
| UNSOLICITED_PROMPTS = 2; |
| ABUSIVE_PROMPTS = 3; // Supported as of M84. |
| ABUSIVE_CONTENT = 4; // Supported as of M85. |
| DISRUPTIVE_BEHAVIOR = 5; |
| } |
| |
| // The quality of the experience users have with notifications on this site. |
| optional NotificationUserExperienceQuality notification_ux_quality = 2; |
| |
| // Whether the reputation propagates to all subdomains of |domain|. Supported |
| // as of M84. Older versions will always perform exact domain matching. |
| optional bool include_subdomains = 3; |
| |
| // Whether to merely print a console warning and not enforce. Supported as of |
| // M84. Older versions will always enforce if |notification_ux_quality| is |
| // set to a value recognized by the version, other than `ACCEPTABLE`. |
| optional bool warning_only = 4; |
| } |
| |
| // Information, about popular sites, relevant for making permission decisions. |
| // |
| // The preloaded list contains reputation data for popular sites, and is |
| // distributed to Chrome clients ahead of time through the component updater as |
| // part of the `crowd_deny_crx` component extension. The CRX package contains a |
| // single file with a single instance of this message in the binary wire format. |
| message PreloadData { |
| // Site reputation information for popular sites. Unsorted. |
| repeated SiteReputation site_reputations = 1; |
| } |