Class: Nessus::Version1::Event

Inherits:
Object
  • Object
show all
Defined in:
lib/gemcache/ruby-nessus/ruby-nessus/Version1/event.rb

Instance Method Summary collapse

Constructor Details

#initialize(event) ⇒ Integer

Return the total event count for a given host.

Examples:

host.event_count #=> 3456


13
14
15
# File 'lib/gemcache/ruby-nessus/ruby-nessus/Version1/event.rb', line 13

def initialize(event)
  @event = event
end

Instance Method Details

#dataString Also known as: output

Return the event plugin output data

Examples:

event.output        #=> "..."
event.data          #=> "..."

Returns:

  • (String)

    Return the event plugin output data



74
75
76
77
78
79
80
81
82
83
# File 'lib/gemcache/ruby-nessus/ruby-nessus/Version1/event.rb', line 74

def data
  d = "#{@event.at('data')}" || ""

  @data ||= unless d.empty?
                     @event.at('data').inner_text || "N/A"
                   else
                     false
                   end
  return @data
end

#plugin_idString

Return the event object nessus plugin id

Examples:

event.plugin_id #=> 3245

Returns:

  • (String)

    Return the event object nessus plugin id



45
46
47
# File 'lib/gemcache/ruby-nessus/ruby-nessus/Version1/event.rb', line 45

def plugin_id
  @plugin_id ||= @event.at('pluginID').inner_text.to_i
end

#plugin_nameString Also known as: name

Return the event name (plugin_name)

Examples:

event.plugin_name   #=> "PHP < 5.2.4 Multiple Vulnerabilities"
event.name          #=> "PHP < 5.2.4 Multiple Vulnerabilities"

Returns:

  • (String)

    Return the event name (plugin_name)



55
56
57
58
59
60
61
62
63
64
65
# File 'lib/gemcache/ruby-nessus/ruby-nessus/Version1/event.rb', line 55

def plugin_name
  s = @event.at('pluginName').inner_text

  @plugin_name ||= unless s.empty?
                     @event.at('pluginName').inner_text || "N/A"
                   else
                     false
                   end

  return @plugin_name
end

#portObject

Return the event port.

Examples:

event.port            #=> "https (443/tcp)"
event.port.number     #=> 443
event.port.service    #=> "https"
event.port.protocol   #=> "tcp"

Returns:

  • (Object)

    Return the event port object or port string.



25
26
27
# File 'lib/gemcache/ruby-nessus/ruby-nessus/Version1/event.rb', line 25

def port
  @port ||= Port.parse(@event.at('port').inner_text)
end

#severityString

Return the event severity.

Examples:

event.severity          #=> 3
event.severity.in_words #=> "High Severity"

Returns:

  • (String)

    Return the event severity.

See Also:

  • String#in_words


36
37
38
# File 'lib/gemcache/ruby-nessus/ruby-nessus/Version1/event.rb', line 36

def severity
  @severity ||= @event.at('severity').inner_text.to_i
end