uirusu 1.0.0 → 1.0.1

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2c9a7eaa95379074a9c3db4c00e564fcffac6400
4
- data.tar.gz: 8210b577fac1515a0b91443bb310ff58abf43592
3
+ metadata.gz: 8fba998a37e7972030ea7e2e963634c191d1e0e0
4
+ data.tar.gz: 2271e8d73ccf95edba19e4248a0f92d317c07234
5
5
  SHA512:
6
- metadata.gz: b215935bace5c0265b84ec1b2cbde18f5aed314a99a87f2dcf052bb605ae99137603649798f8f9d00895969e6e2a66018c6a7f89eb4cf49f6d94ecbeededf465
7
- data.tar.gz: 6322371a09fa1bce225ac5f22f1babffc1a8d7d625eb6707c36ad0ea32460b77c1e49c3c7d2a645ebb3b406b72b7818738ab55110867b2b12f2d3da9abd2d36a
6
+ metadata.gz: f7d43fe9f146334af62dfa4cc425fb9401af52645b4c5baab6b641f24b9c03944ceb38ace7e1d8739333421a09dd3a3474d430efec8e4917b5d51bf38db7e42b
7
+ data.tar.gz: dfd744984a492dd2103eca9f2474da73a716a9f4a4d5f335ac2a2cf4709e5767da855aa1a5ca9f4433660f164f5193ecbac1479fdfaf6d52f3588c6ce2738c5d
data/Gemfile CHANGED
@@ -1,7 +1,8 @@
1
1
  source "https://rubygems.org"
2
+ gemspec
2
3
 
3
- gem 'json', '~> 1.8.3'
4
- gem 'rest-client', '~> 1.6.9'
4
+ #gem 'json', '~> 1.8.3'
5
+ #gem 'rest-client', '~> 1.6.9'
5
6
 
6
- gem 'rake', "~> 10.4.2"
7
- gem 'minitest', '~> 5.0'
7
+ #gem 'rake', "~> 10.4.2"
8
+ #gem 'minitest', '~> 5.0'
@@ -1,17 +1,41 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ uirusu (1.0.1)
5
+ json (~> 1.8, >= 1.8.3)
6
+ rest-client (~> 1.8, >= 1.8.0)
7
+
1
8
  GEM
2
9
  remote: https://rubygems.org/
3
10
  specs:
11
+ domain_name (0.5.20160615)
12
+ unf (>= 0.0.5, < 1.0.0)
13
+ http-cookie (1.0.2)
14
+ domain_name (~> 0.5)
4
15
  json (1.8.3)
5
- mime-types (1.25.1)
6
- rest-client (1.6.9)
7
- mime-types (~> 1.16)
16
+ mime-types (2.99.2)
17
+ minitest (5.9.0)
18
+ netrc (0.11.0)
19
+ power_assert (0.3.0)
20
+ rest-client (1.8.0)
21
+ http-cookie (>= 1.0.2, < 2.0)
22
+ mime-types (>= 1.16, < 3.0)
23
+ netrc (~> 0.7)
24
+ test-unit (3.2.0)
25
+ power_assert
26
+ unf (0.1.4)
27
+ unf_ext
28
+ unf_ext (0.0.7.2)
29
+ yard (0.8.7.6)
8
30
 
9
31
  PLATFORMS
10
32
  ruby
11
33
 
12
34
  DEPENDENCIES
13
- json (~> 1.8.3)
14
- rest-client (~> 1.6.1)
35
+ minitest (~> 5.0, >= 5.9)
36
+ test-unit (~> 3.2, >= 3.2)
37
+ uirusu!
38
+ yard (~> 0.8, >= 0.8.7.6)
15
39
 
16
40
  BUNDLED WITH
17
- 1.10.6
41
+ 1.12.5
data/LICENSE CHANGED
@@ -1,25 +1,19 @@
1
- Copyright (c) 2012-2016 Arxopia LLC.
2
- All rights reserved.
1
+ Copyright (c) 2010-2016 Arxopia LLC.
3
2
 
4
- Redistribution and use in source and binary forms, with or without
5
- modification, are permitted provided that the following conditions are met:
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ of this software and associated documentation files (the "Software"), to deal
5
+ in the Software without restriction, including without limitation the rights
6
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ copies of the Software, and to permit persons to whom the Software is
8
+ furnished to do so, subject to the following conditions:
6
9
 
7
- * Redistributions of source code must retain the above copyright
8
- notice, this list of conditions and the following disclaimer.
9
- * Redistributions in binary form must reproduce the above copyright
10
- notice, this list of conditions and the following disclaimer in the
11
- documentation and/or other materials provided with the distribution.
12
- * Neither the name of the Arxopia LLC nor the names of its contributors
13
- may be used to endorse or promote products derived from this software
14
- without specific prior written permission.
10
+ The above copyright notice and this permission notice shall be included in
11
+ all copies or substantial portions of the Software.
15
12
 
