shikashi 0.5.2 → 0.5.3
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.
- data/CHANGELOG +2 -0
- data/Rakefile +2 -2
- data/lib/shikashi/sandbox.rb +7 -1
- metadata +7 -7
data/CHANGELOG
CHANGED
data/Rakefile
CHANGED
@@ -6,13 +6,13 @@ require 'rake/testtask'
|
|
6
6
|
|
7
7
|
spec = Gem::Specification.new do |s|
|
8
8
|
s.name = 'shikashi'
|
9
|
-
s.version = '0.5.
|
9
|
+
s.version = '0.5.3'
|
10
10
|
s.author = 'Dario Seminara'
|
11
11
|
s.email = 'robertodarioseminara@gmail.com'
|
12
12
|
s.platform = Gem::Platform::RUBY
|
13
13
|
s.summary = 'shikashi is a ruby sandbox that permits the execution of "unprivileged" scripts by defining the permitted methods and constants the scripts can invoke with a white list logic'
|
14
14
|
s.homepage = "http://github.com/tario/shikashi"
|
15
|
-
s.add_dependency "evalhook", ">= 0.5.
|
15
|
+
s.add_dependency "evalhook", ">= 0.5.5"
|
16
16
|
s.add_dependency "getsource", ">= 0.1.0"
|
17
17
|
s.has_rdoc = true
|
18
18
|
s.extra_rdoc_files = [ 'README' ]
|
data/lib/shikashi/sandbox.rb
CHANGED
@@ -217,7 +217,13 @@ module Shikashi
|
|
217
217
|
if method_name
|
218
218
|
|
219
219
|
source = self.get_caller
|
220
|
-
|
220
|
+
m = begin
|
221
|
+
klass.instance_method(method_name)
|
222
|
+
rescue
|
223
|
+
method_name = :method_missing
|
224
|
+
klass.instance_method(:method_missing)
|
225
|
+
end
|
226
|
+
dest_source = m.body.file
|
221
227
|
|
222
228
|
privileges = nil
|
223
229
|
if source != dest_source then
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: shikashi
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,22 +9,22 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
12
|
+
date: 2013-09-14 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: evalhook
|
16
|
-
requirement: &
|
16
|
+
requirement: &72120880 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: 0.5.
|
21
|
+
version: 0.5.5
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *72120880
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: getsource
|
27
|
-
requirement: &
|
27
|
+
requirement: &72120240 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,7 +32,7 @@ dependencies:
|
|
32
32
|
version: 0.1.0
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *72120240
|
36
36
|
description:
|
37
37
|
email: robertodarioseminara@gmail.com
|
38
38
|
executables: []
|