clamby 1.0.3 → 1.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: de1411f20e529bdebaaa6f32b34863c06abc38f0
4
- data.tar.gz: d6e542a17e3dcec0939d5fd94017b9892613b581
3
+ metadata.gz: 54d701d8ec2b45e261d3dbefe597ab895b9bce15
4
+ data.tar.gz: 8e8525b5ab0d48afc23481b784ae27b806aca770
5
5
  SHA512:
6
- metadata.gz: 64d0b0e23f7a8dd5fd42c839e6f1854d73e55fbb72d4a7d22a31ed5db1a63ce3f95d760e7dcc506a49238a51acebae7ba54de65a4b9cce18378922bf45aeaf84
7
- data.tar.gz: 58a13ecdbd9068dd7052b4ba1f806592234c2c751b6e8e93702d4a7b851980fc5f5e515f30c563b3508d1185e68d0e310eaf57f8925f0993de4bcce787a9dce6
6
+ metadata.gz: adddc3d8c9b27140905c7dedcfc4cf2f372e88afc8baa1da876b72ed65fbff929b66c85afda0fbd6eedf0be0ccf3edd93f2c6fd939c8050c8daf8368238c9213
7
+ data.tar.gz: cf9f421d3303f4eef88b3a5538bd732c603cd1f9cba08fc9f8c46e68e8a12357811acac4ec2aaceceaaf1cd4553d4e5963a18525834de6134d636f32f85f2ff5
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --format progress
data/CHANGELOG.md ADDED
@@ -0,0 +1,45 @@
1
+ #v1.0.4
2
+ - Added tests. This WILL download a file with a virus signature. It is a safe file, but is used for the purposes of testing the detection of a virus. Regardless, use caution when running rspec as this could be potentially harmful (doubtful, but be warned).
3
+
4
+ ```ruby
5
+ .ClamAV 0.98.1/18563/Sun Mar 9 17:39:31 2014
6
+ .FILE NOT FOUND on 2014-03-10 21:35:44 -0400: BAD_FILE.md
7
+ .ClamAV 0.98.1/18563/Sun Mar 9 17:39:31 2014
8
+ README.md: OK
9
+ .--2014-03-10 21:35:50-- http://www.eicar.org/download/eicar.com
10
+ Resolving www.eicar.org... 188.40.238.250
11
+ Connecting to www.eicar.org|188.40.238.250|:80... connected.
12
+ HTTP request sent, awaiting response... 200 OK
13
+ Length: 68 [application/octet-stream]
14
+ Saving to: 'eicar.com'
15
+
16
+ 100%[=================>] 68 --.-K/s in 0s
17
+
18
+ 2014-03-10 21:35:50 (13.0 MB/s) - 'eicar.com' saved [68/68]
19
+
20
+ ClamAV 0.98.1/18563/Sun Mar 9 17:39:31 2014
21
+ eicar.com: Eicar-Test-Signature FOUND
22
+ ClamAV 0.98.1/18563/Sun Mar 9 17:39:31 2014
23
+ eicar.com: Eicar-Test-Signature FOUND
24
+ VIRUS DETECTED on 2014-03-10 21:36:02 -0400: eicar.com
25
+ .
26
+
27
+ Finished in 17.79 seconds
28
+ 5 examples, 0 failures
29
+ ````
30
+
31
+ - Changed `scanner_exists?` method to check `clamscan -V` for version instead of just `clamscan` which was causing a virus scan on the local folder. This ended up throwing false checks since I had a virus test file in the root of the directory.
32
+
33
+ #v1.0.3
34
+ - Added exceptions
35
+ - New configuration options
36
+
37
+ ```ruby
38
+ Clamby.configure({
39
+ :check => false,
40
+ :error_clamscan_missing => false,
41
+ :error_file_missing => false,
42
+ :error_file_virus => false
43
+ })
44
+
45
+ ```
data/clamby.gemspec CHANGED
@@ -20,4 +20,5 @@ Gem::Specification.new do |spec|
20
20
 
21
21
  spec.add_development_dependency "bundler", "~> 1.5"
22
22
  spec.add_development_dependency "rake"
23
+ spec.add_development_dependency "rspec"
23
24
  end
data/lib/clamby.rb CHANGED
@@ -35,7 +35,7 @@ module Clamby
35
35
 
36
36
  def self.scanner_exists?
37
37
  if @config[:check]
38
- scanner = system('clamscan')
38
+ scanner = system('clamscan -V')
39
39
  if not scanner
40
40
  if @config[:error_clamscan_missing]
41
41
  raise Exceptions::ClamscanMissing.new("Clamscan application not found. Check your installation and path.")
@@ -1,3 +1,3 @@
1
1
  module Clamby
2
- VERSION = "1.0.3"
2
+ VERSION = "1.0.4"
3
3
  end
@@ -0,0 +1,34 @@
1
+ require 'spec_helper'
2
+
3
+ good_path = 'README.md'
4
+ bad_path = 'BAD_FILE.md'
5
+
6
+ describe Clamby do
7
+ it "should find files." do
8
+ expect(Clamby.file_exists?(good_path)).to be true
9
+ end
10
+
11
+ it "should find clamscan" do
12
+ expect(Clamby.scanner_exists?).to be true
13
+ end
14
+
15
+ it "should not find files." do
16
+ Clamby.configure({:error_file_missing => true})
17
+ expect{Clamby.file_exists?(bad_path)}.to raise_exception(Exceptions::FileNotFound)
18
+ Clamby.configure({:error_file_missing => false})
19
+ expect(Clamby.file_exists?(bad_path)).to be false
20
+ end
21
+
22
+ it "should scan file as safe" do
23
+ expect(Clamby.scan(good_path)).to be true
24
+ end
25
+
26
+ it "should scan file as dangerous" do
27
+ `wget http://www.eicar.org/download/eicar.com`
28
+ Clamby.configure({:error_file_virus => true})
29
+ expect{Clamby.scan('eicar.com')}.to raise_exception(Exceptions::VirusDetected)
30
+ Clamby.configure({:error_file_virus => false})
31
+ expect(Clamby.scan('eicar.com')).to be false
32
+ File.delete('eicar.com')
33
+ end
34
+ end
@@ -0,0 +1,8 @@
1
+ require 'bundler/setup'
2
+ Bundler.setup
3
+
4
+ require 'clamby' # and any other gems you need
5
+
6
+ RSpec.configure do |config|
7
+ # some (optional) config here
8
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: clamby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.3
4
+ version: 1.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - kobaltz
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-03-10 00:00:00.000000000 Z
11
+ date: 2014-03-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
41
55
  description: Clamby allows users to scan files uploaded with Paperclip or Carrierwave.
42
56
  If a file has a virus, then you can delete this file and discard it without causing
43
57
  harm to other users.
@@ -47,8 +61,9 @@ executables: []
47
61
  extensions: []
48
62
  extra_rdoc_files: []
49
63
  files:
50
- - ".DS_Store"
51
64
  - ".gitignore"
65
+ - ".rspec"
66
+ - CHANGELOG.md
52
67
  - Gemfile
53
68
  - LICENSE.txt
54
69
  - README.md
@@ -57,6 +72,8 @@ files:
57
72
  - lib/clamby.rb
58
73
  - lib/clamby/exception.rb
59
74
  - lib/clamby/version.rb
75
+ - spec/clamby_spec.rb
76
+ - spec/spec_helper.rb
60
77
  homepage: ''
61
78
  licenses:
62
79
  - MIT
@@ -81,4 +98,6 @@ rubygems_version: 2.2.2
81
98
  signing_key:
82
99
  specification_version: 4
83
100
  summary: Scan file uploads with ClamAV
84
- test_files: []
101
+ test_files:
102
+ - spec/clamby_spec.rb
103
+ - spec/spec_helper.rb
data/.DS_Store DELETED
Binary file