// Copyright 2024 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

syntax = "proto3";
option optimize_for = LITE_RUNTIME;

// This file defines the traffic annotations used to audit platform HTTP(s)
// requests.
package traffic_annotation;
option go_package = "go.chromium.org/chromiumos/system_api/traffic_annotation";

// Describes a kind of network traffic generated by the host.
message TrafficAnnotation {
  // Unique identifiers for traffic usage. A deprecated identifier cannot be
  // reused, new entries must always use a new identifier value.
  enum Id {
    // Traffic for an unspecified usage.
    UNSPECIFIED = 0;
    // Traffic from Shill captive portal detection.
    SHILL_PORTAL_DETECTOR = 1;
    // Traffic from Shill capport client.
    SHILL_CAPPORT_CLIENT = 2;
    // Traffic from Shill carrier entitlement.
    SHILL_CARRIER_ENTITLEMENT = 3;
  };

  Id host_id = 1;
}
