1*3c875a21SAndroid Build Coastguard Worker// Copyright (C) 2018 The Android Open Source Project 2*3c875a21SAndroid Build Coastguard Worker// 3*3c875a21SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*3c875a21SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*3c875a21SAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*3c875a21SAndroid Build Coastguard Worker// 7*3c875a21SAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*3c875a21SAndroid Build Coastguard Worker// 9*3c875a21SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*3c875a21SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*3c875a21SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*3c875a21SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*3c875a21SAndroid Build Coastguard Worker// limitations under the License. 14*3c875a21SAndroid Build Coastguard Worker 15*3c875a21SAndroid Build Coastguard Worker// A proto definition used to parse METADATA file in third party projects. 16*3c875a21SAndroid Build Coastguard Worker 17*3c875a21SAndroid Build Coastguard Worker// This proto will only contain fields and values the updater cares about. 18*3c875a21SAndroid Build Coastguard Worker// It is not intended to be the formal definition of METADATA file. 19*3c875a21SAndroid Build Coastguard Worker 20*3c875a21SAndroid Build Coastguard Worker// See google3/third_party/metadata.proto if you need to add more stuff to match 21*3c875a21SAndroid Build Coastguard Worker// upstream. 22*3c875a21SAndroid Build Coastguard Worker 23*3c875a21SAndroid Build Coastguard Workersyntax = "proto2"; // As long as upstream is proto2... 24*3c875a21SAndroid Build Coastguard Worker 25*3c875a21SAndroid Build Coastguard Workerpackage external_updater; 26*3c875a21SAndroid Build Coastguard Worker 27*3c875a21SAndroid Build Coastguard Workermessage MetaData { 28*3c875a21SAndroid Build Coastguard Worker optional string name = 1; 29*3c875a21SAndroid Build Coastguard Worker optional string description = 3; 30*3c875a21SAndroid Build Coastguard Worker optional ThirdPartyMetaData third_party = 13; 31*3c875a21SAndroid Build Coastguard Worker} 32*3c875a21SAndroid Build Coastguard Worker 33*3c875a21SAndroid Build Coastguard Workerenum LicenseType { 34*3c875a21SAndroid Build Coastguard Worker UNKNOWN = 0; 35*3c875a21SAndroid Build Coastguard Worker BY_EXCEPTION_ONLY = 1; 36*3c875a21SAndroid Build Coastguard Worker NOTICE = 2; 37*3c875a21SAndroid Build Coastguard Worker PERMISSIVE = 3; 38*3c875a21SAndroid Build Coastguard Worker RECIPROCAL = 4; 39*3c875a21SAndroid Build Coastguard Worker RESTRICTED_IF_STATICALLY_LINKED = 5; 40*3c875a21SAndroid Build Coastguard Worker RESTRICTED = 6; 41*3c875a21SAndroid Build Coastguard Worker UNENCUMBERED = 7; 42*3c875a21SAndroid Build Coastguard Worker} 43*3c875a21SAndroid Build Coastguard Worker 44*3c875a21SAndroid Build Coastguard Workerenum DirectoryType { 45*3c875a21SAndroid Build Coastguard Worker PACKAGE = 1; 46*3c875a21SAndroid Build Coastguard Worker GROUP = 2; 47*3c875a21SAndroid Build Coastguard Worker GOOGLE_INTERNAL = 4; 48*3c875a21SAndroid Build Coastguard Worker} 49*3c875a21SAndroid Build Coastguard Worker 50*3c875a21SAndroid Build Coastguard Workermessage ThirdPartyMetaData { 51*3c875a21SAndroid Build Coastguard Worker repeated URL url = 1; 52*3c875a21SAndroid Build Coastguard Worker optional string version = 2; 53*3c875a21SAndroid Build Coastguard Worker optional LicenseType license_type = 4; 54*3c875a21SAndroid Build Coastguard Worker optional string license_note = 5; 55*3c875a21SAndroid Build Coastguard Worker optional string local_modifications = 6; 56*3c875a21SAndroid Build Coastguard Worker optional Security security = 7; 57*3c875a21SAndroid Build Coastguard Worker optional Date last_upgrade_date = 10; 58*3c875a21SAndroid Build Coastguard Worker optional DirectoryType type = 11 [default = PACKAGE]; 59*3c875a21SAndroid Build Coastguard Worker optional string homepage = 14; 60*3c875a21SAndroid Build Coastguard Worker repeated Identifier identifier = 15; 61*3c875a21SAndroid Build Coastguard Worker} 62*3c875a21SAndroid Build Coastguard Worker 63*3c875a21SAndroid Build Coastguard Workermessage URL { 64*3c875a21SAndroid Build Coastguard Worker enum Type { 65*3c875a21SAndroid Build Coastguard Worker UNKNOWN = 0; 66*3c875a21SAndroid Build Coastguard Worker HOMEPAGE = 1; 67*3c875a21SAndroid Build Coastguard Worker ARCHIVE = 2; 68*3c875a21SAndroid Build Coastguard Worker GIT = 3; 69*3c875a21SAndroid Build Coastguard Worker PIPER = 4; 70*3c875a21SAndroid Build Coastguard Worker SVN = 7; 71*3c875a21SAndroid Build Coastguard Worker HG = 8; 72*3c875a21SAndroid Build Coastguard Worker DARCS = 9; 73*3c875a21SAndroid Build Coastguard Worker OTHER = 11; 74*3c875a21SAndroid Build Coastguard Worker } 75*3c875a21SAndroid Build Coastguard Worker 76*3c875a21SAndroid Build Coastguard Worker optional Type type = 1; 77*3c875a21SAndroid Build Coastguard Worker 78*3c875a21SAndroid Build Coastguard Worker optional string value = 2; 79*3c875a21SAndroid Build Coastguard Worker} 80*3c875a21SAndroid Build Coastguard Worker 81*3c875a21SAndroid Build Coastguard Workermessage Identifier { 82*3c875a21SAndroid Build Coastguard Worker optional string type = 1; 83*3c875a21SAndroid Build Coastguard Worker optional string omission_reason = 2; 84*3c875a21SAndroid Build Coastguard Worker optional string value = 3; 85*3c875a21SAndroid Build Coastguard Worker optional string version = 4; 86*3c875a21SAndroid Build Coastguard Worker optional bool primary_source = 6; 87*3c875a21SAndroid Build Coastguard Worker} 88*3c875a21SAndroid Build Coastguard Worker 89*3c875a21SAndroid Build Coastguard Workermessage Date { 90*3c875a21SAndroid Build Coastguard Worker optional int32 year = 1; 91*3c875a21SAndroid Build Coastguard Worker optional int32 month = 2; 92*3c875a21SAndroid Build Coastguard Worker optional int32 day = 3; 93*3c875a21SAndroid Build Coastguard Worker} 94*3c875a21SAndroid Build Coastguard Worker 95*3c875a21SAndroid Build Coastguard Workermessage Security { 96*3c875a21SAndroid Build Coastguard Worker enum Category { 97*3c875a21SAndroid Build Coastguard Worker SANDBOXED_ONLY = 1; 98*3c875a21SAndroid Build Coastguard Worker TRUSTED_DATA_ONLY = 2; 99*3c875a21SAndroid Build Coastguard Worker REVIEWED_AND_SECURE = 3; 100*3c875a21SAndroid Build Coastguard Worker } 101*3c875a21SAndroid Build Coastguard Worker 102*3c875a21SAndroid Build Coastguard Worker optional Category category = 1; 103*3c875a21SAndroid Build Coastguard Worker optional string note = 2; 104*3c875a21SAndroid Build Coastguard Worker repeated string tag = 3; 105*3c875a21SAndroid Build Coastguard Worker repeated string mitigated_security_patch = 5; 106*3c875a21SAndroid Build Coastguard Worker} 107