models

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Jun 23, 2021 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

View Source
const LatestSchemaVersion = 2

LatestSchemaVersion manages the Schema version used in the latest Gost.

Variables

This section is empty.

Functions

This section is empty.

Types

type DebianCVE

type DebianCVE struct {
	ID          int64  `json:"-"`
	CveID       string `gorm:"index:idx_debian_cves_cveid;type:varchar(255);"`
	Scope       string `gorm:"type:varchar(255)"`
	Description string `gorm:"type:text"`
	Package     []DebianPackage
}

DebianCVE :

type DebianCveJSON

type DebianCveJSON struct {
	Scope       string                       `json:"scope"`
	Debianbug   int                          `json:"debianbug"`
	Description string                       `json:"description"`
	Releases    map[string]DebianReleaseJSON `json:"releases"`
}

DebianCveJSON :

type DebianCveMap

type DebianCveMap map[string]DebianCveJSON

DebianCveMap :

type DebianJSON

type DebianJSON map[string]DebianCveMap

DebianJSON :

type DebianPackage

type DebianPackage struct {
	ID          int64  `json:"-"`
	DebianCVEID int64  `json:"-" gorm:"index:idx_debian_packages_debian_cve_id"`
	PackageName string `gorm:"type:varchar(255);index:idx_debian_packages_package_name"`
	Release     []DebianRelease
}

DebianPackage :

type DebianRelease

type DebianRelease struct {
	ID              int64  `json:"-"`
	DebianPackageID int64  `json:"-" gorm:"index:idx_debian_releases_debian_package_id"`
	ProductName     string `gorm:"type:varchar(255);index:idx_debian_releases_product_name"`
	Status          string `gorm:"type:varchar(255);index:idx_debian_releases_status"`
	FixedVersion    string `gorm:"type:varchar(255);"`
	Urgency         string `gorm:"type:varchar(255);"`
	Version         string `gorm:"type:varchar(255);"`
}

DebianRelease :

type DebianReleaseJSON

type DebianReleaseJSON struct {
	Status       string            `json:"status"`
	Repositories map[string]string `json:"repositories"`
	FixedVersion string            `json:"fixed_version"`
	Urgency      string            `json:"urgency"`
}

DebianReleaseJSON :

type FetchMeta added in v0.2.0

type FetchMeta struct {
	gorm.Model    `json:"-"`
	GostRevision  string
	SchemaVersion uint
}

FetchMeta has meta infomation about fetched security tracker

func (FetchMeta) OutDated added in v0.2.0

func (f FetchMeta) OutDated() bool

OutDated checks whether last fetched feed is out dated

type MicrosoftBulletinSearch added in v0.1.1

type MicrosoftBulletinSearch struct {
	DatePosted        string `xlsx:"0"`
	BulletinID        string `xlsx:"1"`
	BulletinKB        string `xlsx:"2"`
	Severity          string `xlsx:"3"`
	Impact            string `xlsx:"4"`
	Title             string `xlsx:"5"`
	AffectedProduct   string `xlsx:"6"`
	ComponentKB       string `xlsx:"7"`
	AffectedComponent string `xlsx:"8"`
	Supersedes        string `xlsx:"11"`
	Reboot            string `xlsx:"12"`
	CVEs              string `xlsx:"13"`
}

MicrosoftBulletinSearch :

type MicrosoftCVE added in v0.1.1

type MicrosoftCVE struct {
	ID                       int64                    `json:"-"`
	Title                    string                   `json:"title" gorm:"type:varchar(255)"`
	Description              string                   `json:"description" gorm:"type:text"`
	FAQ                      string                   `json:"faq" gorm:"type:text"`
	CveID                    string                   `json:"cve_id" gorm:"type:varchar(255);index:idx_microsoft_cves_cveid"`
	CWE                      string                   `json:"cwe" gorm:"type:varchar(255)"`
	MicrosoftProductStatuses []MicrosoftProductStatus `json:"microsoft_product_statuses"`
	Impact                   []MicrosoftThreat        `json:"impact"`
	Severity                 []MicrosoftThreat        `json:"severity"`
	ExploitStatus            string                   `json:"exploit_status" gorm:"type:varchar(255)"`
	Mitigation               string                   `json:"mitigation" gorm:"type:text"`
	Workaround               string                   `json:"workaround" gorm:"type:text"`
	VendorFix                []MicrosoftRemediation   `json:"vendor_fix"`
	NoneAvailable            []MicrosoftRemediation   `json:"none_available"`
	WillNotFix               []MicrosoftRemediation   `json:"will_not_fix"`
	KBIDs                    []MicrosoftKBID          `json:"kb_ids"`
	References               []MicrosoftReference     `json:"references"`
	ScoreSets                []MicrosoftScoreSet      `json:"score_sets"`
	PublishDate              time.Time                `json:"publish_date" gorm:"type:time"`
	LastUpdateDate           time.Time                `json:"last_update_date" gorm:"type:time"`
}

