class SecurityReport::UnpatchedGemResult
Attributes
advisory[R]
identifier[R]
target[R]
Public Class Methods
matches?(obj)
click to toggle source
# File lib/security_report/unpatched_gem_result.rb, line 31 def self.matches?(obj) obj.instance_of? ::Bundler::Audit::Results::UnpatchedGem end
new(scan_result, target)
click to toggle source
# File lib/security_report/unpatched_gem_result.rb, line 13 def initialize(scan_result, target) @identifier = scan_result.gem.to_s @advisory = scan_result.advisory @target = target end
Public Instance Methods
problem()
click to toggle source
# File lib/security_report/unpatched_gem_result.rb, line 19 def problem Problem.new(problem_id, advisory.title, advisory.url) end
solution()
click to toggle source
# File lib/security_report/unpatched_gem_result.rb, line 23 def solution if advisory.patched_versions.empty? "Remove or disable this gem until a patch is available!" else "Upgrade to a new version" end end
Private Instance Methods
problem_id()
click to toggle source
# File lib/security_report/unpatched_gem_result.rb, line 39 def problem_id if advisory.cve #"CVE-#{advisory.cve}" "https://cve.circl.lu/cve/CVE-#{advisory.cve}" elsif advisory.osvdb advisory.osvdb end end