dpkg

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: May 8, 2024 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Overview

Package dpkg extracts packages from dpkg database.

Index

Constants

View Source
const (
	// Name is the unique name of this extractor.
	Name = "os/dpkg"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	// MaxFileSize is the maximum file size an extractor will unmarshal.
	// If Extract gets a bigger file, it will return an error.
	MaxFileSize int64
	// IncludeNotInstalled includes packages that are not installed
	// (e.g. `deinstall`, `purge`, and those missing a status field).
	IncludeNotInstalled bool
}

Config is the configuration for the Extractor.

func DefaultConfig

func DefaultConfig() Config

DefaultConfig returns the default configuration for the DPKG extractor.

type Extractor

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

Extractor extracts packages from DPKG files.

func New

func New(cfg Config) *Extractor

New returns a DPKG extractor.

For most use cases, initialize with: ``` e := New(DefaultConfig()) ```

func (Extractor) Config

func (e Extractor) Config() Config

Config returns the configuration of the extractor.

func (Extractor) Extract

func (e Extractor) Extract(ctx context.Context, input *extractor.ScanInput) ([]*extractor.Inventory, error)

Extract extracts packages from dpkg status files passed through the scan input.

func (Extractor) FileRequired

func (e Extractor) FileRequired(path string, _ fs.FileMode) bool

FileRequired returns true if the specified file matches dpkg status file pattern.

func (Extractor) Name

func (e Extractor) Name() string

Name of the extractor.

func (Extractor) ToCPEs

func (e Extractor) ToCPEs(i *extractor.Inventory) ([]string, error)

ToCPEs is not applicable as this extractor does not infer CPEs from the Inventory.

func (Extractor) ToPURL

func (e Extractor) ToPURL(i *extractor.Inventory) (*purl.PackageURL, error)

ToPURL converts an inventory created by this extractor into a PURL.

func (Extractor) Version

func (e Extractor) Version() int

Version of the extractor.

type Metadata

type Metadata struct {
	PackageName       string
	Status            string
	SourceName        string
	SourceVersion     string
	PackageVersion    string
	OSID              string
	OSVersionCodename string
	OSVersionID       string
	Maintainer        string
	Architecture      string
}

Metadata holds parsing information for an dpkg package.

Jump to

Keyboard shortcuts

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