prenus 0.0.3 → 0.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,109 @@
1
+ class Fixnum
2
+
3
+ # Return false if the integer does NOT equal zero
4
+ # @return [Boolean]
5
+ # Return true is count does NOT equal zero
6
+ # @example
7
+ # host.event_count.blank? #=> false
8
+ def blank?
9
+ if (self.zero?)
10
+ return true
11
+ else
12
+ return false
13
+ end
14
+ end
15
+
16
+ # Return a severity integer in words.
17
+ # @return [String]
18
+ # Return a severity integer in words.
19
+ # @example
20
+ # event.severity.in_words #=> "High Severity"
21
+ def in_words
22
+ case self
23
+ when 0
24
+ return "Informational Severity"
25
+ when 1
26
+ return "Low Severity"
27
+ when 2
28
+ return "Medium Severity"
29
+ when 3
30
+ return "High Severity"
31
+ when 4
32
+ return "Critical Severity"
33
+ end
34
+ end
35
+
36
+ # Return True if the given severity is critical
37
+ # @return [Boolean]
38
+ # Return True if the given severity is critical
39
+ # @example
40
+ # host.severity.critical? #=> true
41
+ def critical?
42
+ if self == 4
43
+ true
44
+ else
45
+ false
46
+ end
47
+ end
48
+
49
+ # Return True if the given severity is high
50
+ # @return [Boolean]
51
+ # Return True if the given severity is high
52
+ # @example
53
+ # host.severity.high? #=> true
54
+ def high?
55
+ if self == 3
56
+ true
57
+ else
58
+ false
59
+ end
60
+ end
61
+
62
+ # Return True if the given severity is medium
63
+ # @return [Boolean]
64
+ # Return True if the given severity is medium
65
+ # @example
66
+ # host.severity.medium? #=> true
67
+ def medium?
68
+ if self == 2
69
+ true
70
+ else
71
+ false
72
+ end
73
+ end
74
+
75
+ # Return True if the given severity is low
76
+ # @return [Boolean]
77
+ # Return True if the given severity is low
78
+ # @example
79
+ # host.severity.low? #=> true
80
+ def low?
81
+ if self >= 1
82
+ true
83
+ else
84
+ false
85
+ end
86
+ end
87
+
88
+ end
89
+
90
+ class String
91
+
92
+ # Return True if the given string is blank?
93
+ # @return [Boolean]
94
+ # Return True if the given string is blank?
95
+ # @example
96
+ # host.hostname.blank? #=> false
97
+ def blank?
98
+ respond_to?(:empty?) ? empty? : !self
99
+ end
100
+
101
+ end
102
+
103
+ class DateTime
104
+
105
+ def pretty
106
+ self.strftime('%A %B %d, %Y %I:%M:%S %p')
107
+ end
108
+
109
+ end
@@ -0,0 +1,82 @@
1
+ require 'rainbow'
2
+ module Nessus
3
+
4
+ class Log
5
+
6
+ #
7
+ # Formatting
8
+ #
9
+ def self.it(msg=nil)
10
+ STDERR.puts "#{msg}"
11
+ end
12
+
13
+ def self.it!(msg=nil)
14
+ STDERR.puts "\t#{msg}"
15
+ end
16
+
17
+ def self.break
18
+ STDERR.puts "\t"
19
+ STDERR.puts ""
20
+ end
21
+
22
+ def self.end
23
+ STDERR.puts "\n\n"
24
+ end
25
+
26
+ #
27
+ # Headers
28
+ #
29
+ def self.h1(title, msg=nil)
30
+ STDERR.puts "-> #{title}: ".foreground(:green).bright + "#{msg}"
31
+ end
32
+
33
+ def self.h2(title, msg=nil)
34
+ STDERR.puts "\t#{title}: ".foreground(:blue).bright + "#{msg}"
35
+ end
36
+
37
+ def self.h3(title, msg=nil)
38
+ STDERR.puts "\t#{title}: " + "#{msg}".foreground(:blue).underline
39
+ end
40
+
41
+ def self.h4(msg=nil)
42
+ STDERR.puts "\t\t- #{msg}"
43
+ end
44
+
45
+ def self.h5(title, msg=nil)
46
+ STDERR.puts "\t\t- #{title}: #{msg}"
47
+ end
48
+
49
+ #
50
+ # Errors
51
+ #
52
+ def self.error(msg=nil)
53
+ STDERR.puts "ERROR: ".foreground(:red).bright + "#{msg}"
54
+ end
55
+
56
+ def self.warn(msg=nil)
57
+ STDERR.puts "WARNING: ".foreground(:yellow).bright + "#{msg}"
58
+ end
59
+
60
+ def self.info(msg=nil)
61
+ STDERR.puts "INFO: ".foreground(:green).bright + "#{msg}"
62
+ end
63
+
64
+ #
65
+ # Event Severities
66
+ #
67
+ def self.informational(title, msg=nil)
68
+ STDERR.puts "\t#{title}: ".foreground(:magenta).bright + "#{msg}"
69
+ end
70
+ def self.low(title, msg=nil)
71
+ STDERR.puts "\t#{title}: ".foreground(:green) + "#{msg}"
72
+ end
73
+ def self.medium(title, msg=nil)
74
+ STDERR.puts "\t#{title}: ".foreground(:yellow).bright + "#{msg}"
75
+ end
76
+ def self.high(title, msg=nil)
77
+ STDERR.puts "\t#{title}: ".foreground(:red).bright + "#{msg}"
78
+ end
79
+
80
+ end
81
+
82
+ end
@@ -0,0 +1,6 @@
1
+ require 'lib/gemcache/ruby-nessus/ruby-nessus/parse'
2
+ require 'lib/gemcache/ruby-nessus/ruby-nessus/core_ext/helpers'
3
+
4
+ module Nessus
5
+
6
+ end
@@ -0,0 +1,41 @@
1
+ require 'lib/gemcache/ruby-nessus/ruby-nessus/log'
2
+ require 'lib/gemcache/ruby-nessus/ruby-nessus/Version1/version1'
3
+ require 'lib/gemcache/ruby-nessus/ruby-nessus/Version2/version2'
4
+
5
+ require 'nokogiri'
6
+ require 'date'
7
+ require 'enumerator'
8
+ require 'time'
9
+
10
+ module Nessus
11
+
12
+ class Parse
13
+
14
+ def initialize(file, options={}, &block)
15
+ @file = File.open(file)
16
+ @version = options[:version]
17
+ @xml = Nokogiri::XML.parse(@file.read)
18
+
19
+ if @version
20
+ case @version
21
+ when 1
22
+ block.call(Version1::XML.new(@xml)) if block
23
+ when 2
24
+ block.call(Version2::XML.new(@xml)) if block
25
+ else
26
+ raise "Error: Supported .Nessus Version are 1 and 2."
27
+ end
28
+ else
29
+ if @xml.at('NessusClientData')
30
+ block.call(Version1::XML.new(@xml)) if block
31
+ elsif @xml.at('NessusClientData_v2')
32
+ block.call(Version2::XML.new(@xml)) if block
33
+ else
34
+ raise "Error: Supported .Nessus Version are 1 and 2."
35
+ end
36
+ end
37
+
38
+ end
39
+
40
+ end
41
+ end
@@ -0,0 +1,3 @@
1
+ module Nessus
2
+ VERSION = '1.0.3'
3
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: prenus
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,19 +9,8 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-08-20 00:00:00.000000000Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
15
- name: ruby-nessus
16
- requirement: &70128637787000 !ruby/object:Gem::Requirement
17
- none: false
18
- requirements:
19
- - - ~>
20
- - !ruby/object:Gem::Version
21
- version: 1.0.3
22
- type: :runtime
23
- prerelease: false
24
- version_requirements: *70128637787000
12
+ date: 2012-09-03 00:00:00.000000000Z
13
+ dependencies: []
25
14
  description: Pretty Nessus = Prenus
