1 /* 2 * Copyright 2019 The Grafeas Authors. All rights reserved. 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * https://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 // Generated by the protocol buffer compiler. DO NOT EDIT! 18 // source: grafeas/v1/vulnerability.proto 19 20 package io.grafeas.v1; 21 22 public interface VulnerabilityNoteOrBuilder 23 extends 24 // @@protoc_insertion_point(interface_extends:grafeas.v1.VulnerabilityNote) 25 com.google.protobuf.MessageOrBuilder { 26 27 /** 28 * 29 * 30 * <pre> 31 * The CVSS score of this vulnerability. CVSS score is on a scale of 0 - 10 32 * where 0 indicates low severity and 10 indicates high severity. 33 * </pre> 34 * 35 * <code>float cvss_score = 1;</code> 36 * 37 * @return The cvssScore. 38 */ getCvssScore()39 float getCvssScore(); 40 41 /** 42 * 43 * 44 * <pre> 45 * The note provider assigned severity of this vulnerability. 46 * </pre> 47 * 48 * <code>.grafeas.v1.Severity severity = 2;</code> 49 * 50 * @return The enum numeric value on the wire for severity. 51 */ getSeverityValue()52 int getSeverityValue(); 53 /** 54 * 55 * 56 * <pre> 57 * The note provider assigned severity of this vulnerability. 58 * </pre> 59 * 60 * <code>.grafeas.v1.Severity severity = 2;</code> 61 * 62 * @return The severity. 63 */ getSeverity()64 io.grafeas.v1.Severity getSeverity(); 65 66 /** 67 * 68 * 69 * <pre> 70 * Details of all known distros and packages affected by this vulnerability. 71 * </pre> 72 * 73 * <code>repeated .grafeas.v1.VulnerabilityNote.Detail details = 3;</code> 74 */ getDetailsList()75 java.util.List<io.grafeas.v1.VulnerabilityNote.Detail> getDetailsList(); 76 /** 77 * 78 * 79 * <pre> 80 * Details of all known distros and packages affected by this vulnerability. 81 * </pre> 82 * 83 * <code>repeated .grafeas.v1.VulnerabilityNote.Detail details = 3;</code> 84 */ getDetails(int index)85 io.grafeas.v1.VulnerabilityNote.Detail getDetails(int index); 86 /** 87 * 88 * 89 * <pre> 90 * Details of all known distros and packages affected by this vulnerability. 91 * </pre> 92 * 93 * <code>repeated .grafeas.v1.VulnerabilityNote.Detail details = 3;</code> 94 */ getDetailsCount()95 int getDetailsCount(); 96 /** 97 * 98 * 99 * <pre> 100 * Details of all known distros and packages affected by this vulnerability. 101 * </pre> 102 * 103 * <code>repeated .grafeas.v1.VulnerabilityNote.Detail details = 3;</code> 104 */ 105 java.util.List<? extends io.grafeas.v1.VulnerabilityNote.DetailOrBuilder> getDetailsOrBuilderList()106 getDetailsOrBuilderList(); 107 /** 108 * 109 * 110 * <pre> 111 * Details of all known distros and packages affected by this vulnerability. 112 * </pre> 113 * 114 * <code>repeated .grafeas.v1.VulnerabilityNote.Detail details = 3;</code> 115 */ getDetailsOrBuilder(int index)116 io.grafeas.v1.VulnerabilityNote.DetailOrBuilder getDetailsOrBuilder(int index); 117 118 /** 119 * 120 * 121 * <pre> 122 * The full description of the CVSSv3 for this vulnerability. 123 * </pre> 124 * 125 * <code>.grafeas.v1.CVSSv3 cvss_v3 = 4;</code> 126 * 127 * @return Whether the cvssV3 field is set. 128 */ hasCvssV3()129 boolean hasCvssV3(); 130 /** 131 * 132 * 133 * <pre> 134 * The full description of the CVSSv3 for this vulnerability. 135 * </pre> 136 * 137 * <code>.grafeas.v1.CVSSv3 cvss_v3 = 4;</code> 138 * 139 * @return The cvssV3. 140 */ getCvssV3()141 io.grafeas.v1.CVSSv3 getCvssV3(); 142 /** 143 * 144 * 145 * <pre> 146 * The full description of the CVSSv3 for this vulnerability. 147 * </pre> 148 * 149 * <code>.grafeas.v1.CVSSv3 cvss_v3 = 4;</code> 150 */ getCvssV3OrBuilder()151 io.grafeas.v1.CVSSv3OrBuilder getCvssV3OrBuilder(); 152 153 /** 154 * 155 * 156 * <pre> 157 * Windows details get their own format because the information format and 158 * model don't match a normal detail. Specifically Windows updates are done as 159 * patches, thus Windows vulnerabilities really are a missing package, rather 160 * than a package being at an incorrect version. 161 * </pre> 162 * 163 * <code>repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5;</code> 164 */ getWindowsDetailsList()165 java.util.List<io.grafeas.v1.VulnerabilityNote.WindowsDetail> getWindowsDetailsList(); 166 /** 167 * 168 * 169 * <pre> 170 * Windows details get their own format because the information format and 171 * model don't match a normal detail. Specifically Windows updates are done as 172 * patches, thus Windows vulnerabilities really are a missing package, rather 173 * than a package being at an incorrect version. 174 * </pre> 175 * 176 * <code>repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5;</code> 177 */ getWindowsDetails(int index)178 io.grafeas.v1.VulnerabilityNote.WindowsDetail getWindowsDetails(int index); 179 /** 180 * 181 * 182 * <pre> 183 * Windows details get their own format because the information format and 184 * model don't match a normal detail. Specifically Windows updates are done as 185 * patches, thus Windows vulnerabilities really are a missing package, rather 186 * than a package being at an incorrect version. 187 * </pre> 188 * 189 * <code>repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5;</code> 190 */ getWindowsDetailsCount()191 int getWindowsDetailsCount(); 192 /** 193 * 194 * 195 * <pre> 196 * Windows details get their own format because the information format and 197 * model don't match a normal detail. Specifically Windows updates are done as 198 * patches, thus Windows vulnerabilities really are a missing package, rather 199 * than a package being at an incorrect version. 200 * </pre> 201 * 202 * <code>repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5;</code> 203 */ 204 java.util.List<? extends io.grafeas.v1.VulnerabilityNote.WindowsDetailOrBuilder> getWindowsDetailsOrBuilderList()205 getWindowsDetailsOrBuilderList(); 206 /** 207 * 208 * 209 * <pre> 210 * Windows details get their own format because the information format and 211 * model don't match a normal detail. Specifically Windows updates are done as 212 * patches, thus Windows vulnerabilities really are a missing package, rather 213 * than a package being at an incorrect version. 214 * </pre> 215 * 216 * <code>repeated .grafeas.v1.VulnerabilityNote.WindowsDetail windows_details = 5;</code> 217 */ getWindowsDetailsOrBuilder(int index)218 io.grafeas.v1.VulnerabilityNote.WindowsDetailOrBuilder getWindowsDetailsOrBuilder(int index); 219 220 /** 221 * 222 * 223 * <pre> 224 * The time this information was last changed at the source. This is an 225 * upstream timestamp from the underlying information source - e.g. Ubuntu 226 * security tracker. 227 * </pre> 228 * 229 * <code>.google.protobuf.Timestamp source_update_time = 6;</code> 230 * 231 * @return Whether the sourceUpdateTime field is set. 232 */ hasSourceUpdateTime()233 boolean hasSourceUpdateTime(); 234 /** 235 * 236 * 237 * <pre> 238 * The time this information was last changed at the source. This is an 239 * upstream timestamp from the underlying information source - e.g. Ubuntu 240 * security tracker. 241 * </pre> 242 * 243 * <code>.google.protobuf.Timestamp source_update_time = 6;</code> 244 * 245 * @return The sourceUpdateTime. 246 */ getSourceUpdateTime()247 com.google.protobuf.Timestamp getSourceUpdateTime(); 248 /** 249 * 250 * 251 * <pre> 252 * The time this information was last changed at the source. This is an 253 * upstream timestamp from the underlying information source - e.g. Ubuntu 254 * security tracker. 255 * </pre> 256 * 257 * <code>.google.protobuf.Timestamp source_update_time = 6;</code> 258 */ getSourceUpdateTimeOrBuilder()259 com.google.protobuf.TimestampOrBuilder getSourceUpdateTimeOrBuilder(); 260 261 /** 262 * 263 * 264 * <pre> 265 * CVSS version used to populate cvss_score and severity. 266 * </pre> 267 * 268 * <code>.grafeas.v1.CVSSVersion cvss_version = 7;</code> 269 * 270 * @return The enum numeric value on the wire for cvssVersion. 271 */ getCvssVersionValue()272 int getCvssVersionValue(); 273 /** 274 * 275 * 276 * <pre> 277 * CVSS version used to populate cvss_score and severity. 278 * </pre> 279 * 280 * <code>.grafeas.v1.CVSSVersion cvss_version = 7;</code> 281 * 282 * @return The cvssVersion. 283 */ getCvssVersion()284 io.grafeas.v1.CVSSVersion getCvssVersion(); 285 286 /** 287 * 288 * 289 * <pre> 290 * The full description of the v2 CVSS for this vulnerability. 291 * </pre> 292 * 293 * <code>.grafeas.v1.CVSS cvss_v2 = 8;</code> 294 * 295 * @return Whether the cvssV2 field is set. 296 */ hasCvssV2()297 boolean hasCvssV2(); 298 /** 299 * 300 * 301 * <pre> 302 * The full description of the v2 CVSS for this vulnerability. 303 * </pre> 304 * 305 * <code>.grafeas.v1.CVSS cvss_v2 = 8;</code> 306 * 307 * @return The cvssV2. 308 */ getCvssV2()309 io.grafeas.v1.CVSS getCvssV2(); 310 /** 311 * 312 * 313 * <pre> 314 * The full description of the v2 CVSS for this vulnerability. 315 * </pre> 316 * 317 * <code>.grafeas.v1.CVSS cvss_v2 = 8;</code> 318 */ getCvssV2OrBuilder()319 io.grafeas.v1.CVSSOrBuilder getCvssV2OrBuilder(); 320 } 321