MicrosoftCVE :

type MicrosoftKBID added in v0.1.1

type MicrosoftKBID struct {
	ID             int64  `json:"-"`
	MicrosoftCVEID int64  `json:"-" gorm:"index:idx_microsoft_kb_id_microsoft_cve_id"`
	KBID           string `json:"kb_id" gorm:"type:varchar(255)"`
}

MicrosoftKBID :

type MicrosoftProduct added in v0.1.1

type MicrosoftProduct struct {
	ID             int64  `json:"-"`
	MicrosoftCVEID int64  `json:"-" gorm:"index:idx_microsoft_product_microsoft_cve_id"`
	Category       string `json:"-" gorm:"type:varchar(255)"`
	ProductID      string `json:"product_id" gorm:"type:varchar(255)"`
	ProductName    string `json:"product_name" gorm:"type:varchar(255)"`
}

MicrosoftProduct :

type MicrosoftProductStatus added in v0.1.1

type MicrosoftProductStatus struct {
	ID             int64              `json:"-"`
	MicrosoftCVEID int64              `json:"-" gorm:"index:idx_microsoft_product_status_microsoft_cve_id"`
	Products       []MicrosoftProduct `json:"products" gorm:"foreignKey:MicrosoftCVEID;references:MicrosoftCVEID"`
	ProductStatus  string             `json:"product_status" gorm:"type:varchar(255)"`
}

MicrosoftProductStatus :

type MicrosoftReference added in v0.1.1

type MicrosoftReference struct {
	ID             int64 `json:"-"`
	MicrosoftCVEID int64 `json:"-" gorm:"index:idx_microsoft_reference_microsoft_cve_id"`
	// External, Self
	AttrType    string `json:"type" gorm:"type:varchar(255)"`
	URL         string `json:"url" gorm:"type:varchar(255)"`
	Description string `json:"description" gorm:"type:text"`
}

MicrosoftReference :

type MicrosoftRemediation added in v0.1.1

type MicrosoftRemediation struct {
	ID              int64              `json:"-"`
	MicrosoftCVEID  int64              `json:"-" gorm:"index:idx_microsoft_remediation_microsoft_cve_id"`
	Description     string             `json:"description" gorm:"type:text"`
	Products        []MicrosoftProduct `json:"products" gorm:"foreignKey:MicrosoftCVEID;references:MicrosoftCVEID"`
	Entitlement     string             `json:"entitlement" gorm:"type:varchar(255)"`
	RestartRequired string             `json:"restart_required" gorm:"type:varchar(255)"`
	SubType         string             `json:"sub_type" gorm:"type:varchar(255)"`
	Supercedence    string             `json:"supercedence" gorm:"type:text"`
	URL             string             `json:"url" gorm:"type:varchar(255)"`
	AttrType        string             `json:"-" gorm:"type:varchar(255)"`
}

MicrosoftRemediation :

type MicrosoftScoreSet added in v0.1.1

type MicrosoftScoreSet struct {
	ID                 int64              `json:"-"`
	MicrosoftCVEID     int64              `json:"-" gorm:"index:idx_microsoft_score_set_microsoft_cve_id"`
	BaseScore          float64            `json:"base_score"`
	TemporalScore      float64            `json:"temporal_score"`
	EnvironmentalScore float64            `json:"environmental_score"`
	Vector             string             `json:"vector" gorm:"type:varchar(255)"`
	Products           []MicrosoftProduct `json:"products" gorm:"foreignKey:MicrosoftCVEID;references:MicrosoftCVEID"`
}

MicrosoftScoreSet :

type MicrosoftThreat added in v0.1.1