26
15
  email: xntrik@gmail.com
27
16
  executables:
@@ -32,6 +21,21 @@ extra_rdoc_files:
32
21
  - README.rdoc
33
22
  files:
34
23
  - lib/css/table.css
24
+ - lib/gemcache/ruby-nessus/ruby-nessus/cli.rb
25
+ - lib/gemcache/ruby-nessus/ruby-nessus/core_ext/helpers.rb
26
+ - lib/gemcache/ruby-nessus/ruby-nessus/log.rb
27
+ - lib/gemcache/ruby-nessus/ruby-nessus/nessus.rb
28
+ - lib/gemcache/ruby-nessus/ruby-nessus/parse.rb
29
+ - lib/gemcache/ruby-nessus/ruby-nessus/version.rb
30
+ - lib/gemcache/ruby-nessus/ruby-nessus/Version1/event.rb
31
+ - lib/gemcache/ruby-nessus/ruby-nessus/Version1/host.rb
32
+ - lib/gemcache/ruby-nessus/ruby-nessus/Version1/port.rb
33
+ - lib/gemcache/ruby-nessus/ruby-nessus/Version1/version1.rb
34
+ - lib/gemcache/ruby-nessus/ruby-nessus/Version2/event.rb
35
+ - lib/gemcache/ruby-nessus/ruby-nessus/Version2/host.rb
36
+ - lib/gemcache/ruby-nessus/ruby-nessus/Version2/port.rb
37
+ - lib/gemcache/ruby-nessus/ruby-nessus/Version2/version2.rb
38
+ - lib/gemcache/ruby-nessus/ruby-nessus.rb
35
39
  - lib/images/back_disabled.png
36
40
  - lib/images/back_enabled.png
37
41
  - lib/images/back_enabled_hover.png