libvuln

package
v0.0.20 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 17, 2020 License: Apache-2.0 Imports: 31 Imported by: 7

Documentation

Overview

Package libvuln is a generated GoMock package.

Index

Constants

View Source
const (
	DefaultUpdateInterval         = 30 * time.Minute
	DefaultUpdaterInitConcurrency = 10
	DefaultMaxConnPool            = 100
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Libvuln

type Libvuln struct {
	// contains filtered or unexported fields
}

Libvuln exports methods for scanning an IndexReport and created a VulnerabilityReport.

Libvuln also runs background updaters which keep the vulnerability database consistent.

func New

func New(ctx context.Context, opts *Opts) (*Libvuln, error)

New creates a new instance of the Libvuln library

func (*Libvuln) DeleteUpdateOperations added in v0.0.18

func (l *Libvuln) DeleteUpdateOperations(ctx context.Context, ref ...uuid.UUID) error

DeleteUpdateOperations removes one or more update operations and their associated vulnerabilities from the vulnerability database.

func (*Libvuln) LatestUpdateOperation added in v0.0.18

func (l *Libvuln) LatestUpdateOperation(ctx context.Context) (uuid.UUID, error)

LatestUpdateOperation returns a reference to the latest known update.

This can be used by clients to determine if a call to Scan is likely to return new results.

func (*Libvuln) LatestUpdateOperations added in v0.0.18

func (l *Libvuln) LatestUpdateOperations(ctx context.Context) (map[string]uuid.UUID, error)

LatestUpdateOperations returns references for the latest update for every known updater.

These references are okay to expose externally.

func (*Libvuln) Scan

Scan creates a VulnerabilityReport given a manifest's IndexReport.

func (*Libvuln) UpdateDiff added in v0.0.18

func (l *Libvuln) UpdateDiff(ctx context.Context, prev, cur uuid.UUID) (*driver.UpdateDiff, error)

UpdateDiff returns an UpdateDiff describing the changes between prev and cur.

func (*Libvuln) UpdateOperations added in v0.0.18

func (l *Libvuln) UpdateOperations(ctx context.Context, updaters ...string) (map[string][]driver.UpdateOperation, error)

UpdateOperations returns UpdateOperations in date descending order keyed by the Updater name

type MockLibvuln

type MockLibvuln struct {
	// contains filtered or unexported fields
}

MockLibvuln is a mock of Libvuln interface

func NewMockLibvuln

func NewMockLibvuln(ctrl *gomock.Controller) *MockLibvuln

NewMockLibvuln creates a new mock instance

func (*MockLibvuln) EXPECT

func (m *MockLibvuln) EXPECT() *MockLibvulnMockRecorder

EXPECT returns an object that allows the caller to indicate expected use

func (*MockLibvuln) Scan

Scan mocks base method

type MockLibvulnMockRecorder

type MockLibvulnMockRecorder struct {
	// contains filtered or unexported fields
}

MockLibvulnMockRecorder is the mock recorder for MockLibvuln

func (*MockLibvulnMockRecorder) Scan

func (mr *MockLibvulnMockRecorder) Scan(arg0, arg1 interface{}) *gomock.Call

Scan indicates an expected call of Scan

type Opts

type Opts struct {
	// the maximum size of the connection pool used by the database
	MaxConnPool int32
	// the connectiong string to the above data store implementation
	ConnString string
	// the interval in minutes which updaters will update the vulnstore
	UpdateInterval time.Duration
	// number of updaters ran in parallel while libvuln initializes. use this to tune io/cpu on library start when using many updaters
	UpdaterInitConcurrency int
	// set to true to have libindex check and potentially run migrations
	Migrations bool
	// returns the matchers to be used during libvuln runtime
	Matchers []driver.Matcher
	// returns the updaters to run on an interval
	Updaters []driver.Updater
	// a regex string to filter running updaters by
	Run string
}

func (*Opts) Parse

func (o *Opts) Parse() error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL