class NessusAPI::Template

Public Class Methods

new(template_name, policy_id, target, startTime=nil, rRules=nil, session=Session.current) click to toggle source

The class that handles the specific calls for templates.

# File lib/nessus_api/template.rb, line 8
def initialize(template_name, policy_id, target,
              startTime=nil, rRules=nil,
              session=Session.current)
  @name = template_name
  @policy = policy_id
  @target = target
  @session = session
  @time = startTime
  @rules = rRules
  params = optional({'template_name' => @name, 'policy_id' => @policy,
            'target' => @target}, @time, @rules)
  @uuid = @session.get('scan/template/new', params).at_css("name").text
end

Public Instance Methods

delete(uuid=@uuid) click to toggle source
# File lib/nessus_api/template.rb, line 39
def delete(uuid=@uuid)
  if @session.get('scan/template/delete',
                 {'template' => uuid}).css('status').text == 'OK'
    return true
  else
    return false
  end
end
edit(old_name, new_name, policy_id, target, startTime=nil, rRules=nil) click to toggle source
# File lib/nessus_api/template.rb, line 22
def edit(old_name, new_name, policy_id, target,
         startTime=nil, rRules=nil)
  params = optional({'template' => old_name, 'template_name' => new_name,
            'policy_id' => policy_id, 'target' => target})
  if @session.get('scan/template/edit', params).css('status').text == 'OK'
    return true
  else
    return false
  end
end
launch(uuid=@uuid) click to toggle source
# File lib/nessus_api/template.rb, line 33
def launch(uuid=@uuid)
  # Returns the uuid of a template scan.
  return @session.get('scan/template/launch',
                 {'template' => uuid}).at_css('uuid').text
end
optional(params, startTime, rRules) click to toggle source
# File lib/nessus_api/template.rb, line 48
def optional(params, startTime, rRules)
  # Returns a hash given with a new hash
  # with the optional attributes added.
  if !startTime.nil?
    params['startTime'] = startTime
  end
  if !rRules.nil?
    params['rRules'] = rRules
  end
  return params
end