module RubyArachni
Constants
- VERSION
Public Class Methods
parse(path)
click to toggle source
# File lib/ruby_arachni.rb, line 11 def self.parse(path) issues = [] doc = Nokogiri::XML(File.open(path)) doc.xpath('//issues/issue').map do |xml_issue| issue = RarIssue.new [:name, :description, :remedy_guidance, :remedy_code, :severity, :cwe, :digest, :remarks, :page, :referring_page, :signature, :proof, :trusted, :platform_type, :platform_name].each do |field| issue.send("#{field.to_s}=", xml_issue.css(field.to_s).text) end check = xml_issue.css('check') issue.check = RarCheck.parse(check) if !check.nil? vector = xml_issue.css('vector') issue.vector = RarVector.parse(vector) if !vector.nil? issue.references = [] references = xml_issue.css('references') if !references.nil? references.css('reference').each do |reference| issue.references.push(RarReference.parse(reference)) end end issues.push issue end issues end