xref: /aosp_15_r20/external/googleapis/grafeas/v1/upgrade.proto (revision d5c09012810ac0c9f33fe448fb6da8260d444cc9)
1*d5c09012SAndroid Build Coastguard Worker// Copyright 2019 The Grafeas Authors. All rights reserved.
2*d5c09012SAndroid Build Coastguard Worker//
3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at
6*d5c09012SAndroid Build Coastguard Worker//
7*d5c09012SAndroid Build Coastguard Worker//    http://www.apache.org/licenses/LICENSE-2.0
8*d5c09012SAndroid Build Coastguard Worker//
9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
13*d5c09012SAndroid Build Coastguard Worker// limitations under the License.
14*d5c09012SAndroid Build Coastguard Worker
15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3";
16*d5c09012SAndroid Build Coastguard Worker
17*d5c09012SAndroid Build Coastguard Workerpackage grafeas.v1;
18*d5c09012SAndroid Build Coastguard Worker
19*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto";
20*d5c09012SAndroid Build Coastguard Workerimport "grafeas/v1/package.proto";
21*d5c09012SAndroid Build Coastguard Worker
22*d5c09012SAndroid Build Coastguard Workeroption go_package = "google.golang.org/genproto/googleapis/grafeas/v1;grafeas";
23*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true;
24*d5c09012SAndroid Build Coastguard Workeroption java_package = "io.grafeas.v1";
25*d5c09012SAndroid Build Coastguard Workeroption objc_class_prefix = "GRA";
26*d5c09012SAndroid Build Coastguard Worker
27*d5c09012SAndroid Build Coastguard Worker// An Upgrade Note represents a potential upgrade of a package to a given
28*d5c09012SAndroid Build Coastguard Worker// version. For each package version combination (i.e. bash 4.0, bash 4.1,
29*d5c09012SAndroid Build Coastguard Worker// bash 4.1.2), there will be an Upgrade Note. For Windows, windows_update field
30*d5c09012SAndroid Build Coastguard Worker// represents the information related to the update.
31*d5c09012SAndroid Build Coastguard Workermessage UpgradeNote {
32*d5c09012SAndroid Build Coastguard Worker  // Required for non-Windows OS. The package this Upgrade is for.
33*d5c09012SAndroid Build Coastguard Worker  string package = 1;
34*d5c09012SAndroid Build Coastguard Worker  // Required for non-Windows OS. The version of the package in machine + human
35*d5c09012SAndroid Build Coastguard Worker  // readable form.
36*d5c09012SAndroid Build Coastguard Worker  grafeas.v1.Version version = 2;
37*d5c09012SAndroid Build Coastguard Worker  // Metadata about the upgrade for each specific operating system.
38*d5c09012SAndroid Build Coastguard Worker  repeated UpgradeDistribution distributions = 3;
39*d5c09012SAndroid Build Coastguard Worker  // Required for Windows OS. Represents the metadata about the Windows update.
40*d5c09012SAndroid Build Coastguard Worker  WindowsUpdate windows_update = 4;
41*d5c09012SAndroid Build Coastguard Worker}
42*d5c09012SAndroid Build Coastguard Worker
43*d5c09012SAndroid Build Coastguard Worker// The Upgrade Distribution represents metadata about the Upgrade for each
44*d5c09012SAndroid Build Coastguard Worker// operating system (CPE). Some distributions have additional metadata around
45*d5c09012SAndroid Build Coastguard Worker// updates, classifying them into various categories and severities.
46*d5c09012SAndroid Build Coastguard Workermessage UpgradeDistribution {
47*d5c09012SAndroid Build Coastguard Worker  // Required - The specific operating system this metadata applies to. See
48*d5c09012SAndroid Build Coastguard Worker  // https://cpe.mitre.org/specification/.
49*d5c09012SAndroid Build Coastguard Worker  string cpe_uri = 1;
50*d5c09012SAndroid Build Coastguard Worker  // The operating system classification of this Upgrade, as specified by the
51*d5c09012SAndroid Build Coastguard Worker  // upstream operating system upgrade feed. For Windows the classification is
52*d5c09012SAndroid Build Coastguard Worker  // one of the category_ids listed at
53*d5c09012SAndroid Build Coastguard Worker  // https://docs.microsoft.com/en-us/previous-versions/windows/desktop/ff357803(v=vs.85)
54*d5c09012SAndroid Build Coastguard Worker  string classification = 2;
55*d5c09012SAndroid Build Coastguard Worker  // The severity as specified by the upstream operating system.
56*d5c09012SAndroid Build Coastguard Worker  string severity = 3;
57*d5c09012SAndroid Build Coastguard Worker  // The cve tied to this Upgrade.
58*d5c09012SAndroid Build Coastguard Worker  repeated string cve = 4;
59*d5c09012SAndroid Build Coastguard Worker}
60*d5c09012SAndroid Build Coastguard Worker
61*d5c09012SAndroid Build Coastguard Worker// Windows Update represents the metadata about the update for the Windows
62*d5c09012SAndroid Build Coastguard Worker// operating system. The fields in this message come from the Windows Update API
63*d5c09012SAndroid Build Coastguard Worker// documented at
64*d5c09012SAndroid Build Coastguard Worker// https://docs.microsoft.com/en-us/windows/win32/api/wuapi/nn-wuapi-iupdate.
65*d5c09012SAndroid Build Coastguard Workermessage WindowsUpdate {
66*d5c09012SAndroid Build Coastguard Worker  // The unique identifier of the update.
67*d5c09012SAndroid Build Coastguard Worker  message Identity {
68*d5c09012SAndroid Build Coastguard Worker    // The revision independent identifier of the update.
69*d5c09012SAndroid Build Coastguard Worker    string update_id = 1;
70*d5c09012SAndroid Build Coastguard Worker    // The revision number of the update.
71*d5c09012SAndroid Build Coastguard Worker    int32 revision = 2;
72*d5c09012SAndroid Build Coastguard Worker  }
73*d5c09012SAndroid Build Coastguard Worker  // Required - The unique identifier for the update.
74*d5c09012SAndroid Build Coastguard Worker  Identity identity = 1;
75*d5c09012SAndroid Build Coastguard Worker  // The localized title of the update.
76*d5c09012SAndroid Build Coastguard Worker  string title = 2;
77*d5c09012SAndroid Build Coastguard Worker  // The localized description of the update.
78*d5c09012SAndroid Build Coastguard Worker  string description = 3;
79*d5c09012SAndroid Build Coastguard Worker  // The category to which the update belongs.
80*d5c09012SAndroid Build Coastguard Worker  message Category {
81*d5c09012SAndroid Build Coastguard Worker    // The identifier of the category.
82*d5c09012SAndroid Build Coastguard Worker    string category_id = 1;
83*d5c09012SAndroid Build Coastguard Worker    // The localized name of the category.
84*d5c09012SAndroid Build Coastguard Worker    string name = 2;
85*d5c09012SAndroid Build Coastguard Worker  }
86*d5c09012SAndroid Build Coastguard Worker  // The list of categories to which the update belongs.
87*d5c09012SAndroid Build Coastguard Worker  repeated Category categories = 4;
88*d5c09012SAndroid Build Coastguard Worker  // The Microsoft Knowledge Base article IDs that are associated with the
89*d5c09012SAndroid Build Coastguard Worker  // update.
90*d5c09012SAndroid Build Coastguard Worker  repeated string kb_article_ids = 5;
91*d5c09012SAndroid Build Coastguard Worker  // The hyperlink to the support information for the update.
92*d5c09012SAndroid Build Coastguard Worker  string support_url = 6;
93*d5c09012SAndroid Build Coastguard Worker  // The last published timestamp of the update.
94*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp last_published_timestamp = 7;
95*d5c09012SAndroid Build Coastguard Worker}
96*d5c09012SAndroid Build Coastguard Worker
97*d5c09012SAndroid Build Coastguard Worker// An Upgrade Occurrence represents that a specific resource_url could install a
98*d5c09012SAndroid Build Coastguard Worker// specific upgrade. This presence is supplied via local sources (i.e. it is
99*d5c09012SAndroid Build Coastguard Worker// present in the mirror and the running system has noticed its availability).
100*d5c09012SAndroid Build Coastguard Worker// For Windows, both distribution and windows_update contain information for the
101*d5c09012SAndroid Build Coastguard Worker// Windows update.
102*d5c09012SAndroid Build Coastguard Workermessage UpgradeOccurrence {
103*d5c09012SAndroid Build Coastguard Worker  // Required for non-Windows OS. The package this Upgrade is for.
104*d5c09012SAndroid Build Coastguard Worker  string package = 1;
105*d5c09012SAndroid Build Coastguard Worker  // Required for non-Windows OS. The version of the package in a machine +
106*d5c09012SAndroid Build Coastguard Worker  // human readable form.
107*d5c09012SAndroid Build Coastguard Worker  grafeas.v1.Version parsed_version = 3;
108*d5c09012SAndroid Build Coastguard Worker  // Metadata about the upgrade for available for the specific operating system
109*d5c09012SAndroid Build Coastguard Worker  // for the resource_url. This allows efficient filtering, as well as
110*d5c09012SAndroid Build Coastguard Worker  // making it easier to use the occurrence.
111*d5c09012SAndroid Build Coastguard Worker  UpgradeDistribution distribution = 4;
112*d5c09012SAndroid Build Coastguard Worker  // Required for Windows OS. Represents the metadata about the Windows update.
113*d5c09012SAndroid Build Coastguard Worker  WindowsUpdate windows_update = 5;
114*d5c09012SAndroid Build Coastguard Worker}
115