type MicrosoftThreat struct {
	ID             int64              `json:"-"`
	MicrosoftCVEID int64              `json:"-" gorm:"index:idx_microsoft_threat_microsoft_cve_id"`
	Description    string             `json:"description" gorm:"type:text"`
	Products       []MicrosoftProduct `json:"products" gorm:"foreignKey:MicrosoftCVEID;references:MicrosoftCVEID"`
	AttrType       string             `json:"-" gorm:"type:varchar(255)"`
}

MicrosoftThreat :

type MicrosoftXML added in v0.1.1

type MicrosoftXML struct {
	XMLName             xml.Name `xml:"cvrfdoc"`
	AttrXmlnsCpeLang    string   `xml:"xmlns cpe-lang,attr"`
	AttrXmlnsCvrf       string   `xml:"xmlns cvrf,attr"`
	AttrXmlnsCvrfCommon string   `xml:"xmlns cvrf-common,attr"`
	AttrXmlnsCvssv2     string   `xml:"xmlns cvssv2,attr"`
	AttrXmlnsDc         string   `xml:"xmlns dc,attr"`
	AttrXmlnsProd       string   `xml:"xmlns prod,attr"`
	AttrXmlnsScapCore   string   `xml:"xmlns scap-core,attr"`
	AttrXmlnsSch        string   `xml:"xmlns sch,attr"`
	AttrXmlnsVuln       string   `xml:"xmlns vuln,attr"`
	DocumentTitle       string   `xml:"DocumentTitle"`
	DocumentType        string   `xml:"DocumentType"`
	DocumentPublisher   *struct {
		AttrType         string `xml:"Type,attr"`
		ContactDetails   string `xml:"ContactDetails"`
		IssuingAuthority string `xml:"IssuingAuthority"`
	} `xml:"DocumentPublisher"`
	DocumentTracking *struct {
		ID    string `xml:"Identification>ID"`
		Alias string `xml:"Identification>Alias"`
		// Draft, Interim, Final
		Status string `xml:"Status"`
		// (0|[1-9][0-9]*)(\.(0|[1-9][0-9]*)){0,3}.
		Version         string `xml:"Version"`
		RevisionHistory []struct {
			Number      float64 `xml:"Number"`
			Date        Mstime  `xml:"Date"`
			Description string  `xml:"Description"`
		} `xml:"RevisionHistory>Revision"`
		InitialReleaseDate Mstime `xml:"InitialReleaseDate"`
		CurrentReleaseDate Mstime `xml:"CurrentReleaseDate"`
		Generator          struct {
			Engine string `xml:"Engine"`
			Date   Mstime `xml:"Date"`
		} `xml:"Generator"`
	} `xml:"DocumentTracking"`
	DocumentNotes []struct {
		Value        string `xml:",chardata"`
		AttrAudience string `xml:"Audience,attr"`
		AttrOrdinal  string `xml:"Ordinal,attr"`
		AttrTitle    string `xml:"Title,attr"`
		AttrType     string `xml:"Type,attr"`
	} `xml:"DocumentNotes>Note"`
	DocumentDistribution string `xml:"DocumentDistribution"`
	AggregateSeverity    string `xml:"AggregateSeverity"`
	DocumentReferences   []struct {
		AttrType    string `xml:"Type,attr"`
		URL         string `xml:"URL"`
		Description string `xml:"Description"`
	} `xml:"DocumentReferences>Reference"`
	Acknowledgments []struct {
		Name         string `xml:"Name"`
		Organization string `xml:"Organization"`
		URL          string `xml:"URL"`
		Description  string `xml:"Description"`
	} `xml:"Acknowledgments>Acknowledgment"`
	ProductTree *struct {
		Branch *struct {
			AttrName        string `xml:"Name,attr"`
			AttrType        string `xml:"Type,attr"`
			FullProductName []struct {
				Value         string `xml:",chardata"`
				AttrProductID string `xml:"ProductID,attr"`
				AttrCpe       string `xml:"CPE,attr"`
			} `xml:"FullProductName"`
		} `xml:"Branch"`
		FullProductName []struct {
			Value         string `xml:",chardata"`
			AttrProductID string `xml:"ProductID,attr"`
			AttrCpe       string `xml:"CPE,attr"`
		} `xml:"FullProductName"`
		Relationship struct {
			AttrProductReference          string `xml:"ProductReference,attr"`
			AttrRelationshipType          string `xml:"RelationshipType,attr"`
			AttrRelatesToProductReference string `xml:"RelatesToProductReference,attr"`
			FullProductName               []struct {
				Value         string `xml:",chardata"`
				AttrProductID string `xml:"ProductID,attr"`
				AttrCpe       string `xml:"CPE,attr"`
			} `xml:"FullProductName"`
		} `xml:"Relationship"`
		ProductGroups []struct {
			Description string   `xml:"Description"`
			ProductID   []string `xml:"ProductID"`
		} `xml:"ProductGroups>Group"`
	} `xml:"ProductTree"`
	Vulnerability []struct {
		AttrOrdinal string `xml:"Ordinal,attr"`
		Title       string `xml:"Title"`
		ID          string `xml:"ID"`
		Notes       []struct {
			Value       string `xml:",chardata"`
			AttrOrdinal string `xml:"Ordinal,attr"`
			AttrTitle   string `xml:"Title,attr"`
			// General, Details, Description, Summary, FAQ, Legal Disclaimer, Other,
			AttrType     string `xml:"Type,attr"`
			AttrAudience string `xml:"Audience,attr"`
		} `xml:"Notes>Note"`
		DiscoveryDate Mstime `xml:"DiscoveryDate"`
		ReleaseDate   Mstime `xml:"ReleaseDate"`
		Involvements  []struct {
			// Vendor, Discoverer, Coordinator, User, Other
			Party string `xml:"Party,attr"`
			// Open, Disputed, In Progress, Completed, Contact Attempted, Not Contacted
			Status      string `xml:"Status,attr"`
			Description string `xml:"Description"`
		} `xml:"Involvements>Involvement"`
		Description     string `xml:"Description"`
		CVE             string `xml:"CVE"`
		CWE             string `xml:"CWE"`
		ProductStatuses []struct {
			// First Affected, Known Affected, Known Not Affected, First Fixed, Fixed, Recommended, Last Affected,
			AttrType  string   `xml:"Type,attr"`
			ProductID []string `xml:"ProductID"`
		} `xml:"ProductStatuses>Status"`
		Threats []struct {
			// Impact, Exploit Status, Target Set
			AttrType    string   `xml:"Type,attr"`
			AttrDate    Mstime   `xml:"Date,attr"`
			Description string   `xml:"Description"`
			GroupID     string   `xml:"GroupID"`
			ProductID   []string `xml:"ProductID"`
		} `xml:"Threats>Threat"`
		CVSSScoreSets []struct {
			// 0.0 – 10.0
			BaseScore float64 `xml:"BaseScore"`
			// 0.0 – 10.0
			TemporalScore float64 `xml:"TemporalScore"`
			// 0.0 – 10.0
			EnvironmentalScore float64 `xml:"EnvironmentalScore"`
			// 76 characters
			Vector    string   `xml:"Vector"`
			ProductID []string `xml:"ProductID"`
		} `xml:"CVSSScoreSets>ScoreSet"`
		Remediations []struct {
			// Workaround, Mitigation, Vendor Fix, None Available, Will Not Fix
			AttrType        string   `xml:"Type,attr"`
			AffectedFiles   []string `xml:"AffectedFiles>AffectedFile"`
			Description     string   `xml:"Description"`
			ProductID       []string `xml:"ProductID"`
			Entitlement     string   `xml:"Entitlement"`
			GroupID         string   `xml:"GroupID"`
			RestartRequired string   `xml:"RestartRequired"`
			SubType         string   `xml:"SubType"`
			Supercedence    string   `xml:"Supercedence"`
			URL             string   `xml:"URL"`
		} `xml:"Remediations>Remediation"`
		References []struct {
			// External, Self
			AttrType    string `xml:"Type,attr"`
			URL         string `xml:"URL"`
			Description string `xml:"Description"`
		} `xml:"References>Reference"`
		Acknowledgments []struct {
			Name         string `xml:"Name"`
			Organization string `xml:"Organization"`
			URL          string `xml:"URL"`
			Description  string `xml:"Description"`
		} `xml:"Acknowledgments>Acknowledgment"`
		RevisionHistory []struct {
			Date        Mstime  `xml:"Date"`
			Description string  `xml:"Description"`
			Number      float64 `xml:"Number"`
		} `xml:"RevisionHistory>Revision"`
	} `xml:"Vulnerability"`
}

MicrosoftXML : http://www.icasi.org/cvrf-v1-1-dictionary-of-elements/

type Mstime added in v0.1.1

type Mstime struct {
	time.Time
}

Mstime :

func (*Mstime) UnmarshalXML added in v0.1.1

func (m *Mstime) UnmarshalXML(d *xml.Decoder, start xml.StartElement) error

UnmarshalXML :

type RedhatAffectedRelease

type RedhatAffectedRelease struct {
	ID          int64  `json:"-"`
	RedhatCVEID int64  `json:"-" gorm:"index:idx_redhat_affected_releases_redhat_cve_id"`
	ProductName string `json:"product_name" gorm:"type:varchar(255)"`
	ReleaseDate string `json:"release_date" gorm:"type:varchar(255)"`
	Advisory    string `json:"advisory" gorm:"type:varchar(255)"`
	Package     string `json:"package" gorm:"type:varchar(255)"`
	Cpe         string `json:"cpe" gorm:"type:varchar(255)"`
}

RedhatAffectedRelease :

type RedhatBugzilla

type RedhatBugzilla struct {
	ID          int64  `json:"-"`
	RedhatCVEID int64  `json:"-" gorm:"index:idx_redhat_bugzillas_redhat_cve_id"`
	Description string `json:"description" gorm:"type:text"`

	BugzillaID string `json:"id" gorm:"type:varchar(255)"`
	URL        string `json:"url" gorm:"type:varchar(255)"`
}

RedhatBugzilla :

type RedhatCVE

type RedhatCVE struct {
	ID int64 `json:"-"`

	// gorm can't handle embedded struct
	ThreatSeverity       string    `gorm:"type:varchar(255)"`
	PublicDate           time.Time `gorm:"type:time"`
	Bugzilla             RedhatBugzilla
	Cvss                 RedhatCvss
	Cvss3                RedhatCvss3
	Iava                 string `gorm:"type:varchar(255)"`
	Cwe                  string `gorm:"type:varchar(255)"`
	Statement            string `gorm:"type:text"`
	Acknowledgement      string `gorm:"type:text"`
	Mitigation           string `gorm:"type:text"`
	AffectedRelease      []RedhatAffectedRelease
	PackageState         []RedhatPackageState
	Name                 string `gorm:"type:varchar(255);index:idx_redhat_cves_name"`
	DocumentDistribution string `gorm:"type:text"`

	Details    []RedhatDetail
	References []RedhatReference
}

RedhatCVE :

func (RedhatCVE) GetDetail

func (r RedhatCVE) GetDetail(sep string) string

GetDetail returns details

func (RedhatCVE) GetPackages

func (r RedhatCVE) GetPackages(sep string) (result string)

GetPackages returns package names

type RedhatCVEJSON

type RedhatCVEJSON struct {
	ThreatSeverity       string         `json:"threat_severity"`
	PublicDate           string         `json:"public_date"`
	Bugzilla             RedhatBugzilla `json:"bugzilla"`
	Cvss                 RedhatCvss     `json:"cvss"`
	Cvss3                RedhatCvss3    `json:"cvss3"`
	Iava                 string         `json:"iava"`
	Cwe                  string         `json:"cwe"`
	Statement            string         `json:"statement"`
	Acknowledgement      string         `json:"acknowledgement"`
	Mitigation           string         `json:"mitigation"`
	TempAffectedRelease  interface{}    `json:"affected_release"` // affected_release is array or object
	AffectedRelease      []RedhatAffectedRelease
	TempPackageState     interface{} `json:"package_state"` // package_state is array or object
	PackageState         []RedhatPackageState
	Name                 string `json:"name"`
	DocumentDistribution string `json:"document_distribution"`

	Details    []string `json:"details" gorm:"-"`
	References []string `json:"references" gorm:"-"`
}

RedhatCVEJSON :

type RedhatCVEJSONAffectedReleaseArray

type RedhatCVEJSONAffectedReleaseArray struct {
	AffectedRelease []RedhatAffectedRelease `json:"affected_release"`
}

RedhatCVEJSONAffectedReleaseArray :

type RedhatCVEJSONAffectedReleaseObject

type RedhatCVEJSONAffectedReleaseObject struct {
	AffectedRelease RedhatAffectedRelease `json:"affected_release"`
}

RedhatCVEJSONAffectedReleaseObject :

