diff options
Diffstat (limited to 'cpematch/cpematch.go')
-rw-r--r-- | cpematch/cpematch.go | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/cpematch/cpematch.go b/cpematch/cpematch.go new file mode 100644 index 0000000..0bae622 --- /dev/null +++ b/cpematch/cpematch.go @@ -0,0 +1,31 @@ +// CPE match feed 1.0 parser. +// +// Latest CPE match feed available from here: +// https://nvd.nist.gov/vuln/data-feeds#cpeMatch +// +// JSON schema available here: +// https://csrc.nist.gov/schema/cpematch/feed/1.0/nvd_cpematch_feed_json_1.0.schema +package cpematch + +// CPE name +type Name struct { + Cpe22Uri string `json:"cpe22Uri"` + Cpe23Uri string `json:"cpe23Uri"` +} + +// CPE match string or range +type Match struct { + Vulnerable *bool `json:"vulnerable"` + Cpe22Uri string `json:"cpe22Uri"` + Cpe23Uri string `json:"cpe23Uri"` + VersionStartExcluding string `json:"versionStartExcluding"` + VersionStartIncluding string `json:"versionStartIncluding"` + VersionEndExcluding string `json:"versionEndExcluding"` + VersionEndIncluding string `json:"versionEndIncluding"` + Names []Name `json:"cpe_name"` // CPE match strings +} + +// CPE matches +type Matches struct { + Matches []Match `json:"matches"` // Array of CPE matches +} |