Method: Msf::DBManager::Import::CI#import_ci_xml

Defined in:
lib/msf/core/db_manager/import/ci.rb

#import_ci_xml(args = {}, &block) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
# File 'lib/msf/core/db_manager/import/ci.rb', line 13

def import_ci_xml(args={}, &block)
  bl = validate_ips(args[:blacklist]) ? args[:blacklist].split : []
  wspace = Msf::Util::DBManager.process_opts_workspace(args, framework).name
  if Rex::Parser.nokogiri_loaded
    parser = "Nokogiri v#{::Nokogiri::VERSION}"
    noko_args = args.dup
    noko_args[:blacklist] = bl
    noko_args[:workspace] = wspace
    if block
      yield(:parser, parser)
      import_ci_noko_stream(noko_args) {|type, data| yield type,data}
    else
      import_ci_noko_stream(noko_args)
    end
    return true
  else # Sorry
    raise Msf::DBImportError.new("Could not import due to missing Nokogiri parser. Try 'gem install nokogiri'.")
  end
end