type RedhatCVEJSONPackageStateArray

type RedhatCVEJSONPackageStateArray struct {
	PackageState []RedhatPackageState `json:"package_state"`
}

RedhatCVEJSONPackageStateArray :

type RedhatCVEJSONPackageStateObject

type RedhatCVEJSONPackageStateObject struct {
	PackageState RedhatPackageState `json:"package_state"`
}

RedhatCVEJSONPackageStateObject :

type RedhatCvss

type RedhatCvss struct {
	ID                int64  `json:"-"`
	RedhatCVEID       int64  `json:"-" gorm:"index:idx_redhat_cvsses_redhat_cve_id"`
	CvssBaseScore     string `json:"cvss_base_score" gorm:"type:varchar(255)"`
	CvssScoringVector string `json:"cvss_scoring_vector" gorm:"type:varchar(255)"`
	Status            string `json:"status" gorm:"type:varchar(255)"`
}

RedhatCvss :

type RedhatCvss3

type RedhatCvss3 struct {
	ID                 int64  `json:"-"`
	RedhatCVEID        int64  `json:"-" gorm:"index:idx_redhat_cvss3_redhat_cve_id"`
	Cvss3BaseScore     string `json:"cvss3_base_score" gorm:"type:varchar(255)"`
	Cvss3ScoringVector string `json:"cvss3_scoring_vector" gorm:"type:varchar(255)"`
	Status             string `json:"status" gorm:"type:varchar(255)"`
}

RedhatCvss3 :

type RedhatDetail

type RedhatDetail struct {
	ID          int64  `json:"-"`
	RedhatCVEID int64  `json:"-" gorm:"index:idx_redhat_details_redhat_cve_id"`
	Detail      string `gorm:"type:text"`
}

RedhatDetail :

type RedhatEntry

type RedhatEntry struct {
	CveID             string        `json:"CVE"`
	Severity          string        `json:"severity"`
	PublicDate        time.Time     `json:"public_date"`
	Advisories        []interface{} `json:"advisories"`
	Bugzilla          string        `json:"bugzilla"`
	CvssScore         interface{}   `json:"cvss_score"`
	CvssScoringVector interface{}   `json:"cvss_scoring_vector"`
	CWE               string        `json:"CWE"`
	AffectedPackages  []interface{} `json:"affected_packages"`
	ResourceURL       string        `json:"resource_url"`
	Cvss3Score        float64       `json:"cvss3_score"`
}

RedhatEntry :

type RedhatPackageState

type RedhatPackageState struct {
	ID          int64  `json:"-"`
	RedhatCVEID int64  `json:"-" gorm:"index:idx_redhat_package_states_redhat_cve_id"`
	ProductName string `json:"product_name" gorm:"type:varchar(255)"`
	FixState    string `json:"fix_state" gorm:"type:varchar(255);index:idx_redhat_package_states_fix_state"`
	PackageName string `json:"package_name" gorm:"type:varchar(255);index:idx_redhat_package_states_package_name"`
	Cpe         string `json:"cpe" gorm:"type:varchar(255);index:idx_redhat_package_states_cpe"`
}

RedhatPackageState :

type RedhatReference

type RedhatReference struct {
	ID          int64  `json:"-"`
	RedhatCVEID int64  `json:"-" gorm:"index:idx_redhat_references_redhat_cve_id"`
	Reference   string `gorm:"type:text"`
}

RedhatReference :

type UbuntuBug added in v0.2.0

type UbuntuBug struct {
	ID          int64  `json:"-"`
	UbuntuCVEID int64  `json:"-" gorm:"index:idx_ubuntu_bug_ubuntu_cve_id"`
	Bug         string `json:"bug" gorm:"type:text"`
}

UbuntuBug :

type UbuntuCVE added in v0.2.0

type UbuntuCVE struct {
	ID int64 `json:"-"`

	PublicDateAtUSN   time.Time         `json:"public_data_at_usn"`
	CRD               time.Time         `json:"crd"`
	Candidate         string            `json:"candidate" gorm:"type:varchar(255);index:idx_ubuntu_cve_candidate"`
	PublicDate        time.Time         `json:"public_date"`
	References        []UbuntuReference `json:"references"`
	Description       string            `json:"description" gorm:"type:text"`
	UbuntuDescription string            `json:"ubuntu_description" gorm:"type:text"`
	Notes             []UbuntuNote      `json:"notes"`
	Bugs              []UbuntuBug       `json:"bugs"`
	Priority          string            `json:"priority" gorm:"type:varchar(255)"`
	DiscoveredBy      string            `json:"discovered_by" gorm:"type:varchar(255)"`
	AssignedTo        string            `json:"assigned_to" gorm:"type:varchar(255)"`
	Patches           []UbuntuPatch     `json:"patches"`
	Upstreams         []UbuntuUpstream  `json:"upstreams"`
}

