arachni-rpc-em 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.
@@ -0,0 +1,11 @@
1
+ require_relative 'server'
2
+
3
+ cwd = File.expand_path( File.dirname( __FILE__ ) )
4
+ opts = rpc_opts.merge(
5
+ :port => 7332,
6
+ :ssl_ca => cwd + '/../pems/cacert.pem',
7
+ :ssl_pkey => cwd + '/../pems/server/key.pem',
8
+ :ssl_cert => cwd + '/../pems/server/cert.pem'
9
+ )
10
+
11
+ start_server( opts )[1].join
data/spec/spec.opts ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --backtrace
@@ -0,0 +1,46 @@
1
+
2
+ require 'timeout'
3
+
4
+ def cwd
5
+ File.expand_path( File.dirname( __FILE__ ) )
6
+ end
7
+
8
+ require File.join( cwd, '../lib/arachni/rpc/', 'em' )
9
+ require File.join( cwd, 'servers', 'server' )
10
+
11
+ def rpc_opts
12
+ {
13
+ :host => 'localhost',
14
+ :port => 7331,
15
+ :token => 'superdupersecret',
16
+ :serializer => Marshal,
17
+ }
18
+ end
19
+
20
+ def rpc_opts_with_ssl_primitives
21
+ rpc_opts.merge(
22
+ :port => 7332,
23
+ :ssl_ca => cwd + '/pems/cacert.pem',
24
+ :ssl_pkey => cwd + '/pems/client/key.pem',
25
+ :ssl_cert => cwd + '/pems/client/cert.pem'
26
+ )
27
+ end
28
+
29
+ def rpc_opts_with_invalid_ssl_primitives
30
+ rpc_opts_with_ssl_primitives.merge(
31
+ :ssl_pkey => cwd + '/pems/client/foo-key.pem',
32
+ :ssl_cert => cwd + '/pems/client/foo-cert.pem'
33
+ )
34
+ end
35
+
36
+ def rpc_opts_with_mixed_ssl_primitives
37
+ rpc_opts_with_ssl_primitives.merge(
38
+ :ssl_pkey => cwd + '/pems/client/key.pem',
39
+ :ssl_cert => cwd + '/pems/client/foo-cert.pem'
40
+ )
41
+ end
42
+
43
+
44
+ def start_client( opts )
45
+ Arachni::RPC::EM::Client.new( opts )
46
+ end
metadata ADDED
@@ -0,0 +1,134 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: arachni-rpc-em
3
+ version: !ruby/object:Gem::Version
4
+ version: '0.1'
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Tasos Laskos
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2011-12-15 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: eventmachine
16
+ requirement: &7809340 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: 1.0.0.beta.4
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: *7809340
25
+ - !ruby/object:Gem::Dependency
26
+ name: em-synchrony
27
+ requirement: &7808820 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: 1.0.0
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: *7808820
36
+ - !ruby/object:Gem::Dependency
37
+ name: arachni-rpc
38
+ requirement: &7808260 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - =
42
+ - !ruby/object:Gem::Version
43
+ version: '0.1'
44
+ type: :runtime
45
+ prerelease: false
46
+ version_requirements: *7808260
47
+ description: ! " EventMachine-based client and server implementation of Arachni-RPC
48
+ supporting\n TLS encryption, asynchronous and synchronous requests and\n
49
+ \ capable of handling remote asynchronous calls that require a block.\n"
50
+ email: tasos.laskos@gmail.com
51
+ executables: []
52
+ extensions: []
53
+ extra_rdoc_files:
54
+ - README.md
55
+ - LICENSE.md
56
+ - CHANGELOG.md
57
+ files:
58
+ - README.md
59
+ - Rakefile
60
+ - LICENSE.md
61
+ - CHANGELOG.md
62
+ - lib/arachni/rpc/em.rb
63
+ - lib/arachni/rpc/em/protocol.rb
64
+ - lib/arachni/rpc/em/ssl.rb
65
+ - lib/arachni/rpc/em/version.rb
66
+ - lib/arachni/rpc/em/connection_utilities.rb
67
+ - lib/arachni/rpc/em/em.rb
68
+ - lib/arachni/rpc/em/client.rb
69
+ - lib/arachni/rpc/em/server.rb
70
+ - examples/client.rb
71
+ - examples/server.rb
72
+ - examples/client.EM.run.rb
73
+ - spec/servers/with_ssl_primitives.rb
74
+ - spec/servers/basic.rb
75
+ - spec/servers/server.rb
76
+ - spec/spec_helper.rb
77
+ - spec/arachni/rpc/em/server_spec.rb
78
+ - spec/arachni/rpc/em/ssl_spec.rb
79
+ - spec/arachni/rpc/em/em_spec.rb
80
+ - spec/arachni/rpc/em/client_spec.rb
81
+ - spec/pems/cacert.pem
82
+ - spec/pems/server/key.pem
83
+ - spec/pems/server/cert.pem
84
+ - spec/pems/client/key.pem
85
+ - spec/pems/client/foo-cert.pem
86
+ - spec/pems/client/foo-key.pem
87
+ - spec/pems/client/cert.pem
88
+ - spec/spec.opts
89
+ homepage: https://github.com/Arachni/arachni-rpc
90
+ licenses: []
91
+ post_install_message:
92
+ rdoc_options:
93
+ - --charset=UTF-8
94
+ require_paths:
95
+ - lib
96
+ required_ruby_version: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ! '>='
100
+ - !ruby/object:Gem::Version
101
+ version: '0'
102
+ required_rubygems_version: !ruby/object:Gem::Requirement
103
+ none: false
104
+ requirements:
105
+ - - ! '>='
106
+ - !ruby/object:Gem::Version
107
+ version: '0'
108
+ requirements: []
109
+ rubyforge_project:
110
+ rubygems_version: 1.8.10
111
+ signing_key:
112
+ specification_version: 3
113
+ summary: The RPC client and server used by the Arachni WebAppSec scanner Grid.
114
+ test_files:
115
+ - examples/client.rb
116
+ - examples/server.rb
117
+ - examples/client.EM.run.rb
118
+ - spec/servers/with_ssl_primitives.rb
119
+ - spec/servers/basic.rb
120
+ - spec/servers/server.rb
121
+ - spec/spec_helper.rb
122
+ - spec/arachni/rpc/em/server_spec.rb
123
+ - spec/arachni/rpc/em/ssl_spec.rb
124
+ - spec/arachni/rpc/em/em_spec.rb
125
+ - spec/arachni/rpc/em/client_spec.rb
126
+ - spec/pems/cacert.pem
127
+ - spec/pems/server/key.pem
128
+ - spec/pems/server/cert.pem
129
+ - spec/pems/client/key.pem
130
+ - spec/pems/client/foo-cert.pem
131
+ - spec/pems/client/foo-key.pem
132
+ - spec/pems/client/cert.pem
133
+ - spec/spec.opts
134
+ has_rdoc: