blob: d7d4cdf1f5b44b30bf3d1a553254b336d3c4e44f [file] [log] [blame]
// Copyright 2018 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.
//
// Safe Browsing Reporter request protocol buffers. This protocol message should
// be kept in sync with the server implementation in Google3.
syntax = "proto2";
import "shared_data.proto";
option optimize_for = LITE_RUNTIME;
package chrome_cleaner;
// Reporter logs to be sent to the Safe Browsing API.
//
// FoilReporterLogs is a legacy name that must be kept because existing
// analysis tools use it.
//
// Next tag: 10.
message FoilReporterLogs {
// Corresponded to data related to reporter experiments.
reserved 7, 8;
// Environmental data regarding the machine and the Reporter.
// Next tag: 9.
message EnvironmentData {
// The Windows version as an enum value from base::win::Version.
optional uint32 windows_version = 1;
// Reporter's version number (X.Y.Z).
optional string reporter_version = 2;
// The user's installed Chrome version.
optional string chrome_version = 3;
// The channel of the user's installed chrome. The possible values are:
// 0: unknown; 1: canary; 2: dev; 3: beta; 4: stable.
optional int32 chrome_channel = 4;
// The user's default locale. e.g. "en-US".
optional string default_locale = 5;
// The country of the client IP. e.g. "US". This field is set by the Safe
// Browsing server on receiving a report and should not be set in the
// reporter copy of this proto.
optional string client_country = 6;
// The bitness of the reporter process, 32 or 64.
optional int32 bitness = 7;
// The engine run by the reporter.
optional Engine engine = 8;
}
optional EnvironmentData environment = 1;
// The identifier of the current report, generated by the server and that
// cannot be linked to the user who sent this data.
optional string token = 2;
// The exit code of the Reporter run.
optional uint32 exit_code = 3;
// The list of UwS matched by the reporter with corresponding matching data.
repeated UwS detected_uws = 4;
// The timestamp when the server received this report, given as the number of
// micro-seconds since Unix Epoch.
optional int64 timestamp = 5;
// Identifier used to group all reports generated during the same run of the
// software reporter (which may include multiple invocations of the reporter
// binary, each generating a report).
optional string session_id = 6;
// Information about reporter processes and their resource usage.
repeated ProcessInformation process_information = 9;
}