api/v3: prototool format

pull/540/head
Jimmy Zelinskie 6 years ago
parent 6b9f668ea0
commit d7a751e0d4

@ -26,9 +26,9 @@ package clairpb
import proto "github.com/golang/protobuf/proto"
import fmt "fmt"
import math "math"
import google_protobuf "github.com/golang/protobuf/ptypes/empty"
import google_protobuf1 "github.com/golang/protobuf/ptypes/timestamp"
import _ "google.golang.org/genproto/googleapis/api/annotations"
import google_protobuf1 "github.com/golang/protobuf/ptypes/empty"
import google_protobuf2 "github.com/golang/protobuf/ptypes/timestamp"
import (
context "golang.org/x/net/context"
@ -204,7 +204,7 @@ type ClairStatus struct {
// The configured list of namespace detectors used to scan an ancestry.
Detectors []string `protobuf:"bytes,2,rep,name=detectors" json:"detectors,omitempty"`
// The time at which the updater last ran.
LastUpdateTime *google_protobuf2.Timestamp `protobuf:"bytes,3,opt,name=last_update_time,json=lastUpdateTime" json:"last_update_time,omitempty"`
LastUpdateTime *google_protobuf1.Timestamp `protobuf:"bytes,3,opt,name=last_update_time,json=lastUpdateTime" json:"last_update_time,omitempty"`
}
func (m *ClairStatus) Reset() { *m = ClairStatus{} }
@ -226,7 +226,7 @@ func (m *ClairStatus) GetDetectors() []string {
return nil
}
func (m *ClairStatus) GetLastUpdateTime() *google_protobuf2.Timestamp {
func (m *ClairStatus) GetLastUpdateTime() *google_protobuf1.Timestamp {
if m != nil {
return m.LastUpdateTime
}
@ -670,22 +670,22 @@ func (m *MarkNotificationAsReadRequest) GetName() string {
}
func init() {
proto.RegisterType((*Vulnerability)(nil), "clairpb.Vulnerability")
proto.RegisterType((*Feature)(nil), "clairpb.Feature")
proto.RegisterType((*Layer)(nil), "clairpb.Layer")
proto.RegisterType((*ClairStatus)(nil), "clairpb.ClairStatus")
proto.RegisterType((*GetAncestryRequest)(nil), "clairpb.GetAncestryRequest")
proto.RegisterType((*GetAncestryResponse)(nil), "clairpb.GetAncestryResponse")
proto.RegisterType((*GetAncestryResponse_Ancestry)(nil), "clairpb.GetAncestryResponse.Ancestry")
proto.RegisterType((*PostAncestryRequest)(nil), "clairpb.PostAncestryRequest")
proto.RegisterType((*PostAncestryRequest_PostLayer)(nil), "clairpb.PostAncestryRequest.PostLayer")
proto.RegisterType((*PostAncestryResponse)(nil), "clairpb.PostAncestryResponse")
proto.RegisterType((*GetNotificationRequest)(nil), "clairpb.GetNotificationRequest")
proto.RegisterType((*GetNotificationResponse)(nil), "clairpb.GetNotificationResponse")
proto.RegisterType((*GetNotificationResponse_Notification)(nil), "clairpb.GetNotificationResponse.Notification")
proto.RegisterType((*PagedVulnerableAncestries)(nil), "clairpb.PagedVulnerableAncestries")
proto.RegisterType((*PagedVulnerableAncestries_IndexedAncestryName)(nil), "clairpb.PagedVulnerableAncestries.IndexedAncestryName")
proto.RegisterType((*MarkNotificationAsReadRequest)(nil), "clairpb.MarkNotificationAsReadRequest")
proto.RegisterType((*Vulnerability)(nil), "coreos.clair.Vulnerability")
proto.RegisterType((*Feature)(nil), "coreos.clair.Feature")
proto.RegisterType((*Layer)(nil), "coreos.clair.Layer")
proto.RegisterType((*ClairStatus)(nil), "coreos.clair.ClairStatus")
proto.RegisterType((*GetAncestryRequest)(nil), "coreos.clair.GetAncestryRequest")
proto.RegisterType((*GetAncestryResponse)(nil), "coreos.clair.GetAncestryResponse")
proto.RegisterType((*GetAncestryResponse_Ancestry)(nil), "coreos.clair.GetAncestryResponse.Ancestry")
proto.RegisterType((*PostAncestryRequest)(nil), "coreos.clair.PostAncestryRequest")
proto.RegisterType((*PostAncestryRequest_PostLayer)(nil), "coreos.clair.PostAncestryRequest.PostLayer")
proto.RegisterType((*PostAncestryResponse)(nil), "coreos.clair.PostAncestryResponse")
proto.RegisterType((*GetNotificationRequest)(nil), "coreos.clair.GetNotificationRequest")
proto.RegisterType((*GetNotificationResponse)(nil), "coreos.clair.GetNotificationResponse")
proto.RegisterType((*GetNotificationResponse_Notification)(nil), "coreos.clair.GetNotificationResponse.Notification")
proto.RegisterType((*PagedVulnerableAncestries)(nil), "coreos.clair.PagedVulnerableAncestries")
proto.RegisterType((*PagedVulnerableAncestries_IndexedAncestryName)(nil), "coreos.clair.PagedVulnerableAncestries.IndexedAncestryName")
proto.RegisterType((*MarkNotificationAsReadRequest)(nil), "coreos.clair.MarkNotificationAsReadRequest")
}
// Reference imports to suppress errors if they are not otherwise used.
@ -715,7 +715,7 @@ func NewAncestryServiceClient(cc *grpc.ClientConn) AncestryServiceClient {
func (c *ancestryServiceClient) GetAncestry(ctx context.Context, in *GetAncestryRequest, opts ...grpc.CallOption) (*GetAncestryResponse, error) {
out := new(GetAncestryResponse)
err := grpc.Invoke(ctx, "/clairpb.AncestryService/GetAncestry", in, out, c.cc, opts...)
err := grpc.Invoke(ctx, "/coreos.clair.AncestryService/GetAncestry", in, out, c.cc, opts...)
if err != nil {
return nil, err
}
@ -724,7 +724,7 @@ func (c *ancestryServiceClient) GetAncestry(ctx context.Context, in *GetAncestry
func (c *ancestryServiceClient) PostAncestry(ctx context.Context, in *PostAncestryRequest, opts ...grpc.CallOption) (*PostAncestryResponse, error) {
out := new(PostAncestryResponse)
err := grpc.Invoke(ctx, "/clairpb.AncestryService/PostAncestry", in, out, c.cc, opts...)
err := grpc.Invoke(ctx, "/coreos.clair.AncestryService/PostAncestry", in, out, c.cc, opts...)
if err != nil {
return nil, err
}
@ -754,7 +754,7 @@ func _AncestryService_GetAncestry_Handler(srv interface{}, ctx context.Context,
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/clairpb.AncestryService/GetAncestry",
FullMethod: "/coreos.clair.AncestryService/GetAncestry",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AncestryServiceServer).GetAncestry(ctx, req.(*GetAncestryRequest))
@ -772,7 +772,7 @@ func _AncestryService_PostAncestry_Handler(srv interface{}, ctx context.Context,
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/clairpb.AncestryService/PostAncestry",
FullMethod: "/coreos.clair.AncestryService/PostAncestry",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(AncestryServiceServer).PostAncestry(ctx, req.(*PostAncestryRequest))
@ -781,7 +781,7 @@ func _AncestryService_PostAncestry_Handler(srv interface{}, ctx context.Context,
}
var _AncestryService_serviceDesc = grpc.ServiceDesc{
ServiceName: "clairpb.AncestryService",
ServiceName: "coreos.clair.AncestryService",
HandlerType: (*AncestryServiceServer)(nil),
Methods: []grpc.MethodDesc{
{
@ -803,7 +803,7 @@ type NotificationServiceClient interface {
// The RPC used to get a particularly Notification.
GetNotification(ctx context.Context, in *GetNotificationRequest, opts ...grpc.CallOption) (*GetNotificationResponse, error)
// The RPC used to mark a Notification as read after it has been processed.
MarkNotificationAsRead(ctx context.Context, in *MarkNotificationAsReadRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error)
MarkNotificationAsRead(ctx context.Context, in *MarkNotificationAsReadRequest, opts ...grpc.CallOption) (*google_protobuf.Empty, error)
}
type notificationServiceClient struct {
@ -816,16 +816,16 @@ func NewNotificationServiceClient(cc *grpc.ClientConn) NotificationServiceClient
func (c *notificationServiceClient) GetNotification(ctx context.Context, in *GetNotificationRequest, opts ...grpc.CallOption) (*GetNotificationResponse, error) {
out := new(GetNotificationResponse)
err := grpc.Invoke(ctx, "/clairpb.NotificationService/GetNotification", in, out, c.cc, opts...)
err := grpc.Invoke(ctx, "/coreos.clair.NotificationService/GetNotification", in, out, c.cc, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *notificationServiceClient) MarkNotificationAsRead(ctx context.Context, in *MarkNotificationAsReadRequest, opts ...grpc.CallOption) (*google_protobuf1.Empty, error) {
out := new(google_protobuf1.Empty)
err := grpc.Invoke(ctx, "/clairpb.NotificationService/MarkNotificationAsRead", in, out, c.cc, opts...)
func (c *notificationServiceClient) MarkNotificationAsRead(ctx context.Context, in *MarkNotificationAsReadRequest, opts ...grpc.CallOption) (*google_protobuf.Empty, error) {
out := new(google_protobuf.Empty)
err := grpc.Invoke(ctx, "/coreos.clair.NotificationService/MarkNotificationAsRead", in, out, c.cc, opts...)
if err != nil {
return nil, err
}
@ -838,7 +838,7 @@ type NotificationServiceServer interface {
// The RPC used to get a particularly Notification.
GetNotification(context.Context, *GetNotificationRequest) (*GetNotificationResponse, error)
// The RPC used to mark a Notification as read after it has been processed.
MarkNotificationAsRead(context.Context, *MarkNotificationAsReadRequest) (*google_protobuf1.Empty, error)
MarkNotificationAsRead(context.Context, *MarkNotificationAsReadRequest) (*google_protobuf.Empty, error)
}
func RegisterNotificationServiceServer(s *grpc.Server, srv NotificationServiceServer) {
@ -855,7 +855,7 @@ func _NotificationService_GetNotification_Handler(srv interface{}, ctx context.C
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/clairpb.NotificationService/GetNotification",
FullMethod: "/coreos.clair.NotificationService/GetNotification",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(NotificationServiceServer).GetNotification(ctx, req.(*GetNotificationRequest))
@ -873,7 +873,7 @@ func _NotificationService_MarkNotificationAsRead_Handler(srv interface{}, ctx co
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/clairpb.NotificationService/MarkNotificationAsRead",
FullMethod: "/coreos.clair.NotificationService/MarkNotificationAsRead",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(NotificationServiceServer).MarkNotificationAsRead(ctx, req.(*MarkNotificationAsReadRequest))
@ -882,7 +882,7 @@ func _NotificationService_MarkNotificationAsRead_Handler(srv interface{}, ctx co
}
var _NotificationService_serviceDesc = grpc.ServiceDesc{
ServiceName: "clairpb.NotificationService",
ServiceName: "coreos.clair.NotificationService",
HandlerType: (*NotificationServiceServer)(nil),
Methods: []grpc.MethodDesc{
{
@ -901,78 +901,80 @@ var _NotificationService_serviceDesc = grpc.ServiceDesc{
func init() { proto.RegisterFile("api/v3/clairpb/clair.proto", fileDescriptor0) }
var fileDescriptor0 = []byte{
// 1166 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x56, 0xdd, 0x6f, 0xdb, 0x54,
0x14, 0x97, 0xd3, 0xa6, 0x49, 0x4e, 0xd2, 0x8f, 0xdd, 0x86, 0xcc, 0x73, 0x3b, 0xad, 0x33, 0xda,
0x98, 0xc6, 0x48, 0x44, 0x3a, 0x21, 0x54, 0xf1, 0xd5, 0xd1, 0x6d, 0x20, 0x6d, 0xd3, 0xf0, 0xa0,
0x0f, 0xbc, 0x44, 0xb7, 0xf6, 0x49, 0x6b, 0xd5, 0xb1, 0x8d, 0xef, 0x4d, 0xd2, 0x68, 0xe2, 0x05,
0x1e, 0x79, 0x02, 0xfe, 0x0f, 0xfe, 0x04, 0x5e, 0x41, 0x48, 0x3c, 0xed, 0x1d, 0x09, 0x89, 0x3f,
0x04, 0xdd, 0xeb, 0x7b, 0x1d, 0xbb, 0x75, 0xdb, 0x09, 0x9e, 0xe2, 0xf3, 0xfd, 0xf5, 0x3b, 0xf7,
0x04, 0x2c, 0x1a, 0xfb, 0xbd, 0xc9, 0x76, 0xcf, 0x0d, 0xa8, 0x9f, 0xc4, 0x07, 0xe9, 0x6f, 0x37,
0x4e, 0x22, 0x1e, 0x91, 0x9a, 0x62, 0x5a, 0x9b, 0x87, 0x51, 0x74, 0x18, 0x60, 0x4f, 0xe8, 0xd2,
0x30, 0x8c, 0x38, 0xe5, 0x7e, 0x14, 0xb2, 0x54, 0xcd, 0xda, 0x50, 0x52, 0x49, 0x1d, 0x8c, 0x87,
0x3d, 0x1c, 0xc5, 0x7c, 0xa6, 0x84, 0x37, 0x4e, 0x0b, 0xb9, 0x3f, 0x42, 0xc6, 0xe9, 0x28, 0x4e,
0x15, 0xec, 0x9f, 0x2a, 0xb0, 0xbc, 0x3f, 0x0e, 0x42, 0x4c, 0xe8, 0x81, 0x1f, 0xf8, 0x7c, 0x46,
0x08, 0x2c, 0x86, 0x74, 0x84, 0xa6, 0xb1, 0x65, 0xdc, 0x69, 0x38, 0xf2, 0x9b, 0xdc, 0x82, 0x15,
0xf1, 0xcb, 0x62, 0xea, 0xe2, 0x40, 0x4a, 0x2b, 0x52, 0xba, 0x9c, 0x71, 0x9f, 0x09, 0xb5, 0x2d,
0x68, 0x7a, 0xc8, 0xdc, 0xc4, 0x8f, 0x45, 0x82, 0xe6, 0x82, 0xd4, 0xc9, 0xb3, 0x84, 0xf3, 0xc0,
0x0f, 0x8f, 0xcd, 0xc5, 0xd4, 0xb9, 0xf8, 0x26, 0x16, 0xd4, 0x19, 0x4e, 0x30, 0xf1, 0xf9, 0xcc,
0xac, 0x4a, 0x7e, 0x46, 0x0b, 0xd9, 0x08, 0x39, 0xf5, 0x28, 0xa7, 0xe6, 0x52, 0x2a, 0xd3, 0x34,
0xb9, 0x06, 0xf5, 0xa1, 0x7f, 0x82, 0xde, 0xe0, 0x60, 0x66, 0xd6, 0xa4, 0xac, 0x26, 0xe9, 0x07,
0x33, 0xf2, 0x21, 0x5c, 0xa1, 0xc3, 0x21, 0xba, 0x1c, 0xbd, 0xc1, 0x04, 0x13, 0x26, 0xda, 0x65,
0xd6, 0xb7, 0x16, 0xee, 0x34, 0xfb, 0x6b, 0x5d, 0xd5, 0xd6, 0xee, 0x23, 0xa4, 0x7c, 0x9c, 0xa0,
0xb3, 0xa6, 0x55, 0xf7, 0x95, 0xa6, 0xfd, 0x9b, 0x01, 0x35, 0x25, 0xfd, 0x3f, 0xed, 0x30, 0xa1,
0xa6, 0x82, 0xab, 0x56, 0x68, 0x52, 0x38, 0x50, 0x9f, 0x83, 0x61, 0x94, 0x8c, 0x28, 0x57, 0x0d,
0x59, 0x56, 0xdc, 0x47, 0x92, 0x49, 0x3e, 0x81, 0xd5, 0x49, 0x6e, 0x36, 0x3e, 0x32, 0xb3, 0x2a,
0x8b, 0xe8, 0x64, 0x45, 0x14, 0x66, 0xe7, 0x9c, 0x56, 0xb7, 0x37, 0xa0, 0xfa, 0x84, 0xce, 0x30,
0x11, 0x65, 0x1c, 0x51, 0x76, 0xa4, 0xcb, 0x10, 0xdf, 0xf6, 0x0f, 0x06, 0x34, 0x3f, 0x15, 0x7e,
0x5e, 0x70, 0xca, 0xc7, 0x4c, 0xe4, 0x1b, 0xf8, 0x8c, 0x63, 0xc2, 0x4c, 0x63, 0x6b, 0x41, 0xe4,
0xab, 0x48, 0xb2, 0x09, 0x0d, 0x0f, 0x39, 0xba, 0x3c, 0x4a, 0x98, 0x59, 0x91, 0xb2, 0x39, 0x83,
0xec, 0xc1, 0x5a, 0x40, 0x19, 0x1f, 0x8c, 0x63, 0x8f, 0x72, 0x1c, 0x08, 0x88, 0xc9, 0x82, 0x9b,
0x7d, 0xab, 0x9b, 0xe2, 0xaf, 0xab, 0xf1, 0xd7, 0xfd, 0x52, 0xe3, 0xcf, 0x59, 0x11, 0x36, 0x5f,
0x49, 0x13, 0xc1, 0xb4, 0x7f, 0x34, 0x80, 0x3c, 0x46, 0xbe, 0x1b, 0xba, 0xc8, 0x78, 0x32, 0x73,
0xf0, 0x9b, 0x31, 0x32, 0x4e, 0xde, 0x84, 0x65, 0xaa, 0x58, 0x83, 0xdc, 0x20, 0x5a, 0x9a, 0x29,
0x3b, 0xfd, 0x2e, 0xb4, 0xa7, 0x3e, 0x3f, 0x1a, 0x9c, 0xee, 0x96, 0x18, 0x4b, 0xdd, 0x59, 0x17,
0xb2, 0xfd, 0xa2, 0x48, 0xf8, 0x95, 0x26, 0xc3, 0x74, 0xce, 0x4c, 0x66, 0x5c, 0x77, 0x5a, 0x82,
0xa9, 0x66, 0xcf, 0xec, 0x57, 0x15, 0x58, 0x2f, 0xe4, 0xc4, 0xe2, 0x28, 0x64, 0x48, 0x76, 0xa1,
0xae, 0xe3, 0xcb, 0x7c, 0x9a, 0xfd, 0x5b, 0xd9, 0x44, 0x4a, 0xf4, 0xbb, 0x19, 0x23, 0x33, 0x23,
0xf7, 0x60, 0x89, 0xc9, 0xb6, 0xcb, 0x24, 0x9b, 0xfd, 0x76, 0xe6, 0x20, 0x37, 0x12, 0x47, 0xe9,
0x58, 0x7f, 0x18, 0x50, 0xd7, 0x4e, 0x4a, 0x21, 0x79, 0x0f, 0xea, 0x59, 0x25, 0x95, 0x73, 0x80,
0x9e, 0x69, 0x90, 0xdb, 0xb0, 0x14, 0x08, 0x58, 0x88, 0xaa, 0x85, 0xee, 0x4a, 0xa6, 0x2b, 0xd1,
0xe2, 0x28, 0x29, 0x79, 0x0b, 0x56, 0x99, 0x4b, 0xc3, 0x10, 0xbd, 0x81, 0x46, 0xc6, 0xa2, 0x9c,
0xfe, 0x8a, 0x62, 0x3f, 0x51, 0x00, 0x79, 0x1b, 0xae, 0x68, 0xc5, 0x39, 0x50, 0xaa, 0x52, 0x75,
0x4d, 0x09, 0xf6, 0x34, 0x5f, 0x76, 0xf5, 0x79, 0xc4, 0xfe, 0xdb, 0xa8, 0x3b, 0xb0, 0xa4, 0x56,
0x26, 0xdd, 0x39, 0x45, 0x91, 0x8f, 0x4e, 0x95, 0x74, 0x3b, 0x2b, 0xa9, 0x24, 0x94, 0xe4, 0x15,
0x4a, 0xb5, 0x7e, 0x35, 0xa0, 0x91, 0x71, 0xcb, 0xd6, 0x45, 0xf0, 0x62, 0xca, 0x8f, 0x54, 0x5c,
0xf9, 0x4d, 0x9e, 0x42, 0xed, 0x08, 0xa9, 0x37, 0x0f, 0xbb, 0xfd, 0x7a, 0x61, 0xbb, 0x9f, 0xa5,
0x56, 0x0f, 0x43, 0x21, 0xd5, 0x3e, 0xac, 0x1d, 0x68, 0xe5, 0x05, 0x64, 0x0d, 0x16, 0x8e, 0x71,
0xa6, 0xb2, 0x10, 0x9f, 0xa4, 0x0d, 0xd5, 0x09, 0x0d, 0xc6, 0xfa, 0xc5, 0x49, 0x89, 0x9d, 0xca,
0xfb, 0x86, 0xbd, 0x07, 0xed, 0x62, 0x48, 0x85, 0xd5, 0x39, 0xd0, 0x8c, 0xcb, 0x81, 0x66, 0xff,
0x62, 0x40, 0xe7, 0x31, 0xf2, 0x67, 0x11, 0xf7, 0x87, 0xbe, 0x2b, 0x0f, 0x8d, 0x1e, 0xcf, 0x7d,
0xe8, 0x44, 0x81, 0x57, 0xd8, 0xb1, 0xd9, 0x20, 0xa6, 0x87, 0x7a, 0x4e, 0xed, 0x28, 0xf0, 0x0a,
0xcf, 0xd1, 0x73, 0x7a, 0x88, 0xc2, 0x2a, 0xc4, 0x69, 0x99, 0x55, 0x5a, 0x41, 0x3b, 0xc4, 0xe9,
0x59, 0xab, 0x36, 0x54, 0x03, 0x7f, 0xe4, 0x73, 0xb9, 0x95, 0x55, 0x27, 0x25, 0x32, 0xe0, 0x2f,
0xce, 0x81, 0x6f, 0xff, 0x59, 0x81, 0xab, 0x67, 0x12, 0x56, 0xa5, 0x7f, 0x01, 0xad, 0x30, 0xc7,
0x57, 0x0d, 0x78, 0x27, 0xbf, 0xaa, 0x65, 0x76, 0xdd, 0x02, 0xb3, 0xe0, 0xc2, 0xfa, 0xcb, 0x80,
0x56, 0x5e, 0x5c, 0xba, 0x8c, 0x26, 0xd4, 0xdc, 0x04, 0x29, 0x47, 0x4f, 0x15, 0xa9, 0x49, 0x71,
0xcf, 0x52, 0x77, 0xe8, 0xa9, 0x9b, 0x90, 0xd1, 0xc2, 0xca, 0xc3, 0x00, 0x85, 0x55, 0x5a, 0xa0,
0x26, 0xc9, 0x7d, 0x58, 0x88, 0x02, 0x4f, 0x1e, 0xc7, 0x66, 0xdf, 0x9e, 0x23, 0x8c, 0x1e, 0x62,
0xd6, 0xf1, 0x00, 0xd5, 0xe4, 0x7d, 0x64, 0x8e, 0x50, 0x17, 0x56, 0x21, 0x4e, 0xe5, 0xd9, 0x7c,
0x4d, 0xab, 0x10, 0xa7, 0xf6, 0xef, 0x15, 0xb8, 0x76, 0xae, 0x0a, 0xb9, 0x09, 0x2d, 0x77, 0x9c,
0x24, 0x18, 0xf2, 0xfc, 0xe4, 0x9b, 0x8a, 0x27, 0x47, 0xb7, 0x01, 0x8d, 0x10, 0x4f, 0x78, 0x7e,
0xc6, 0x75, 0xc1, 0xb8, 0x60, 0xae, 0x1f, 0xc0, 0x72, 0x01, 0x1f, 0xb2, 0xfe, 0xf3, 0xaf, 0x5c,
0x51, 0x99, 0xec, 0x03, 0xd0, 0x2c, 0x43, 0x75, 0x20, 0xdf, 0xbb, 0xbc, 0xdc, 0xee, 0xe7, 0xa1,
0x87, 0x27, 0xe8, 0xed, 0xe6, 0x5e, 0x17, 0x27, 0xe7, 0xc9, 0xfa, 0x18, 0xd6, 0x4b, 0x54, 0x44,
0x09, 0xbe, 0x60, 0xcb, 0xda, 0xab, 0x4e, 0x4a, 0x64, 0x30, 0xa8, 0xe4, 0xa0, 0xb9, 0x0d, 0xd7,
0x9f, 0xd2, 0xe4, 0x38, 0x0f, 0x97, 0x5d, 0xe6, 0x20, 0xf5, 0xf4, 0x46, 0x95, 0x60, 0xa7, 0xff,
0xb7, 0x01, 0xab, 0x3a, 0xde, 0x0b, 0x4c, 0x26, 0xbe, 0x8b, 0xe4, 0x18, 0x9a, 0xb9, 0xab, 0x42,
0x36, 0xca, 0x6f, 0x8d, 0xf4, 0x69, 0x6d, 0x5e, 0x74, 0x88, 0xec, 0x9b, 0xdf, 0xbd, 0xfa, 0xe7,
0xe7, 0xca, 0x06, 0xb9, 0xd6, 0xd3, 0x8f, 0x6a, 0xef, 0x65, 0xe1, 0xcd, 0xfd, 0x96, 0x50, 0x68,
0xe5, 0xdf, 0x11, 0xb2, 0x79, 0xd1, 0x8b, 0x66, 0x5d, 0x3f, 0x47, 0xaa, 0xe2, 0xb5, 0x65, 0xbc,
0x15, 0xbb, 0x91, 0xc5, 0xdb, 0x31, 0xee, 0xf6, 0xbf, 0xaf, 0xc0, 0x7a, 0xbe, 0x2b, 0xba, 0x4e,
0x06, 0xab, 0xa7, 0x56, 0x92, 0xdc, 0x38, 0x7f, 0x59, 0xd3, 0x04, 0xb6, 0x2e, 0xdb, 0x66, 0xfb,
0xba, 0xcc, 0xe1, 0x2a, 0x79, 0xa3, 0x97, 0xdf, 0x64, 0xd6, 0x7b, 0x99, 0xd6, 0x3b, 0x85, 0x4e,
0xf9, 0x94, 0xc8, 0xfc, 0x84, 0x5c, 0x38, 0x46, 0xab, 0x73, 0xe6, 0x5f, 0xce, 0x43, 0xf1, 0x17,
0x5c, 0x07, 0xbe, 0x5b, 0x1e, 0xf8, 0x41, 0xe3, 0x6b, 0xfd, 0x0f, 0xff, 0x60, 0x49, 0x5a, 0x6e,
0xff, 0x1b, 0x00, 0x00, 0xff, 0xff, 0xbb, 0xee, 0xb6, 0xdc, 0x0f, 0x0c, 0x00, 0x00,
// 1189 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xa4, 0x57, 0x4f, 0x73, 0xdb, 0x44,
0x14, 0x1f, 0x29, 0x71, 0xec, 0x3c, 0x3b, 0x7f, 0xba, 0x76, 0x53, 0x45, 0x69, 0x21, 0x11, 0x74,
0xda, 0x69, 0x67, 0xec, 0xa9, 0xcb, 0xa1, 0x94, 0x03, 0x93, 0xb4, 0x49, 0xe9, 0x4c, 0xe9, 0x74,
0x54, 0xc8, 0x01, 0x0e, 0x9e, 0xb5, 0xf4, 0x9c, 0x68, 0x22, 0x4b, 0x42, 0xbb, 0x76, 0xe2, 0x29,
0xbd, 0x70, 0xe5, 0x04, 0x1c, 0xf8, 0x16, 0x7c, 0x09, 0xae, 0x9c, 0x80, 0x23, 0xdc, 0x98, 0x81,
0x2f, 0xc0, 0x9d, 0xd9, 0xd5, 0xae, 0x22, 0x39, 0x26, 0x49, 0xe1, 0x14, 0xbd, 0xff, 0xff, 0x7e,
0x6f, 0x5f, 0x0c, 0x36, 0x4d, 0x82, 0xce, 0xf8, 0x7e, 0xc7, 0x0b, 0x69, 0x90, 0x26, 0xfd, 0xec,
0x6f, 0x3b, 0x49, 0x63, 0x1e, 0x93, 0x86, 0x17, 0xa7, 0x18, 0xb3, 0xb6, 0xe4, 0xd9, 0x1b, 0x07,
0x71, 0x7c, 0x10, 0x62, 0x47, 0xca, 0xfa, 0xa3, 0x41, 0x07, 0x87, 0x09, 0x9f, 0x64, 0xaa, 0xf6,
0xdb, 0xd3, 0x42, 0x1e, 0x0c, 0x91, 0x71, 0x3a, 0x4c, 0x94, 0xc2, 0x75, 0xa5, 0x20, 0xc2, 0xd1,
0x28, 0x8a, 0x39, 0xe5, 0x41, 0x1c, 0xb1, 0x4c, 0xea, 0x7c, 0x6f, 0xc2, 0xd2, 0xfe, 0x28, 0x8c,
0x30, 0xa5, 0xfd, 0x20, 0x0c, 0xf8, 0x84, 0x10, 0x98, 0x8f, 0xe8, 0x10, 0x2d, 0x63, 0xd3, 0xb8,
0xbd, 0xe8, 0xca, 0x6f, 0x72, 0x13, 0x96, 0xc5, 0x5f, 0x96, 0x50, 0x0f, 0x7b, 0x52, 0x6a, 0x4a,
0xe9, 0x52, 0xce, 0x7d, 0x2e, 0xd4, 0x36, 0xa1, 0xee, 0x23, 0xf3, 0xd2, 0x20, 0x11, 0x21, 0xac,
0x39, 0xa9, 0x53, 0x64, 0x09, 0xe7, 0x61, 0x10, 0x1d, 0x59, 0xf3, 0x99, 0x73, 0xf1, 0x4d, 0x6c,
0xa8, 0x31, 0x1c, 0x63, 0x1a, 0xf0, 0x89, 0x55, 0x91, 0xfc, 0x9c, 0x16, 0xb2, 0x21, 0x72, 0xea,
0x53, 0x4e, 0xad, 0x85, 0x4c, 0xa6, 0x69, 0xb2, 0x0e, 0xb5, 0x41, 0x70, 0x82, 0x7e, 0xaf, 0x3f,
0xb1, 0xaa, 0x52, 0x56, 0x95, 0xf4, 0xce, 0x84, 0xec, 0xc0, 0x15, 0x3a, 0x18, 0xa0, 0xc7, 0xd1,
0xef, 0x8d, 0x31, 0x65, 0xa2, 0x60, 0xab, 0xb6, 0x39, 0x77, 0xbb, 0xde, 0xbd, 0xda, 0x2e, 0xf6,
0xb6, 0xbd, 0x87, 0x94, 0x8f, 0x52, 0x74, 0x57, 0xb5, 0xfe, 0xbe, 0x52, 0x77, 0x7e, 0x32, 0xa0,
0xaa, 0xa4, 0xff, 0xa7, 0x27, 0x16, 0x54, 0x55, 0x06, 0xaa, 0x1f, 0x9a, 0x14, 0x0e, 0xd4, 0x67,
0x6f, 0x10, 0xa7, 0x43, 0xca, 0x55, 0x57, 0x96, 0x14, 0x77, 0x4f, 0x32, 0xc9, 0x2e, 0xac, 0x8c,
0x0b, 0x03, 0x0a, 0x90, 0x59, 0x15, 0x59, 0xc9, 0x46, 0xb9, 0x92, 0xd2, 0x14, 0xdd, 0x69, 0x1b,
0x67, 0x03, 0x2a, 0xcf, 0xe8, 0x04, 0x53, 0x51, 0xcb, 0x21, 0x65, 0x87, 0xba, 0x16, 0xf1, 0xed,
0x7c, 0x6d, 0x40, 0xfd, 0x91, 0xf0, 0xf2, 0x92, 0x53, 0x3e, 0x62, 0x22, 0xe9, 0x30, 0x60, 0x1c,
0x53, 0x66, 0x19, 0x9b, 0x73, 0x22, 0x69, 0x45, 0x92, 0xeb, 0xb0, 0xe8, 0x23, 0x47, 0x8f, 0xc7,
0x29, 0xb3, 0x4c, 0x29, 0x3b, 0x65, 0x90, 0xc7, 0xb0, 0x1a, 0x52, 0xc6, 0x7b, 0xa3, 0xc4, 0xa7,
0x1c, 0x7b, 0x02, 0x8a, 0xb2, 0xea, 0x7a, 0xd7, 0x6e, 0x67, 0x30, 0x6c, 0x6b, 0x9c, 0xb6, 0x3f,
0xd1, 0x38, 0x75, 0x97, 0x85, 0xcd, 0xa7, 0xd2, 0x44, 0x30, 0x9d, 0x6f, 0x0c, 0x20, 0x4f, 0x90,
0x6f, 0x47, 0x1e, 0x32, 0x9e, 0x4e, 0x5c, 0xfc, 0x62, 0x84, 0x8c, 0x93, 0x77, 0x60, 0x89, 0x2a,
0x56, 0xaf, 0x30, 0x8d, 0x86, 0x66, 0xca, 0x76, 0xdf, 0x83, 0xd6, 0x71, 0xc0, 0x0f, 0x7b, 0xd3,
0x2d, 0x13, 0xb3, 0xa9, 0xb9, 0x4d, 0x21, 0xdb, 0x2f, 0x8b, 0x84, 0x5f, 0x69, 0x32, 0xc8, 0x86,
0xcd, 0x64, 0xc6, 0x35, 0xb7, 0x21, 0x98, 0x0a, 0x00, 0xcc, 0xf9, 0xd3, 0x84, 0x66, 0x29, 0x27,
0x96, 0xc4, 0x11, 0x43, 0xb2, 0x07, 0x35, 0x1d, 0x5f, 0xe6, 0x53, 0xef, 0xde, 0x29, 0x8f, 0x65,
0x86, 0x51, 0x3b, 0x67, 0xe4, 0xb6, 0xe4, 0x1e, 0x2c, 0x30, 0xd9, 0x7b, 0x99, 0x69, 0xbd, 0xbb,
0x5e, 0xf6, 0x52, 0x18, 0x8e, 0xab, 0x14, 0xed, 0x5f, 0x0d, 0xa8, 0x69, 0x4f, 0x33, 0x11, 0x7a,
0x0f, 0x6a, 0x79, 0x4d, 0xe6, 0x79, 0xe0, 0xcf, 0xd5, 0xc8, 0x5d, 0x58, 0x08, 0x05, 0x4a, 0x44,
0x13, 0x84, 0x41, 0xb3, 0x6c, 0x20, 0x11, 0xe4, 0x2a, 0x15, 0x72, 0x0b, 0x56, 0x98, 0x47, 0xa3,
0x08, 0xfd, 0x9e, 0x46, 0xcb, 0xbc, 0x44, 0xc4, 0xb2, 0x62, 0x3f, 0x53, 0xa0, 0xb9, 0x0b, 0x57,
0xb4, 0xe2, 0x29, 0x78, 0x2a, 0x52, 0x75, 0x55, 0x09, 0x1e, 0x6b, 0xbe, 0xf3, 0xbb, 0x09, 0xcd,
0x17, 0x31, 0xfb, 0x6f, 0xe3, 0x5f, 0x83, 0x05, 0xb5, 0x4b, 0xd9, 0x32, 0x2a, 0x8a, 0x3c, 0x9a,
0xaa, 0xeb, 0x6e, 0xb9, 0xae, 0x19, 0xf1, 0x24, 0xaf, 0x54, 0xaf, 0xfd, 0xa3, 0x01, 0x8b, 0x39,
0x77, 0xd6, 0x1e, 0x09, 0x5e, 0x42, 0xf9, 0xa1, 0x0a, 0x2e, 0xbf, 0x89, 0x0b, 0xd5, 0x43, 0xa4,
0xfe, 0x69, 0xec, 0x07, 0x6f, 0x10, 0xbb, 0xfd, 0x51, 0x66, 0xba, 0x1b, 0x09, 0xa9, 0x76, 0x64,
0x3f, 0x84, 0x46, 0x51, 0x40, 0x56, 0x61, 0xee, 0x08, 0x27, 0x2a, 0x15, 0xf1, 0x49, 0x5a, 0x50,
0x19, 0xd3, 0x70, 0xa4, 0x1f, 0xa5, 0x8c, 0x78, 0x68, 0x3e, 0x30, 0x9c, 0xa7, 0xd0, 0x2a, 0x87,
0x54, 0x48, 0x3e, 0x45, 0xa0, 0x71, 0x49, 0x04, 0x3a, 0x3f, 0x18, 0xb0, 0xf6, 0x04, 0xf9, 0xf3,
0x98, 0x07, 0x83, 0xc0, 0x93, 0x77, 0x45, 0x4f, 0xeb, 0x3d, 0x58, 0x8b, 0x43, 0xbf, 0xb4, 0x86,
0x93, 0x5e, 0x42, 0x0f, 0xf4, 0xd8, 0x5a, 0x71, 0xe8, 0x97, 0x5e, 0xac, 0x17, 0xf4, 0x00, 0x85,
0x55, 0x84, 0xc7, 0xb3, 0xac, 0xb2, 0x32, 0x5a, 0x11, 0x1e, 0x9f, 0xb5, 0x6a, 0x41, 0x25, 0x0c,
0x86, 0x01, 0x97, 0x8b, 0x5b, 0x71, 0x33, 0x22, 0xdf, 0x88, 0xf9, 0xd3, 0x8d, 0x70, 0x7e, 0x33,
0xe1, 0xda, 0x99, 0x84, 0x55, 0xfd, 0xfb, 0xd0, 0x88, 0x0a, 0x7c, 0xd5, 0x85, 0xee, 0x99, 0x6d,
0x9e, 0x65, 0xdc, 0x2e, 0x31, 0x4b, 0x7e, 0xec, 0xbf, 0x0c, 0x68, 0x14, 0xc5, 0x33, 0x57, 0xd5,
0x82, 0xaa, 0x97, 0x22, 0xe5, 0xe8, 0xab, 0x4a, 0x35, 0x29, 0x2e, 0x60, 0xe6, 0x0e, 0x7d, 0x75,
0x40, 0x72, 0x5a, 0x58, 0xf9, 0x18, 0xa2, 0xb0, 0xca, 0xaa, 0xd4, 0x24, 0x79, 0x1f, 0xe6, 0xe2,
0xd0, 0x97, 0xe7, 0xb4, 0xde, 0xbd, 0x35, 0x05, 0x38, 0x7a, 0x80, 0x79, 0xef, 0x43, 0x54, 0x40,
0x08, 0x90, 0xb9, 0xc2, 0x46, 0x98, 0x46, 0x78, 0x2c, 0xaf, 0xed, 0x9b, 0x98, 0x46, 0x78, 0xec,
0xfc, 0x6c, 0xc2, 0xfa, 0xbf, 0xaa, 0x90, 0x2d, 0x68, 0x78, 0xa3, 0x34, 0xc5, 0x88, 0x17, 0x81,
0x50, 0x57, 0x3c, 0x39, 0xc9, 0x0d, 0x58, 0x8c, 0xf0, 0x84, 0x17, 0x47, 0x5e, 0x13, 0x8c, 0x73,
0xc6, 0xbc, 0x0d, 0x4b, 0x25, 0xb8, 0xc8, 0x4e, 0x5c, 0x70, 0x1c, 0xcb, 0x16, 0xe4, 0x73, 0x00,
0x9a, 0xa7, 0xa9, 0x8e, 0xeb, 0x07, 0x97, 0x2c, 0xbc, 0xfd, 0x34, 0xf2, 0xf1, 0x04, 0xfd, 0xed,
0xc2, 0x2b, 0xe4, 0x16, 0xdc, 0xd9, 0x1f, 0x42, 0x73, 0x86, 0x8a, 0x28, 0x26, 0x10, 0x6c, 0xd9,
0x85, 0x8a, 0x9b, 0x11, 0x39, 0x34, 0xcc, 0x02, 0x66, 0xef, 0xc3, 0x8d, 0x8f, 0x69, 0x7a, 0x54,
0x84, 0xd0, 0x36, 0x73, 0x91, 0xfa, 0x7a, 0xd5, 0x66, 0xe0, 0xa9, 0xfb, 0xb7, 0x01, 0x2b, 0x3a,
0xde, 0x4b, 0x4c, 0xc7, 0x81, 0x87, 0x64, 0x04, 0xf5, 0xc2, 0x31, 0x22, 0x9b, 0xe7, 0xdc, 0x29,
0xe9, 0xd8, 0xde, 0xba, 0xf0, 0x92, 0x39, 0x5b, 0x5f, 0xfd, 0xf2, 0xc7, 0x77, 0xe6, 0x06, 0x59,
0xef, 0xe8, 0x67, 0xb8, 0xf3, 0xaa, 0xf4, 0x4a, 0xbf, 0x26, 0x47, 0xd0, 0x28, 0xbe, 0x37, 0x64,
0xeb, 0xc2, 0xe7, 0xcf, 0x76, 0xce, 0x53, 0x51, 0x91, 0x5b, 0x32, 0xf2, 0xb2, 0xb3, 0x98, 0x47,
0x7e, 0x68, 0xdc, 0xe9, 0x7e, 0x6b, 0x42, 0xb3, 0xd8, 0x29, 0x5d, 0xfb, 0x6b, 0x58, 0x99, 0x5a,
0x5d, 0xf2, 0xee, 0x05, 0x9b, 0x9d, 0xa5, 0x72, 0xf3, 0x52, 0xfb, 0xef, 0xdc, 0x90, 0xd9, 0x5c,
0x23, 0x57, 0x3b, 0xc5, 0xdd, 0x67, 0x9d, 0x57, 0x59, 0x0f, 0xbe, 0x84, 0xb5, 0xd9, 0x33, 0x24,
0x53, 0x87, 0xe8, 0xdc, 0x49, 0xdb, 0x6b, 0x67, 0xfe, 0x89, 0xda, 0x15, 0xbf, 0x04, 0x74, 0xf4,
0x3b, 0xb3, 0xa3, 0xef, 0xbc, 0x05, 0x4d, 0x2f, 0x1e, 0x96, 0x03, 0x25, 0xfd, 0xcf, 0xaa, 0xea,
0x97, 0x47, 0x7f, 0x41, 0xba, 0xbb, 0xff, 0x4f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xfd, 0xb6, 0x68,
0xf9, 0x92, 0x0c, 0x00, 0x00,
}

@ -13,37 +13,33 @@
// limitations under the License.
syntax = "proto3";
option go_package = "clairpb";
package clairpb;
import "google/api/annotations.proto";
import "google/protobuf/empty.proto";
import "google/protobuf/timestamp.proto";
import "google/api/annotations.proto";
package coreos.clair;
option go_package = "clairpb";
option java_package = "com.coreos.clair.pb";
message Vulnerability {
// The name of the vulnerability.
string name = 1;
// The name of the namespace in which the vulnerability was detected.
string namespace_name = 2;
// A description of the vulnerability according to the source for the namespace.
string description = 3;
// A link to the vulnerability according to the source for the namespace.
string link = 4;
// How dangerous the vulnerability is.
string severity = 5;
// Namespace agnostic metadata about the vulnerability.
string metadata = 6;
// The feature that fixes this vulnerability.
// This field only exists when a vulnerability is a part of a Feature.
string fixed_by = 7;
// The Features that are affected by the vulnerability.
// This field only exists when a vulnerability is a part of a Notification.
repeated Feature affected_versions = 8;
@ -52,21 +48,17 @@ message Vulnerability {
message Feature {
// The name of the feature.
string name = 1;
// The name of the namespace in which the feature is detected.
string namespace_name = 2;
// The specific version of this feature.
string version = 3;
// The format used to parse version numbers for the feature.
string version_format = 4;
// The list of vulnerabilities that affect the feature.
repeated Vulnerability vulnerabilities = 5;
}
message Layer {
message Layer {
// The sha256 tarsum for the layer.
string hash = 1;
}
@ -74,11 +66,8 @@ message Layer {
service AncestryService {
// The RPC used to read the results of scanning for a particular ancestry.
rpc GetAncestry(GetAncestryRequest) returns (GetAncestryResponse) {
option (google.api.http) = {
get: "/ancestry/{ancestry_name}"
};
option (google.api.http) = { get: "/ancestry/{ancestry_name}" };
}
// The RPC used to create a new scan of an ancestry.
rpc PostAncestry(PostAncestryRequest) returns (PostAncestryResponse) {
option (google.api.http) = {
@ -91,10 +80,8 @@ service AncestryService {
message ClairStatus {
// The configured list of feature listers used to scan an ancestry.
repeated string listers = 1;
// The configured list of namespace detectors used to scan an ancestry.
repeated string detectors = 2;
// The time at which the updater last ran.
google.protobuf.Timestamp last_update_time = 3;
}
@ -102,10 +89,8 @@ message ClairStatus {
message GetAncestryRequest {
// The name of the desired ancestry.
string ancestry_name = 1;
// Whether to include vulnerabilities or not in the response.
bool with_vulnerabilities = 2;
// Whether to include features or not in the response.
bool with_features = 3;
}
@ -114,69 +99,53 @@ message GetAncestryResponse {
message Ancestry {
// The name of the desired ancestry.
string name = 1;
// The list of features present in the ancestry.
// This will only be provided if requested.
repeated Feature features = 2;
// The layers present in the ancestry.
repeated Layer layers = 3;
// The configured list of feature listers used to scan this ancestry.
repeated string scanned_listers = 4;
// The configured list of namespace detectors used to scan an ancestry.
repeated string scanned_detectors = 5;
}
// The ancestry requested.
Ancestry ancestry = 1;
// The status of Clair at the time of the request.
ClairStatus status = 2;
ClairStatus status = 2;
}
message PostAncestryRequest {
message PostLayer {
// The hash of the layer.
string hash = 1;
// The location of the layer (URL or filepath).
string path = 2;
// Any HTTP Headers that need to be used if requesting a layer over HTTP(S).
map<string, string> headers = 3;
}
// Any HTTP Headers that need to be used if requesting a layer over HTTP(S).
map<string, string> headers = 3;
}
// The name of the ancestry being scanned.
// If scanning OCI images, this should be the hash of the manifest.
string ancestry_name = 1;
// The format of the image being uploaded.
string format = 2;
// The layers to be scanned for this particular ancestry.
repeated PostLayer layers = 3;
}
message PostAncestryResponse {
// The status of Clair at the time of the request.
ClairStatus status = 1;
ClairStatus status = 1;
}
service NotificationService {
// The RPC used to get a particularly Notification.
rpc GetNotification(GetNotificationRequest) returns (GetNotificationResponse) {
option (google.api.http) = {
get: "/notifications/{name}"
};
option (google.api.http) = { get: "/notifications/{name}" };
}
// The RPC used to mark a Notification as read after it has been processed.
rpc MarkNotificationAsRead(MarkNotificationAsReadRequest) returns (google.protobuf.Empty) {
option (google.api.http) = {
delete: "/notifications/{name}"
};
option (google.api.http) = { delete: "/notifications/{name}" };
}
}
@ -184,14 +153,11 @@ message GetNotificationRequest {
// The current page of previous vulnerabilities for the ancestry.
// This will be empty when it is the first page.
string old_vulnerability_page = 1;
// The current page of vulnerabilities for the ancestry.
// This will be empty when it is the first page.
string new_vulnerability_page = 2;
// The requested maximum number of results per page.
int32 limit = 3;
// The name of the notification being requested.
string name = 4;
}
@ -200,23 +166,17 @@ message GetNotificationResponse {
message Notification {
// The name of the requested notification.
string name = 1;
// The time at which the notification was created.
string created = 2;
// The time at which the notification was last sent out.
string notified = 3;
// The time at which a notification has been deleted.
string deleted = 4;
string deleted = 4;
// The previous vulnerability and a paginated view of the ancestries it affects.
PagedVulnerableAncestries old = 5;
// The newly updated vulnerability and a paginated view of the ancestries it affects.
PagedVulnerableAncestries new = 6;
}
// The notification as requested.
Notification notification = 1;
}
@ -226,24 +186,18 @@ message PagedVulnerableAncestries {
// The index is an ever increasing number associated with the particular ancestry.
// This is useful if you're processing notifications, and need to keep track of the progress of paginating the results.
int32 index = 1;
// The name of the ancestry.
string name = 2;
}
// The identifier for the current page.
string current_page = 1;
// The token used to request the next page.
// This will be empty when there are no more pages.
string next_page = 2;
// The requested maximum number of results per page.
int32 limit = 3;
int32 limit = 3;
// The vulnerability that affects a given set of ancestries.
Vulnerability vulnerability = 4;
// The ancestries affected by a vulnerability.
repeated IndexedAncestryName ancestries = 5;
}

@ -23,7 +23,7 @@
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/clairpbPostAncestryResponse"
"$ref": "#/definitions/clairPostAncestryResponse"
}
}
},
@ -33,7 +33,7 @@
"in": "body",
"required": true,
"schema": {
"$ref": "#/definitions/clairpbPostAncestryRequest"
"$ref": "#/definitions/clairPostAncestryRequest"
}
}
],
@ -50,7 +50,7 @@
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/clairpbGetAncestryResponse"
"$ref": "#/definitions/clairGetAncestryResponse"
}
}
},
@ -91,7 +91,7 @@
"200": {
"description": "",
"schema": {
"$ref": "#/definitions/clairpbGetNotificationResponse"
"$ref": "#/definitions/clairGetNotificationResponse"
}
}
},
@ -165,14 +165,14 @@
"features": {
"type": "array",
"items": {
"$ref": "#/definitions/clairpbFeature"
"$ref": "#/definitions/clairFeature"
},
"description": "The list of features present in the ancestry.\nThis will only be provided if requested."
},
"layers": {
"type": "array",
"items": {
"$ref": "#/definitions/clairpbLayer"
"$ref": "#/definitions/clairLayer"
},
"description": "The layers present in the ancestry."
},
@ -212,11 +212,11 @@
"description": "The time at which a notification has been deleted."
},
"old": {
"$ref": "#/definitions/clairpbPagedVulnerableAncestries",
"$ref": "#/definitions/clairPagedVulnerableAncestries",
"description": "The previous vulnerability and a paginated view of the ancestries it affects."
},
"new": {
"$ref": "#/definitions/clairpbPagedVulnerableAncestries",
"$ref": "#/definitions/clairPagedVulnerableAncestries",
"description": "The newly updated vulnerability and a paginated view of the ancestries it affects."
}
}
@ -255,7 +255,7 @@
}
}
},
"clairpbClairStatus": {
"clairClairStatus": {
"type": "object",
"properties": {
"listers": {
@ -279,7 +279,7 @@
}
}
},
"clairpbFeature": {
"clairFeature": {
"type": "object",
"properties": {
"name": {
@ -301,13 +301,13 @@
"vulnerabilities": {
"type": "array",
"items": {
"$ref": "#/definitions/clairpbVulnerability"
"$ref": "#/definitions/clairVulnerability"
},
"description": "The list of vulnerabilities that affect the feature."
}
}
},
"clairpbGetAncestryResponse": {
"clairGetAncestryResponse": {
"type": "object",
"properties": {
"ancestry": {
@ -315,12 +315,12 @@
"description": "The ancestry requested."
},
"status": {
"$ref": "#/definitions/clairpbClairStatus",
"$ref": "#/definitions/clairClairStatus",
"description": "The status of Clair at the time of the request."
}
}
},
"clairpbGetNotificationResponse": {
"clairGetNotificationResponse": {
"type": "object",
"properties": {
"notification": {
@ -329,7 +329,7 @@
}
}
},
"clairpbLayer": {
"clairLayer": {
"type": "object",
"properties": {
"hash": {
@ -338,7 +338,7 @@
}
}
},
"clairpbPagedVulnerableAncestries": {
"clairPagedVulnerableAncestries": {
"type": "object",
"properties": {
"current_page": {
@ -355,7 +355,7 @@
"description": "The requested maximum number of results per page."
},
"vulnerability": {
"$ref": "#/definitions/clairpbVulnerability",
"$ref": "#/definitions/clairVulnerability",
"description": "The vulnerability that affects a given set of ancestries."
},
"ancestries": {
@ -367,7 +367,7 @@
}
}
},
"clairpbPostAncestryRequest": {
"clairPostAncestryRequest": {
"type": "object",
"properties": {
"ancestry_name": {
@ -387,16 +387,16 @@
}
}
},
"clairpbPostAncestryResponse": {
"clairPostAncestryResponse": {
"type": "object",
"properties": {
"status": {
"$ref": "#/definitions/clairpbClairStatus",
"$ref": "#/definitions/clairClairStatus",
"description": "The status of Clair at the time of the request."
}
}
},
"clairpbVulnerability": {
"clairVulnerability": {
"type": "object",
"properties": {
"name": {
@ -430,7 +430,7 @@
"affected_versions": {
"type": "array",
"items": {
"$ref": "#/definitions/clairpbFeature"
"$ref": "#/definitions/clairFeature"
},
"description": "The Features that are affected by the vulnerability.\nThis field only exists when a vulnerability is a part of a Notification."
}

@ -0,0 +1,3 @@
protoc_version: 3.5.1
protoc_includes:
- ../../../vendor/github.com/grpc-ecosystem/grpc-gateway/third_party/googleapis
Loading…
Cancel
Save