class YAVDB::Crawler

Public Class Methods

sources() click to toggle source
# File lib/yavdb/crawler.rb, line 24
def self.sources
  YAVDB::Sources.constants
    .map { |c| YAVDB::Sources.const_get(c) }
    .sort_by { |c| c.to_s.downcase }
end
vulnerabilities() click to toggle source
# File lib/yavdb/crawler.rb, line 30
def self.vulnerabilities
  vulns = sources.map { |src| src::Client.advisories }.flatten
  clean_vulnerability_versions(vulns)
end

Private Class Methods

clean_vulnerability_versions(vulnerabilities) click to toggle source
# File lib/yavdb/crawler.rb, line 39
def clean_vulnerability_versions(vulnerabilities)
  vulnerabilities
    .map do |vln|
    vln.vulnerable_versions = YAVDB::Utils::SemVer.clean_versions(vln.vulnerable_versions)
    vln.unaffected_versions = YAVDB::Utils::SemVer.clean_versions(vln.unaffected_versions)
    vln.patched_versions    = YAVDB::Utils::SemVer.clean_versions(vln.patched_versions)
    vln
  end
end