16
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17
- ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18
- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19
- DISCLAIMED. IN NO EVENT SHALL ARXOPIA LLC BE LIABLE FOR ANY DIRECT, INDIRECT,
20
- INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
21
- LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
22
- OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23
- LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
24
- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
25
- OF THE POSSIBILITY OF SUCH DAMAGE.
13
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE
16
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ THE SOFTWARE.
@@ -1,8 +1,8 @@
1
- # uirusu [![Build Status](https://travis-ci.org/arxopia/uirusu.svg)](https://travis-ci.org/arxopia/uirusu)
1
+ # uirusu [![Gem Version](https://badge.fury.io/rb/uirusu.png)](http://badge.fury.io/rb/uirusu) [![Build Status](https://travis-ci.org/arxopia/uirusu.svg)](https://travis-ci.org/arxopia/uirusu) [![Code Climate](https://codeclimate.com/github/arxopia/uirusu/badges/gpa.svg)](https://codeclimate.com/github/arxopia/uirusu) [![Inline docs](http://inch-ci.org/github/arxopia/uirusu.svg?branch=master)](http://inch-ci.org/github/arxopia/uirusu)
2
2
 
3
3
  uirusu is an [Virustotal](http://www.virustotal.com) automation and convenience tool for hash, file and URL submission.
4
4
 
5
- The current version is 1.0.0.
5
+ The current version is 1.0.1.
6
6
 
7
7
  ## Requirements
8
8
 
@@ -22,6 +22,10 @@ The current version is 1.0.0.
22
22
  ### Edit your configuration file with API key
23
23
  % $EDITOR ~/.uirusu
24
24
 
25
+ ### Alternatively you can set Environment variables without a config file
26
+ % export UIRUSU_VT_API_KEY=<YOUR_KEY_HERE>
27
+ % export UIRUSU_VT_TIMEOUT=25
28
+
25
29
  ## Usage
26
30
 
27
31
  ### Searching a file of hashes
@@ -74,7 +78,7 @@ print results if results != nil
74
78
  ```
75
79
 
76
80
  ##License
77
- Uirusu is licensed under the BSD license see the `LICENSE` file for the full license.
81
+ Uirusu is licensed under the MIT license see the `LICENSE` file for the full license.
78
82
 
79
83
  ## Contact
80
- You can reach the team at uirusu[@]arxopia[dot]com, http://www.arxopia.com, or contact hammackj on IRC @ irc.freenode.net, #risu
84
+ You can reach the team at jacob.hammack[@]arxopia[dot]com, http://www.arxopia.com, or contact hammackj on IRC @ irc.freenode.net, #risu
data/Rakefile CHANGED
@@ -1,28 +1,22 @@
1
- # Copyright (c) 2012-2016 Arxopia LLC.
2
- # All rights reserved.
1
+ # Copyright (c) 2010-2016 Arxopia LLC.
3
2
  #
4
- # Redistribution and use in source and binary forms, with or without
5
- # modification, are permitted provided that the following conditions are met:
3
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ # of this software and associated documentation files (the "Software"), to deal
5
+ # in the Software without restriction, including without limitation the rights
6
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ # copies of the Software, and to permit persons to whom the Software is
8
+ # furnished to do so, subject to the following conditions:
6
9
  #
7
- # * Redistributions of source code must retain the above copyright
8
- # notice, this list of conditions and the following disclaimer.
9
- # * Redistributions in binary form must reproduce the above copyright
10
- # notice, this list of conditions and the following disclaimer in the
11
- # documentation and/or other materials provided with the distribution.
12
- # * Neither the name of the Arxopia LLC nor the names of its contributors
13
- # may be used to endorse or promote products derived from this software
14
- # without specific prior written permission.
10
+ # The above copyright notice and this permission notice shall be included in
11
+ # all copies or substantial portions of the Software.
15
12
  #
16
- # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17
- # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18
- # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19
- # DISCLAIMED. IN NO EVENT SHALL ARXOPIA LLC BE LIABLE FOR ANY DIRECT, INDIRECT,
20
- # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
21
- # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
22
- # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23
- # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
24
- # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
25
- # OF THE POSSIBILITY OF SUCH DAMAGE.
13
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ # FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE
16
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ # THE SOFTWARE.
26
20
 
27
21
  $LOAD_PATH.unshift File.expand_path("../lib", __FILE__)
28
22
 
data/bin/uirusu CHANGED
@@ -1,35 +1,31 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- # Copyright (c) 2012-2016 Arxopia LLC.
4
- # All rights reserved.
3
+ # Copyright (c) 2010-2016 Arxopia LLC.
5
4
  #
6
- # Redistribution and use in source and binary forms, with or without
7
- # modification, are permitted provided that the following conditions are met:
5
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ # of this software and associated documentation files (the "Software"), to deal
7
+ # in the Software without restriction, including without limitation the rights
8
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ # copies of the Software, and to permit persons to whom the Software is
10
+ # furnished to do so, subject to the following conditions:
8
11
  #
9
- # * Redistributions of source code must retain the above copyright
10
- # notice, this list of conditions and the following disclaimer.
11
- # * Redistributions in binary form must reproduce the above copyright
12
- # notice, this list of conditions and the following disclaimer in the
13
- # documentation and/or other materials provided with the distribution.
14
- # * Neither the name of the Arxopia LLC nor the names of its contributors
15
- # may be used to endorse or promote products derived from this software
16
- # without specific prior written permission.
12
+ # The above copyright notice and this permission notice shall be included in
13
+ # all copies or substantial portions of the Software.
17
14
  #
18
- # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
19
- # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
20
- # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
21
- # DISCLAIMED. IN NO EVENT SHALL ARXOPIA LLC BE LIABLE FOR ANY DIRECT, INDIRECT,
22
- # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
23
- # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
24
- # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
25
- # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
26
- # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
27
- # OF THE POSSIBILITY OF SUCH DAMAGE.
15
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ # FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE
18
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
+ # THE SOFTWARE.
28
22
 
29
23
  $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '/../lib'))
30
24
 
31
- require 'rubygems'
32
25
  require 'uirusu'
33
26
 
27
+ $stdout.sync = true
28
+ $stderr.sync = true
29
+
34
30
  app = Uirusu::CLI::Application.new
35
31
  app.main(ARGV)
@@ -1,16 +1,30 @@
1
1
  # News
2
2
 
3
- # 0.0.10 (Novemeber 30, 2016)
3
+ # 1.0.1 (July 1, 2016)
4
+ - Fixed email address
5
+ - Changed License to MIT
6
+ - Updated Dependencies to modern versions
7
+ - Fixed issue with Gemfile / Gemspec build on travis.ci
8
+ - Fixed issue #10; The command line utility will check the environment variables UIRUSU_VT_API_KEY and UIRUSU_VT_TIMEOUT if a config file doesn't exist. Allowing config file free installs to function.
9
+ - Various other code clean ups for warnings
10
+
11
+ # 1.0.0 (December 1, 2016)
12
+ - Fixed Rakefile issue
13
+
14
+ # 0.0.11 (December 1, 2016)
15
+ - Fixed Gemspec issue
16
+
17
+ # 0.0.10 (November 30, 2016)
4
18
  - Added accessor for Results in the VTResults class
5
19
  - Added initial test for VTFile
6
20
  - Added initial test for VTUrl
7
21
  - Added initial test for Application class
8
22
  - Updated docs on various classes
9
23
 
10
- # 0.0.9 (Novemeber 22, 2015)
24
+ # 0.0.9 (November 22, 2015)
11
25
  - Adds empty options hash as arg to to_json override [kitplummer]
12
26
 
13
- # 0.0.8 (Novemeber 20, 2015)
27
+ # 0.0.8 (November 20, 2015)
14
28
  - Remove double array bracket [kitplummer]
15
29
 
16
30
  # 0.0.7 (August 31, 2015)
@@ -1,37 +1,25 @@
1
- # Copyright (c) 2012-2016 Arxopia LLC.
2
- # All rights reserved.
1
+ # Copyright (c) 2010-2016 Arxopia LLC.
3
2
  #
4
- # Redistribution and use in source and binary forms, with or without
5
- # modification, are permitted provided that the following conditions are met:
3
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ # of this software and associated documentation files (the "Software"), to deal
5
+ # in the Software without restriction, including without limitation the rights
6
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ # copies of the Software, and to permit persons to whom the Software is
8
+ # furnished to do so, subject to the following conditions:
6
9
  #
7
- # * Redistributions of source code must retain the above copyright
8
- # notice, this list of conditions and the following disclaimer.
9
- # * Redistributions in binary form must reproduce the above copyright
10
- # notice, this list of conditions and the following disclaimer in the
11
- # documentation and/or other materials provided with the distribution.
12
- # * Neither the name of the Arxopia LLC nor the names of its contributors
13
- # may be used to endorse or promote products derived from this software
14
- # without specific prior written permission.
10
+ # The above copyright notice and this permission notice shall be included in
11
+ # all copies or substantial portions of the Software.
15
12
  #
16
- # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17
- # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18
- # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19
- # DISCLAIMED. IN NO EVENT SHALL ARXOPIA LLC BE LIABLE FOR ANY DIRECT, INDIRECT,
20
- # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
21
- # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
22
- # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23
- # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
24
- # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
25
- # OF THE POSSIBILITY OF SUCH DAMAGE.
13
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ # FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE
16
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ # THE SOFTWARE.
26
20
 
27
21
  module Uirusu
28
- APP_NAME = "uirusu"
29
- VERSION = "1.0.0"
30
- HOME_PAGE = "http://arxopia.github.io/uirusu"
31
- AUTHOR = "Jacob Hammack"
32
- EMAIL = "uirusu@arxopia.com"
33
-
34
- CONFIG_FILE = Dir.home + "/.uirusu"
22
+ CONFIG_FILE = "#{Dir.home}/.uirusu"
35
23
  VT_API = "https://www.virustotal.com/vtapi/v2"
36
24
  RESULT_FIELDS = [ :hash, :scanner, :version, :detected, :result, :md5, :sha1, :sha256, :update, :permalink ]
37
25
  end
@@ -41,6 +29,7 @@ require 'rest-client'
41
29
  require 'optparse'
42
30
  require 'yaml'
43
31
 
32
+ require 'uirusu/version'
44
33
  require 'uirusu/vtfile'
45
34
  require 'uirusu/vturl'
46
35
  require 'uirusu/vtcomment'
@@ -1,28 +1,22 @@
1
- # Copyright (c) 2012-2016 Arxopia LLC.
2
- # All rights reserved.
1
+ # Copyright (c) 2010-2016 Arxopia LLC.
3
2
  #
4
- # Redistribution and use in source and binary forms, with or without
5
- # modification, are permitted provided that the following conditions are met:
3
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ # of this software and associated documentation files (the "Software"), to deal
5
+ # in the Software without restriction, including without limitation the rights
6
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ # copies of the Software, and to permit persons to whom the Software is
8
+ # furnished to do so, subject to the following conditions:
6
9
  #
7
- # * Redistributions of source code must retain the above copyright
8
- # notice, this list of conditions and the following disclaimer.
9
- # * Redistributions in binary form must reproduce the above copyright
10
- # notice, this list of conditions and the following disclaimer in the
11
- # documentation and/or other materials provided with the distribution.
12
- # * Neither the name of the Arxopia LLC nor the names of its contributors
13
- # may be used to endorse or promote products derived from this software
14
- # without specific prior written permission.
10
+ # The above copyright notice and this permission notice shall be included in
11
+ # all copies or substantial portions of the Software.
15
12
  #
16
- # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17
- # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18
- # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19
- # DISCLAIMED. IN NO EVENT SHALL ARXOPIA LLC BE LIABLE FOR ANY DIRECT, INDIRECT,
20
- # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
21
- # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
22
- # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23
- # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
24
- # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
25
- # OF THE POSSIBILITY OF SUCH DAMAGE.
13
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ # FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE
16
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ # THE SOFTWARE.
26
20
 
27
21
  module Uirusu
28
22
  module CLI
@@ -52,7 +46,7 @@ module Uirusu
52
46
  @options[:timeout] = 25
53
47
  @options[:directory] = nil
54
48
 
55
- opt = OptionParser.new do |opt|
49
+ opts = OptionParser.new do |opt|
56
50
  opt.banner = "#{APP_NAME} v#{VERSION}\nJacob Hammack\n#{HOME_PAGE}\n\n"
57
51
  opt.banner << "Usage: #{APP_NAME} <options>"
58
52
  opt.separator('')
@@ -145,14 +139,14 @@ module Uirusu
145
139
  }
146
140
  end
147
141
 
148
- if ARGV.length != 0
149
- opt.parse!
150
- else
151
- puts opt.to_s + "\n"
152
- exit
142
+ if ARGV.length != 0
143
+ opts.parse!
144
+ else
145
+ puts opts.to_s + "\n"
146
+ exit
153
147
  end
154
- rescue OptionParser::MissingArgument => m
155
- puts opt.to_s + "\n"
148
+ rescue OptionParser::MissingArgument
149
+ puts opts.to_s + "\n"
156
150
  exit
157
151
  end
158
152
  end
@@ -163,8 +157,8 @@ module Uirusu
163
157
  f = File.expand_path(file)
164
158
 
165
159
  if File.exists?(f) == false
166
- File.open(f, 'w+') do |f|
167
- f.write("virustotal: \n api-key: \n timeout: 25\n\n")
160
+ File.open(f, 'w+') do |of|
161
+ of.write("virustotal: \n api-key: \n timeout: 25\n\n")
168
162
  end
169
163
  puts "[*] An empty #{f} has been created. Please edit and fill in the correct values."
170
164
  else
@@ -175,11 +169,28 @@ module Uirusu
175
169
  # Loads the .uirusu config file for the api key
176
170
  #
177
171
  def load_config (file=CONFIG_FILE)
172
+
173
+ @config = nil
174
+
178
175
  f = File.expand_path(file)
179
176
 
180
177
  if File.exists?(f)
181
178
  @config = YAML.load_file f
182
179
  else
180
+ if ENV['UIRUSU_VT_API_KEY']
181
+ @config = {}
182
+ @config['virustotal'] = {}
183
+ @config['virustotal']['api-key'] = ENV['UIRUSU_VT_API_KEY']
184
+
185
+ if ENV['UIRUSU_VT_TIMEOUT']
186
+ @config['virustotal']['timeout'] = ENV['UIRUSU_VT_TIMEOUT']
187
+ else
188
+ @config['virustotal']['timeout'] = 25
189
+ end
190
+ end
191
+ end
192
+
193
+ if @config == nil
183
194
  STDERR.puts "[!] #{CONFIG_FILE} does not exist. Please run #{APP_NAME} --create-config, to create it."
184
195
  exit
185
196
  end
@@ -216,8 +227,8 @@ module Uirusu
216
227
 
217
228
  if retries >= 0
218
229
  sleep 60
219
- retry
220
230
  retries = retries - 1
231
+ retry
221
232
  end
222
233
  end
223
234
 
@@ -228,28 +239,28 @@ module Uirusu
228
239
  # is requested to be rescanned.
229
240
  result_array = result.is_a?(Array) ? result : [ result ]
230
241
 
231
- result_array.collect do |result|
232
- if result['response_code'] == 1
233
- STDERR.puts "[*] Attempting to parse the results for: #{result['resource']}" if @options['verbose']
234
- results = mod.query_report(@config['virustotal']['api-key'], result['resource'])
242
+ result_array.collect do |r|
243
+ if r['response_code'] == 1
244
+ STDERR.puts "[*] Attempting to parse the results for: #{r['resource']}" if @options['verbose']
245
+ results = mod.query_report(@config['virustotal']['api-key'], r['resource'])
235
246
 
236
247
  while results['response_code'] != 1
237
248
  STDERR.puts "[*] File has not been analyized yet, waiting 60 seconds to try again" if @options['verbose']
238
249
  sleep 60
239
- results = mod.query_report(@config['virustotal']['api-key'], result['resource'])
250
+ results = mod.query_report(@config['virustotal']['api-key'], r['resource'])
240
251
  end
241
252
 
242
- return result['resource'], results
253
+ return r['resource'], results
243
254
 
244
- elsif result['response_code'] == 0 and @options['rescan']
245
- STDERR.puts "[!] Unknown Virustotal error for rescan of #{result['resource']}." if @options['verbose']
255
+ elsif r['response_code'] == 0 and @options['rescan']
256
+ STDERR.puts "[!] Unknown Virustotal error for rescan of #{r['resource']}." if @options['verbose']
246
257
  next
247
258
 
248
- elsif result['response_code'] == -1 and @options['rescan']
249
- STDERR.puts "[!] Virustotal does not have a sample of #{result['resource']}." if @options['verbose']
259
+ elsif r['response_code'] == -1 and @options['rescan']
260
+ STDERR.puts "[!] Virustotal does not have a sample of #{r['resource']}." if @options['verbose']
250
261
  next
251
262
 
252
- elsif result['response_code'] == -2
263
+ elsif r['response_code'] == -2
253
264
  STDERR.puts "[!] Virustotal limits exceeded, ***do not edit the timeout values.***"
254
265
  exit(1)
255
266
  else
@@ -260,8 +271,8 @@ module Uirusu
260
271
  STDERR.puts "[!] An error has occurred retrieving the report. Retrying 60 seconds up #{retries} retries. #{e.message}\n" if @options['verbose']
261
272
  if retries >= 0
262
273
  sleep 60
263
- retry
264
274
  retries = retries - 1
275
+ retry
265
276
  end
266
277
  end
267
278
  end
@@ -1,28 +1,22 @@
1
- # Copyright (c) 2012-2016 Arxopia LLC.
2
- # All rights reserved.
1
+ # Copyright (c) 2010-2016 Arxopia LLC.
3
2
  #
4
- # Redistribution and use in source and binary forms, with or without
5
- # modification, are permitted provided that the following conditions are met:
3
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ # of this software and associated documentation files (the "Software"), to deal
5
+ # in the Software without restriction, including without limitation the rights
6
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ # copies of the Software, and to permit persons to whom the Software is
8
+ # furnished to do so, subject to the following conditions:
6
9
  #
7
- # * Redistributions of source code must retain the above copyright
8
- # notice, this list of conditions and the following disclaimer.
9
- # * Redistributions in binary form must reproduce the above copyright
10
- # notice, this list of conditions and the following disclaimer in the
11
- # documentation and/or other materials provided with the distribution.
12
- # * Neither the name of the Arxopia LLC nor the names of its contributors
13
- # may be used to endorse or promote products derived from this software
14
- # without specific prior written permission.
10
+ # The above copyright notice and this permission notice shall be included in
11
+ # all copies or substantial portions of the Software.
15
12
  #
16
- # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17
- # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18
- # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19
- # DISCLAIMED. IN NO EVENT SHALL ARXOPIA LLC BE LIABLE FOR ANY DIRECT, INDIRECT,
20
- # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
21
- # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
22
- # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23
- # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
24
- # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
25
- # OF THE POSSIBILITY OF SUCH DAMAGE.
13
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ # FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE
16
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ # THE SOFTWARE.
26
20
 
27
21
  require 'pathname'
28
22
  require 'digest/md5'
@@ -55,7 +49,7 @@ module Uirusu
55
49
  digest = Digest::MD5.hexdigest(File.read(file))
56
50
  @hash_list << digest
57
51
 
58
- rescue Exception => e
52
+ rescue Exception
59
53
  puts "[!] Cannot read #{file}"
60
54
  end
61
55
  end
@@ -0,0 +1,28 @@
1
+ # Copyright (c) 2010-2016 Arxopia LLC.
2
+ #
3
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ # of this software and associated documentation files (the "Software"), to deal
5
+ # in the Software without restriction, including without limitation the rights
6
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ # copies of the Software, and to permit persons to whom the Software is
8
+ # furnished to do so, subject to the following conditions:
9
+ #
10
+ # The above copyright notice and this permission notice shall be included in
11
+ # all copies or substantial portions of the Software.
12
+ #
13
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ # FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE
16
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ # THE SOFTWARE.
20
+
21
+ module Uirusu
22
+ APP_NAME = "uirusu"
23
+ VERSION = "1.0.1"
24
+ HOME_PAGE = "http://arxopia.github.io/uirusu"
25
+ AUTHOR = "Jacob Hammack"
26
+ EMAIL = "jacob.hammack@arxopia.com"
27
+ GITHUB = "http://github.com/arxopia/uirusu"
28
+ end
@@ -1,28 +1,22 @@
1
- # Copyright (c) 2012-2016 Arxopia LLC.
2
- # All rights reserved.
1
+ # Copyright (c) 2010-2016 Arxopia LLC.
3
2
  #
4
- # Redistribution and use in source and binary forms, with or without
5
- # modification, are permitted provided that the following conditions are met:
3
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ # of this software and associated documentation files (the "Software"), to deal
5
+ # in the Software without restriction, including without limitation the rights
6
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ # copies of the Software, and to permit persons to whom the Software is
8
+ # furnished to do so, subject to the following conditions:
6
9
  #
7
- # * Redistributions of source code must retain the above copyright
8
- # notice, this list of conditions and the following disclaimer.
9
- # * Redistributions in binary form must reproduce the above copyright
10
- # notice, this list of conditions and the following disclaimer in the
11
- # documentation and/or other materials provided with the distribution.
12
- # * Neither the name of the Arxopia LLC nor the names of its contributors
13
- # may be used to endorse or promote products derived from this software
14
- # without specific prior written permission.
10
+ # The above copyright notice and this permission notice shall be included in
11
+ # all copies or substantial portions of the Software.
15
12
  #
16
- # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17
- # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18
- # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19
- # DISCLAIMED. IN NO EVENT SHALL ARXOPIA LLC BE LIABLE FOR ANY DIRECT, INDIRECT,
20
- # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
21
- # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
22
- # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23
- # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
24
- # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
25
- # OF THE POSSIBILITY OF SUCH DAMAGE.
13
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ # FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE
16
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ # THE SOFTWARE.
26
20
 
27
21
  module Uirusu
28
22
  # Module for submiting comments to Virustotal.com resources using the
@@ -1,28 +1,22 @@
1
- # Copyright (c) 2012-2016 Arxopia LLC.
2
- # All rights reserved.
1
+ # Copyright (c) 2010-2016 Arxopia LLC.
3
2
  #
4
- # Redistribution and use in source and binary forms, with or without
5
- # modification, are permitted provided that the following conditions are met:
3
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ # of this software and associated documentation files (the "Software"), to deal
5
+ # in the Software without restriction, including without limitation the rights
6
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ # copies of the Software, and to permit persons to whom the Software is
8
+ # furnished to do so, subject to the following conditions:
6
9
  #
7
- # * Redistributions of source code must retain the above copyright
8
- # notice, this list of conditions and the following disclaimer.
9
- # * Redistributions in binary form must reproduce the above copyright
10
- # notice, this list of conditions and the following disclaimer in the
11
- # documentation and/or other materials provided with the distribution.
12
- # * Neither the name of the Arxopia LLC nor the names of its contributors
13
- # may be used to endorse or promote products derived from this software
14
- # without specific prior written permission.
10
+ # The above copyright notice and this permission notice shall be included in
11
+ # all copies or substantial portions of the Software.
15
12
  #
16
- # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17
- # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18
- # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19
- # DISCLAIMED. IN NO EVENT SHALL ARXOPIA LLC BE LIABLE FOR ANY DIRECT, INDIRECT,
20
- # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
21
- # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
22
- # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23
- # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
24
- # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
25
- # OF THE POSSIBILITY OF SUCH DAMAGE.
13
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ # FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE
16
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ # THE SOFTWARE.
26
20
 
27
21
  module Uirusu
28
22
 
@@ -1,28 +1,22 @@
1
- # Copyright (c) 2012-2016 Arxopia LLC.
2
- # All rights reserved.
1
+ # Copyright (c) 2010-2016 Arxopia LLC.
3
2
  #
4
- # Redistribution and use in source and binary forms, with or without
5
- # modification, are permitted provided that the following conditions are met:
3
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ # of this software and associated documentation files (the "Software"), to deal
5
+ # in the Software without restriction, including without limitation the rights
6
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ # copies of the Software, and to permit persons to whom the Software is
8
+ # furnished to do so, subject to the following conditions:
6
9
  #
7
- # * Redistributions of source code must retain the above copyright
8
- # notice, this list of conditions and the following disclaimer.
9
- # * Redistributions in binary form must reproduce the above copyright
10
- # notice, this list of conditions and the following disclaimer in the
11
- # documentation and/or other materials provided with the distribution.
12
- # * Neither the name of the Arxopia LLC nor the names of its contributors
13
- # may be used to endorse or promote products derived from this software
14
- # without specific prior written permission.
10
+ # The above copyright notice and this permission notice shall be included in
11
+ # all copies or substantial portions of the Software.
15
12
  #
16
- # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17
- # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18
- # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19
- # DISCLAIMED. IN NO EVENT SHALL ARXOPIA LLC BE LIABLE FOR ANY DIRECT, INDIRECT,
20
- # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
21
- # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
22
- # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23
- # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
24
- # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
25
- # OF THE POSSIBILITY OF SUCH DAMAGE.
13
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ # FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE
16
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ # THE SOFTWARE.
26
20
 
27
21
  module Uirusu
28
22
 
@@ -66,7 +60,7 @@ module Uirusu
66
60
  abort "[!] Invalid API KEY! Please correct this! Check ~/.uirusu"
67
61
  else
68
62
  permalink = result['permalink']
69
- date = result['scan_date']
63
+ scan_date = result['scan_date']
70
64
  md5 = result['md5']
71
65
  sha1 = result['sha1']
72
66
  sha256 = result['sha256']
@@ -88,6 +82,7 @@ module Uirusu
88
82
  res[:result] = value['result']
89
83
  end
90
84
 
85
+ res[:scan_date] = scan_date
91
86
  res[:update] = value['update']
92
87
  res[:permalink] = permalink unless permalink == nil
93
88
 
@@ -1,28 +1,22 @@
1
- # Copyright (c) 2012-2016 Arxopia LLC.
2
- # All rights reserved.
1
+ # Copyright (c) 2010-2016 Arxopia LLC.
3
2
  #
4
- # Redistribution and use in source and binary forms, with or without
5
- # modification, are permitted provided that the following conditions are met:
3
+ # Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ # of this software and associated documentation files (the "Software"), to deal
5
+ # in the Software without restriction, including without limitation the rights
6
+ # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ # copies of the Software, and to permit persons to whom the Software is
8
+ # furnished to do so, subject to the following conditions:
6
9
  #
7
- # * Redistributions of source code must retain the above copyright
8
- # notice, this list of conditions and the following disclaimer.
9
- # * Redistributions in binary form must reproduce the above copyright
10
- # notice, this list of conditions and the following disclaimer in the
11
- # documentation and/or other materials provided with the distribution.
12
- # * Neither the name of the Arxopia LLC nor the names of its contributors
13
- # may be used to endorse or promote products derived from this software
14
- # without specific prior written permission.
10
+ # The above copyright notice and this permission notice shall be included in
11
+ # all copies or substantial portions of the Software.
15
12
  #
16
- # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
17
- # ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
18
- # WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19
- # DISCLAIMED. IN NO EVENT SHALL ARXOPIA LLC BE LIABLE FOR ANY DIRECT, INDIRECT,
20
- # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
21
- # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA,
22
- # OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
23
- # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
24
- # OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
25
- # OF THE POSSIBILITY OF SUCH DAMAGE.
13
+ # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ # FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT. IN NO EVENT SHALL THE
16
+ # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ # THE SOFTWARE.
26
20
 
27
21
  module Uirusu
28
22
  #
@@ -27,29 +27,32 @@
27
27
  base = __FILE__
28
28
  $:.unshift(File.join(File.dirname(base), 'lib'))
29
29
 
30
- require 'uirusu'
30
+ require 'uirusu/version'
31
31
 
32
32
  Gem::Specification.new do |s|
33
33
  s.name = Uirusu::APP_NAME
34
34
  s.version = Uirusu::VERSION
35
35
  s.homepage = Uirusu::HOME_PAGE
36
- s.summary = Uirusu::APP_NAME
37
- s.description = "uirusu is library for interacting with Virustotal.org"
38
- s.license = "BSD"
39
-
40
36
  s.author = Uirusu::AUTHOR
41
37
  s.email = Uirusu::EMAIL
42
38
 
39
+ s.summary = Uirusu::APP_NAME
40
+ s.description = "uirusu is tool and REST library for interacting with Virustotal.org"
41
+ s.license = "MIT"
42
+
43
43
  s.files = Dir['[A-Z]*'] + Dir['lib/**/*'] + ['uirusu.gemspec']
44
- s.default_executable = 'uirusu'
45
- s.executables = ['uirusu']
44
+ s.default_executable = Uirusu::APP_NAME
45
+ s.executables = ["#{Uirusu::APP_NAME}"]
46
46
  s.require_paths = ["lib"]
47
47
 
48
- s.required_ruby_version = '>= 2.0.0'
49
-
50
48
  s.has_rdoc = 'yard'
51
49
  s.extra_rdoc_files = ["README.markdown", "LICENSE", "docs/NEWS.markdown", "docs/TODO.markdown"]
52
50
 
51
+ s.add_runtime_dependency 'rake', '~> 11.2', '>= 11.2.2'
53
52
  s.add_runtime_dependency 'json', '~> 1.8', '>= 1.8.3'
54
- s.add_runtime_dependency 'rest-client', '~> 1.6', '>= 1.6.9'
53
+ s.add_runtime_dependency 'rest-client', '~> 1.8', '>= 1.8.0'
54
+
55
+ s.add_development_dependency 'yard', '~> 0.8', '>= 0.8.7.6'
56
+ s.add_development_dependency 'minitest', '~> 5.0', '>= 5.9'
57
+ s.add_development_dependency 'test-unit', '~> 3.2', ">= 3.2"
55
58
  end
metadata CHANGED
@@ -1,15 +1,35 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: uirusu
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jacob Hammack
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-12-01 00:00:00.000000000 Z
11
+ date: 2016-07-02 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rake
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '11.2'
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 11.2.2
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - "~>"
28
+ - !ruby/object:Gem::Version
29
+ version: '11.2'
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: 11.2.2
13
33
  - !ruby/object:Gem::Dependency
14
34
  name: json
15
35
  requirement: !ruby/object:Gem::Requirement
@@ -36,22 +56,82 @@ dependencies:
36
56
  requirements:
37
57
  - - "~>"
38
58
  - !ruby/object:Gem::Version
39
- version: '1.6'
59
+ version: '1.8'
40
60
  - - ">="
41
61
  - !ruby/object:Gem::Version
42
- version: 1.6.9
62
+ version: 1.8.0
43
63
  type: :runtime
44
64
  prerelease: false
45
65
  version_requirements: !ruby/object:Gem::Requirement
46
66
  requirements:
47
67
  - - "~>"
48
68
  - !ruby/object:Gem::Version
49
- version: '1.6'
69
+ version: '1.8'
70
+ - - ">="
71
+ - !ruby/object:Gem::Version
72
+ version: 1.8.0
73
+ - !ruby/object:Gem::Dependency
74
+ name: yard
75
+ requirement: !ruby/object:Gem::Requirement
76
+ requirements:
77
+ - - "~>"
78
+ - !ruby/object:Gem::Version
79
+ version: '0.8'
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: 0.8.7.6
83
+ type: :development
84
+ prerelease: false
85
+ version_requirements: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '0.8'
90
+ - - ">="
91
+ - !ruby/object:Gem::Version
92
+ version: 0.8.7.6
93
+ - !ruby/object:Gem::Dependency
94
+ name: minitest
95
+ requirement: !ruby/object:Gem::Requirement
96
+ requirements:
97
+ - - "~>"
98
+ - !ruby/object:Gem::Version
99
+ version: '5.0'
100
+ - - ">="
101
+ - !ruby/object:Gem::Version
102
+ version: '5.9'
103
+ type: :development
104
+ prerelease: false
105
+ version_requirements: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - "~>"
108
+ - !ruby/object:Gem::Version
109
+ version: '5.0'
50
110
  - - ">="
51
111
  - !ruby/object:Gem::Version
52
- version: 1.6.9
53
- description: uirusu is library for interacting with Virustotal.org
54
- email: uirusu@arxopia.com
112
+ version: '5.9'
113
+ - !ruby/object:Gem::Dependency
114
+ name: test-unit
115
+ requirement: !ruby/object:Gem::Requirement
116
+ requirements:
117
+ - - "~>"
118
+ - !ruby/object:Gem::Version
119
+ version: '3.2'
120
+ - - ">="
121
+ - !ruby/object:Gem::Version
122
+ version: '3.2'
123
+ type: :development
124
+ prerelease: false
125
+ version_requirements: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - "~>"
128
+ - !ruby/object:Gem::Version
129
+ version: '3.2'
130
+ - - ">="
131
+ - !ruby/object:Gem::Version
132
+ version: '3.2'
133
+ description: uirusu is tool and REST library for interacting with Virustotal.org
134
+ email: jacob.hammack@arxopia.com
55
135
  executables:
56
136
  - uirusu
57
137
  extensions: []
@@ -72,6 +152,7 @@ files:
72
152
  - lib/uirusu.rb
73
153
  - lib/uirusu/cli/application.rb
74
154
  - lib/uirusu/scanner.rb
155
+ - lib/uirusu/version.rb
75
156
  - lib/uirusu/vtcomment.rb
76
157
  - lib/uirusu/vtfile.rb
77
158
  - lib/uirusu/vtresult.rb
@@ -79,7 +160,7 @@ files:
79
160
  - uirusu.gemspec
80
161
  homepage: http://arxopia.github.io/uirusu
81
162
  licenses:
82
- - BSD
163
+ - MIT
83
164
  metadata: {}
84
165
  post_install_message:
85
166
  rdoc_options: []
@@ -89,7 +170,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
89
170
  requirements:
90
171
  - - ">="
91
172
  - !ruby/object:Gem::Version
92
- version: 2.0.0
173
+ version: '0'
93
174
  required_rubygems_version: !ruby/object:Gem::Requirement
94
175
  requirements:
95
176
  - - ">="
@@ -97,8 +178,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
97
178
  version: '0'
98
179
  requirements: []
99
180
  rubyforge_project:
100
- rubygems_version: 2.4.5.1
181
+ rubygems_version: 2.6.6
101
182
  signing_key:
102
183
  specification_version: 4
103
184
  summary: uirusu
104
185
  test_files: []
186
+ has_rdoc: yard