UbuntuCVE :

type UbuntuCVEJSON added in v0.2.0

type UbuntuCVEJSON struct {
	PublicDateAtUSN   time.Time
	CRD               time.Time
	Candidate         string
	PublicDate        time.Time
	References        []string
	Description       string
	UbuntuDescription string
	Notes             []string
	Bugs              []string
	Priority          string
	DiscoveredBy      string
	AssignedTo        string
	Patches           map[string]map[string]UbuntuPatchJSON
	UpstreamLinks     map[string][]string
}

UbuntuCVEJSON :

type UbuntuNote added in v0.2.0

type UbuntuNote struct {
	ID          int64  `json:"-"`
	UbuntuCVEID int64  `json:"-" gorm:"index:idx_ubuntu_note_ubuntu_cve_id"`
	Note        string `json:"note" gorm:"type:text"`
}

UbuntuNote :

type UbuntuPatch added in v0.2.0

type UbuntuPatch struct {
	ID             int64                `json:"-"`
	UbuntuCVEID    int64                `json:"-" gorm:"index:idx_ubuntu_patch_ubuntu_cve_id"`
	PackageName    string               `json:"package_name" gorm:"type:varchar(255);index:idx_ubuntu_patch_package_name"`
	ReleasePatches []UbuntuReleasePatch `json:"release_patches"`
}

UbuntuPatch :

type UbuntuPatchJSON added in v0.2.0

type UbuntuPatchJSON struct {
	Status string
	Note   string
}

UbuntuPatchJSON :

type UbuntuReference added in v0.2.0

type UbuntuReference struct {
	ID          int64  `json:"-"`
	UbuntuCVEID int64  `json:"-" gorm:"index:idx_ubuntu_reference_ubuntu_cve_id"`
	Reference   string `json:"reference" gorm:"type:text"`
}

UbuntuReference :

type UbuntuReleasePatch added in v0.2.0

type UbuntuReleasePatch struct {
	ID            int64  `json:"-"`
	UbuntuPatchID int64  `json:"-" gorm:"index:idx_ubuntu_release_patch_ubuntu_patch_id"`
	ReleaseName   string `json:"release_name" gorm:"type:varchar(255);index:idx_ubuntu_release_patch_release_name"`
	Status        string `json:"status" gorm:"type:varchar(255);index:idx_ubuntu_release_patch_status"`
	Note          string `json:"note" gorm:"type:varchar(255)"`
}

UbuntuReleasePatch :

type UbuntuUpstream added in v0.2.0

type UbuntuUpstream struct {
	ID            int64                `json:"-"`
	UbuntuCVEID   int64                `json:"-" gorm:"index:idx_ubuntu_upstream_ubuntu_cve_id"`
	PackageName   string               `json:"package_name" gorm:"type:varchar(255)"`
	UpstreamLinks []UbuntuUpstreamLink `json:"upstream_links"`
}

UbuntuUpstream :

type UbuntuUpstreamLink struct {
	ID               int64  `json:"-"`
	UbuntuUpstreamID int64  `json:"-" gorm:"index:idx_ubuntu_upstream_link_ubuntu_upstream_id"`
	Link             string `json:"link" gorm:"type:text"`
}

UbuntuUpstreamLink :

type Updatelist added in v0.1.1

type Updatelist struct {
	Value []struct {
		ID                 string    `json:"ID"`
		Alias              string    `json:"Alias"`
		DocumentTitle      string    `json:"DocumentTitle"`
		Severity           string    `json:"Severity"`
		InitialReleaseDate time.Time `json:"InitialReleaseDate"`
		CurrentReleaseDate time.Time `json:"CurrentReleaseDate"`
		CvrfURL            string    `json:"CvrfUrl"`
	} `json:"value"`
}

Updatelist :

Jump to

Keyboard shortcuts

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