oauth 0.5.0 → 0.5.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/README.rdoc +22 -9
- data/bin/oauth +8 -2
- data/lib/oauth.rb +2 -2
- data/lib/oauth/cli.rb +37 -359
- data/lib/oauth/cli/authorize_command.rb +71 -0
- data/lib/oauth/cli/base_command.rb +208 -0
- data/lib/oauth/cli/help_command.rb +22 -0
- data/lib/oauth/cli/query_command.rb +25 -0
- data/lib/oauth/cli/sign_command.rb +81 -0
- data/lib/oauth/cli/version_command.rb +7 -0
- data/lib/oauth/client/action_controller_request.rb +1 -1
- data/lib/oauth/client/em_http.rb +0 -1
- data/lib/oauth/client/helper.rb +8 -2
- data/lib/oauth/client/net_http.rb +0 -1
- data/lib/oauth/consumer.rb +69 -13
- data/lib/oauth/helper.rb +10 -6
- data/lib/oauth/request_proxy/action_controller_request.rb +2 -2
- data/lib/oauth/request_proxy/action_dispatch_request.rb +7 -0
- data/lib/oauth/request_proxy/base.rb +6 -2
- data/lib/oauth/tokens/request_token.rb +14 -7
- data/lib/oauth/version.rb +1 -1
- metadata +93 -96
- data/lib/oauth/core_ext.rb +0 -31
- data/test/cases/oauth_case.rb +0 -19
- data/test/cases/spec/1_0-final/test_construct_request_url.rb +0 -62
- data/test/cases/spec/1_0-final/test_normalize_request_parameters.rb +0 -88
- data/test/cases/spec/1_0-final/test_parameter_encodings.rb +0 -86
- data/test/cases/spec/1_0-final/test_signature_base_strings.rb +0 -77
- data/test/integration/consumer_test.rb +0 -307
- data/test/test_access_token.rb +0 -26
- data/test/test_action_controller_request_proxy.rb +0 -157
- data/test/test_consumer.rb +0 -226
- data/test/test_curb_request_proxy.rb +0 -77
- data/test/test_em_http_client.rb +0 -80
- data/test/test_em_http_request_proxy.rb +0 -115
- data/test/test_helper.rb +0 -33
- data/test/test_hmac_sha1.rb +0 -20
- data/test/test_net_http_client.rb +0 -298
- data/test/test_net_http_request_proxy.rb +0 -72
- data/test/test_oauth_helper.rb +0 -94
- data/test/test_rack_request_proxy.rb +0 -40
- data/test/test_request_token.rb +0 -56
- data/test/test_rest_client_request_proxy.rb +0 -81
- data/test/test_rsa_sha1.rb +0 -59
- data/test/test_server.rb +0 -41
- data/test/test_signature.rb +0 -15
- data/test/test_signature_base.rb +0 -32
- data/test/test_signature_hmac_sha1.rb +0 -40
- data/test/test_signature_plain_text.rb +0 -31
- data/test/test_token.rb +0 -14
- data/test/test_typhoeus_request_proxy.rb +0 -101
data/lib/oauth/consumer.rb
CHANGED
@@ -8,11 +8,21 @@ require 'cgi'
|
|
8
8
|
module OAuth
|
9
9
|
class Consumer
|
10
10
|
# determine the certificate authority path to verify SSL certs
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
11
|
+
if ENV['SSL_CERT_FILE']
|
12
|
+
if File.exist?(ENV['SSL_CERT_FILE'])
|
13
|
+
CA_FILE = ENV['SSL_CERT_FILE']
|
14
|
+
else
|
15
|
+
raise "The SSL CERT provided does not exist."
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
if !defined?(CA_FILE)
|
20
|
+
CA_FILES = %W(/etc/ssl/certs/ca-certificates.crt /etc/pki/tls/certs/ca-bundle.crt /usr/share/curl/curl-ca-bundle.crt)
|
21
|
+
CA_FILES.each do |ca_file|
|
22
|
+
if File.exist?(ca_file)
|
23
|
+
CA_FILE = ca_file
|
24
|
+
break
|
25
|
+
end
|
16
26
|
end
|
17
27
|
end
|
18
28
|
CA_FILE = nil unless defined?(CA_FILE)
|
@@ -23,6 +33,7 @@ module OAuth
|
|
23
33
|
|
24
34
|
# default paths on site. These are the same as the defaults set up by the generators
|
25
35
|
:request_token_path => '/oauth/request_token',
|
36
|
+
:authenticate_path => '/oauth/authenticate',
|
26
37
|
:authorize_path => '/oauth/authorize',
|
27
38
|
:access_token_path => '/oauth/access_token',
|
28
39
|
|
@@ -43,6 +54,13 @@ module OAuth
|
|
43
54
|
# Add a custom ca_file for consumer
|
44
55
|
# :ca_file => '/etc/certs.pem'
|
45
56
|
|
57
|
+
# Possible values:
|
58
|
+
#
|
59
|
+
# nil, false - no debug output
|
60
|
+
# true - uses $stdout
|
61
|
+
# some_value - uses some_value
|
62
|
+
:debug_output => nil,
|
63
|
+
|
46
64
|
:oauth_version => "1.0"
|
47
65
|
}
|
48
66
|
|
@@ -87,6 +105,18 @@ module OAuth
|
|
87
105
|
@http_method ||= @options[:http_method] || :post
|
88
106
|
end
|
89
107
|
|
108
|
+
def debug_output
|
109
|
+
@debug_output ||= begin
|
110
|
+
case @options[:debug_output]
|
111
|
+
when nil, false
|
112
|
+
when true
|
113
|
+
$stdout
|
114
|
+
else
|
115
|
+
@options[:debug_output]
|
116
|
+
end
|
117
|
+
end
|
118
|
+
end
|
119
|
+
|
90
120
|
# The HTTP object for the site. The HTTP Object is what you get when you do Net::HTTP.new
|
91
121
|
def http
|
92
122
|
@http ||= create_http
|
@@ -210,8 +240,15 @@ module OAuth
|
|
210
240
|
end
|
211
241
|
when (300..399)
|
212
242
|
# this is a redirect
|
213
|
-
uri = URI.parse(response
|
214
|
-
|
243
|
+
uri = URI.parse(response['location'])
|
244
|
+
our_uri = URI.parse(site)
|
245
|
+
|
246
|
+
if uri.path == path && our_uri.host != uri.host
|
247
|
+
options[:site] = "#{uri.scheme}://#{uri.host}"
|
248
|
+
@http = create_http
|
249
|
+
end
|
250
|
+
|
251
|
+
response.error! if uri.path == path && our_uri.host == uri.host # careful of those infinite redirects
|
215
252
|
self.token_request(http_method, uri.path, token, request_options, arguments)
|
216
253
|
when (400..499)
|
217
254
|
raise OAuth::Unauthorized, response
|
@@ -247,6 +284,10 @@ module OAuth
|
|
247
284
|
@options[:request_token_path]
|
248
285
|
end
|
249
286
|
|
287
|
+
def authenticate_path
|
288
|
+
@options[:authenticate_path]
|
289
|
+
end
|
290
|
+
|
250
291
|
def authorize_path
|
251
292
|
@options[:authorize_path]
|
252
293
|
end
|
@@ -264,6 +305,14 @@ module OAuth
|
|
264
305
|
@options.has_key?(:request_token_url)
|
265
306
|
end
|
266
307
|
|
308
|
+
def authenticate_url
|
309
|
+
@options[:authenticate_url] || site + authenticate_path
|
310
|
+
end
|
311
|
+
|
312
|
+
def authenticate_url?
|
313
|
+
@options.has_key?(:authenticate_url)
|
314
|
+
end
|
315
|
+
|
267
316
|
def authorize_url
|
268
317
|
@options[:authorize_url] || site + authorize_path
|
269
318
|
end
|
@@ -311,16 +360,21 @@ module OAuth
|
|
311
360
|
|
312
361
|
http_object.use_ssl = (our_uri.scheme == 'https')
|
313
362
|
|
314
|
-
if @options[:
|
315
|
-
http_object.
|
363
|
+
if @options[:no_verify]
|
364
|
+
http_object.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
365
|
+
else
|
366
|
+
ca_file = @options[:ca_file] || CA_FILE
|
367
|
+
if ca_file
|
368
|
+
http_object.ca_file = ca_file
|
369
|
+
end
|
316
370
|
http_object.verify_mode = OpenSSL::SSL::VERIFY_PEER
|
317
371
|
http_object.verify_depth = 5
|
318
|
-
else
|
319
|
-
http_object.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
320
372
|
end
|
321
373
|
|
322
374
|
http_object.read_timeout = http_object.open_timeout = @options[:timeout] || 30
|
323
375
|
http_object.open_timeout = @options[:open_timeout] if @options[:open_timeout]
|
376
|
+
http_object.ssl_version = @options[:ssl_version] if @options[:ssl_version]
|
377
|
+
http_object.set_debug_output(debug_output) if debug_output
|
324
378
|
|
325
379
|
http_object
|
326
380
|
end
|
@@ -334,8 +388,10 @@ module OAuth
|
|
334
388
|
end
|
335
389
|
|
336
390
|
# if the base site contains a path, add it now
|
337
|
-
|
338
|
-
|
391
|
+
# only add if the site host matches the current http object's host
|
392
|
+
# (in case we've specified a full url for token requests)
|
393
|
+
uri = URI.parse(site)
|
394
|
+
path = uri.path + path if uri.path && uri.path != '/' && uri.host == http.address
|
339
395
|
|
340
396
|
headers = arguments.first.is_a?(Hash) ? arguments.shift : {}
|
341
397
|
|
data/lib/oauth/helper.rb
CHANGED
@@ -9,9 +9,17 @@ module OAuth
|
|
9
9
|
#
|
10
10
|
# See Also: {OAuth core spec version 1.0, section 5.1}[http://oauth.net/core/1.0#rfc.section.5.1]
|
11
11
|
def escape(value)
|
12
|
-
|
12
|
+
_escape(value.to_s.to_str)
|
13
13
|
rescue ArgumentError
|
14
|
-
|
14
|
+
_escape(value.to_s.to_str.force_encoding(Encoding::UTF_8))
|
15
|
+
end
|
16
|
+
|
17
|
+
def _escape(string)
|
18
|
+
URI::DEFAULT_PARSER.escape(string, OAuth::RESERVED_CHARACTERS)
|
19
|
+
end
|
20
|
+
|
21
|
+
def unescape(value)
|
22
|
+
URI::DEFAULT_PARSER.unescape(value.gsub('+', '%2B'))
|
15
23
|
end
|
16
24
|
|
17
25
|
# Generate a random key of up to +size+ bytes. The value returned is Base64 encoded with non-word
|
@@ -94,10 +102,6 @@ module OAuth
|
|
94
102
|
Hash[*params.flatten]
|
95
103
|
end
|
96
104
|
|
97
|
-
def unescape(value)
|
98
|
-
URI.unescape(value.gsub('+', '%2B'))
|
99
|
-
end
|
100
|
-
|
101
105
|
def stringify_keys(hash)
|
102
106
|
new_h = {}
|
103
107
|
hash.each do |k, v|
|
@@ -23,7 +23,7 @@ then # rails 3.x
|
|
23
23
|
ActionDispatch::Request::HTTP_METHOD_LOOKUP["patch"] = :patch
|
24
24
|
end
|
25
25
|
|
26
|
-
else # rails 4.x - already has patch
|
26
|
+
else # rails 4.x and later - already has patch
|
27
27
|
require 'action_dispatch/http/request'
|
28
28
|
end
|
29
29
|
|
@@ -67,7 +67,7 @@ module OAuth::RequestProxy
|
|
67
67
|
|
68
68
|
params.
|
69
69
|
join('&').split('&').
|
70
|
-
reject(
|
70
|
+
reject { |s| s.match(/\A\s*\z/) }.
|
71
71
|
map { |p| p.split('=').map{|esc| CGI.unescape(esc)} }.
|
72
72
|
reject { |kv| kv[0] == 'oauth_signature'}
|
73
73
|
end
|
@@ -76,7 +76,7 @@ module OAuth::RequestProxy
|
|
76
76
|
end
|
77
77
|
|
78
78
|
def parameters_for_signature
|
79
|
-
parameters.
|
79
|
+
parameters.select { |k,v| not signature_and_unsigned_parameters.include?(k) }
|
80
80
|
end
|
81
81
|
|
82
82
|
def oauth_parameters
|
@@ -87,6 +87,10 @@ module OAuth::RequestProxy
|
|
87
87
|
parameters.reject { |k,v| OAuth::PARAMETERS.include?(k) }
|
88
88
|
end
|
89
89
|
|
90
|
+
def signature_and_unsigned_parameters
|
91
|
+
unsigned_parameters+["oauth_signature"]
|
92
|
+
end
|
93
|
+
|
90
94
|
# See 9.1.2 in specs
|
91
95
|
def normalized_uri
|
92
96
|
u = URI.parse(uri)
|
@@ -146,7 +150,7 @@ module OAuth::RequestProxy
|
|
146
150
|
if uri = request.env['REQUEST_URI']
|
147
151
|
uri.split('?', 2)[1].nil?
|
148
152
|
else
|
149
|
-
request.query_string.
|
153
|
+
request.query_string.match(/\A\s*\z/)
|
150
154
|
end
|
151
155
|
end
|
152
156
|
|
@@ -8,7 +8,14 @@ module OAuth
|
|
8
8
|
return nil if self.token.nil?
|
9
9
|
|
10
10
|
params = (params || {}).merge(:oauth_token => self.token)
|
11
|
-
|
11
|
+
build_url(consumer.authorize_url, params)
|
12
|
+
end
|
13
|
+
|
14
|
+
def authenticate_url(params = nil)
|
15
|
+
return nil if self.token.nil?
|
16
|
+
|
17
|
+
params = (params || {}).merge(:oauth_token => self.token)
|
18
|
+
build_url(consumer.authenticate_url, params)
|
12
19
|
end
|
13
20
|
|
14
21
|
def callback_confirmed?
|
@@ -23,14 +30,14 @@ module OAuth
|
|
23
30
|
|
24
31
|
protected
|
25
32
|
|
26
|
-
# construct an authorization url
|
27
|
-
def
|
33
|
+
# construct an authorization or authentication url
|
34
|
+
def build_url(base_url, params)
|
28
35
|
uri = URI.parse(base_url.to_s)
|
29
|
-
|
30
|
-
|
31
|
-
end
|
36
|
+
queries = {}
|
37
|
+
queries = Hash[URI.decode_www_form(uri.query)] if uri.query
|
32
38
|
# TODO doesn't handle array values correctly
|
33
|
-
|
39
|
+
queries.merge!(params) if params
|
40
|
+
uri.query = URI.encode_www_form(queries) if !queries.empty?
|
34
41
|
uri.to_s
|
35
42
|
end
|
36
43
|
end
|
data/lib/oauth/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: oauth
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pelle Braendgaard
|
@@ -12,10 +12,10 @@ authors:
|
|
12
12
|
- Seth Fitzsimmons
|
13
13
|
- Matt Sanford
|
14
14
|
- Aaron Quint
|
15
|
-
autorequire:
|
15
|
+
autorequire:
|
16
16
|
bindir: bin
|
17
17
|
cert_chain: []
|
18
|
-
date:
|
18
|
+
date: 2021-01-20 00:00:00.000000000 Z
|
19
19
|
dependencies:
|
20
20
|
- !ruby/object:Gem::Dependency
|
21
21
|
name: rake
|
@@ -59,62 +59,48 @@ dependencies:
|
|
59
59
|
- - ">="
|
60
60
|
- !ruby/object:Gem::Version
|
61
61
|
version: '0'
|
62
|
-
- !ruby/object:Gem::Dependency
|
63
|
-
name: jeweler
|
64
|
-
requirement: !ruby/object:Gem::Requirement
|
65
|
-
requirements:
|
66
|
-
- - ">="
|
67
|
-
- !ruby/object:Gem::Version
|
68
|
-
version: '0'
|
69
|
-
type: :development
|
70
|
-
prerelease: false
|
71
|
-
version_requirements: !ruby/object:Gem::Requirement
|
72
|
-
requirements:
|
73
|
-
- - ">="
|
74
|
-
- !ruby/object:Gem::Version
|
75
|
-
version: '0'
|
76
62
|
- !ruby/object:Gem::Dependency
|
77
63
|
name: actionpack
|
78
64
|
requirement: !ruby/object:Gem::Requirement
|
79
65
|
requirements:
|
80
66
|
- - ">="
|
81
67
|
- !ruby/object:Gem::Version
|
82
|
-
version:
|
68
|
+
version: '5.0'
|
83
69
|
type: :development
|
84
70
|
prerelease: false
|
85
71
|
version_requirements: !ruby/object:Gem::Requirement
|
86
72
|
requirements:
|
87
73
|
- - ">="
|
88
74
|
- !ruby/object:Gem::Version
|
89
|
-
version:
|
75
|
+
version: '5.0'
|
90
76
|
- !ruby/object:Gem::Dependency
|
91
77
|
name: iconv
|
92
78
|
requirement: !ruby/object:Gem::Requirement
|
93
79
|
requirements:
|
94
|
-
- - "
|
80
|
+
- - ">="
|
95
81
|
- !ruby/object:Gem::Version
|
96
|
-
version:
|
82
|
+
version: '0'
|
97
83
|
type: :development
|
98
84
|
prerelease: false
|
99
85
|
version_requirements: !ruby/object:Gem::Requirement
|
100
86
|
requirements:
|
101
|
-
- - "
|
87
|
+
- - ">="
|
102
88
|
- !ruby/object:Gem::Version
|
103
|
-
version:
|
89
|
+
version: '0'
|
104
90
|
- !ruby/object:Gem::Dependency
|
105
91
|
name: rack
|
106
92
|
requirement: !ruby/object:Gem::Requirement
|
107
93
|
requirements:
|
108
94
|
- - "~>"
|
109
95
|
- !ruby/object:Gem::Version
|
110
|
-
version:
|
96
|
+
version: '2.0'
|
111
97
|
type: :development
|
112
98
|
prerelease: false
|
113
99
|
version_requirements: !ruby/object:Gem::Requirement
|
114
100
|
requirements:
|
115
101
|
- - "~>"
|
116
102
|
- !ruby/object:Gem::Version
|
117
|
-
version:
|
103
|
+
version: '2.0'
|
118
104
|
- !ruby/object:Gem::Dependency
|
119
105
|
name: rack-test
|
120
106
|
requirement: !ruby/object:Gem::Requirement
|
@@ -136,6 +122,9 @@ dependencies:
|
|
136
122
|
- - ">="
|
137
123
|
- !ruby/object:Gem::Version
|
138
124
|
version: 0.9.12
|
125
|
+
- - "<="
|
126
|
+
- !ruby/object:Gem::Version
|
127
|
+
version: 1.1.0
|
139
128
|
type: :development
|
140
129
|
prerelease: false
|
141
130
|
version_requirements: !ruby/object:Gem::Requirement
|
@@ -143,6 +132,9 @@ dependencies:
|
|
143
132
|
- - ">="
|
144
133
|
- !ruby/object:Gem::Version
|
145
134
|
version: 0.9.12
|
135
|
+
- - "<="
|
136
|
+
- !ruby/object:Gem::Version
|
137
|
+
version: 1.1.0
|
146
138
|
- !ruby/object:Gem::Dependency
|
147
139
|
name: typhoeus
|
148
140
|
requirement: !ruby/object:Gem::Requirement
|
@@ -175,17 +167,73 @@ dependencies:
|
|
175
167
|
name: curb
|
176
168
|
requirement: !ruby/object:Gem::Requirement
|
177
169
|
requirements:
|
178
|
-
- -
|
170
|
+
- - ">="
|
179
171
|
- !ruby/object:Gem::Version
|
180
|
-
version: 0
|
172
|
+
version: '0'
|
181
173
|
type: :development
|
182
174
|
prerelease: false
|
183
175
|
version_requirements: !ruby/object:Gem::Requirement
|
184
176
|
requirements:
|
185
|
-
- -
|
177
|
+
- - ">="
|
178
|
+
- !ruby/object:Gem::Version
|
179
|
+
version: '0'
|
180
|
+
- !ruby/object:Gem::Dependency
|
181
|
+
name: webmock
|
182
|
+
requirement: !ruby/object:Gem::Requirement
|
183
|
+
requirements:
|
184
|
+
- - "<"
|
185
|
+
- !ruby/object:Gem::Version
|
186
|
+
version: '2.0'
|
187
|
+
type: :development
|
188
|
+
prerelease: false
|
189
|
+
version_requirements: !ruby/object:Gem::Requirement
|
190
|
+
requirements:
|
191
|
+
- - "<"
|
192
|
+
- !ruby/object:Gem::Version
|
193
|
+
version: '2.0'
|
194
|
+
- !ruby/object:Gem::Dependency
|
195
|
+
name: codeclimate-test-reporter
|
196
|
+
requirement: !ruby/object:Gem::Requirement
|
197
|
+
requirements:
|
198
|
+
- - ">="
|
199
|
+
- !ruby/object:Gem::Version
|
200
|
+
version: '0'
|
201
|
+
type: :development
|
202
|
+
prerelease: false
|
203
|
+
version_requirements: !ruby/object:Gem::Requirement
|
204
|
+
requirements:
|
205
|
+
- - ">="
|
206
|
+
- !ruby/object:Gem::Version
|
207
|
+
version: '0'
|
208
|
+
- !ruby/object:Gem::Dependency
|
209
|
+
name: simplecov
|
210
|
+
requirement: !ruby/object:Gem::Requirement
|
211
|
+
requirements:
|
212
|
+
- - ">="
|
213
|
+
- !ruby/object:Gem::Version
|
214
|
+
version: '0'
|
215
|
+
type: :development
|
216
|
+
prerelease: false
|
217
|
+
version_requirements: !ruby/object:Gem::Requirement
|
218
|
+
requirements:
|
219
|
+
- - ">="
|
220
|
+
- !ruby/object:Gem::Version
|
221
|
+
version: '0'
|
222
|
+
- !ruby/object:Gem::Dependency
|
223
|
+
name: rest-client
|
224
|
+
requirement: !ruby/object:Gem::Requirement
|
225
|
+
requirements:
|
226
|
+
- - ">="
|
186
227
|
- !ruby/object:Gem::Version
|
187
|
-
version: 0
|
188
|
-
|
228
|
+
version: '0'
|
229
|
+
type: :development
|
230
|
+
prerelease: false
|
231
|
+
version_requirements: !ruby/object:Gem::Requirement
|
232
|
+
requirements:
|
233
|
+
- - ">="
|
234
|
+
- !ruby/object:Gem::Version
|
235
|
+
version: '0'
|
236
|
+
description:
|
189
237
|
email: oauth-ruby@googlegroupspec.com
|
190
238
|
executables:
|
191
239
|
- oauth
|
@@ -201,13 +249,18 @@ files:
|
|
201
249
|
- bin/oauth
|
202
250
|
- lib/oauth.rb
|
203
251
|
- lib/oauth/cli.rb
|
252
|
+
- lib/oauth/cli/authorize_command.rb
|
253
|
+
- lib/oauth/cli/base_command.rb
|
254
|
+
- lib/oauth/cli/help_command.rb
|
255
|
+
- lib/oauth/cli/query_command.rb
|
256
|
+
- lib/oauth/cli/sign_command.rb
|
257
|
+
- lib/oauth/cli/version_command.rb
|
204
258
|
- lib/oauth/client.rb
|
205
259
|
- lib/oauth/client/action_controller_request.rb
|
206
260
|
- lib/oauth/client/em_http.rb
|
207
261
|
- lib/oauth/client/helper.rb
|
208
262
|
- lib/oauth/client/net_http.rb
|
209
263
|
- lib/oauth/consumer.rb
|
210
|
-
- lib/oauth/core_ext.rb
|
211
264
|
- lib/oauth/errors.rb
|
212
265
|
- lib/oauth/errors/error.rb
|
213
266
|
- lib/oauth/errors/problem.rb
|
@@ -217,6 +270,7 @@ files:
|
|
217
270
|
- lib/oauth/oauth_test_helper.rb
|
218
271
|
- lib/oauth/request_proxy.rb
|
219
272
|
- lib/oauth/request_proxy/action_controller_request.rb
|
273
|
+
- lib/oauth/request_proxy/action_dispatch_request.rb
|
220
274
|
- lib/oauth/request_proxy/base.rb
|
221
275
|
- lib/oauth/request_proxy/curb_request.rb
|
222
276
|
- lib/oauth/request_proxy/em_http_request.rb
|
@@ -239,38 +293,11 @@ files:
|
|
239
293
|
- lib/oauth/tokens/server_token.rb
|
240
294
|
- lib/oauth/tokens/token.rb
|
241
295
|
- lib/oauth/version.rb
|
242
|
-
|
243
|
-
|
244
|
-
-
|
245
|
-
- test/cases/spec/1_0-final/test_parameter_encodings.rb
|
246
|
-
- test/cases/spec/1_0-final/test_signature_base_strings.rb
|
247
|
-
- test/integration/consumer_test.rb
|
248
|
-
- test/test_access_token.rb
|
249
|
-
- test/test_action_controller_request_proxy.rb
|
250
|
-
- test/test_consumer.rb
|
251
|
-
- test/test_curb_request_proxy.rb
|
252
|
-
- test/test_em_http_client.rb
|
253
|
-
- test/test_em_http_request_proxy.rb
|
254
|
-
- test/test_helper.rb
|
255
|
-
- test/test_hmac_sha1.rb
|
256
|
-
- test/test_net_http_client.rb
|
257
|
-
- test/test_net_http_request_proxy.rb
|
258
|
-
- test/test_oauth_helper.rb
|
259
|
-
- test/test_rack_request_proxy.rb
|
260
|
-
- test/test_request_token.rb
|
261
|
-
- test/test_rest_client_request_proxy.rb
|
262
|
-
- test/test_rsa_sha1.rb
|
263
|
-
- test/test_server.rb
|
264
|
-
- test/test_signature.rb
|
265
|
-
- test/test_signature_base.rb
|
266
|
-
- test/test_signature_hmac_sha1.rb
|
267
|
-
- test/test_signature_plain_text.rb
|
268
|
-
- test/test_token.rb
|
269
|
-
- test/test_typhoeus_request_proxy.rb
|
270
|
-
homepage:
|
271
|
-
licenses: []
|
296
|
+
homepage:
|
297
|
+
licenses:
|
298
|
+
- MIT
|
272
299
|
metadata: {}
|
273
|
-
post_install_message:
|
300
|
+
post_install_message:
|
274
301
|
rdoc_options: []
|
275
302
|
require_paths:
|
276
303
|
- lib
|
@@ -278,45 +305,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
278
305
|
requirements:
|
279
306
|
- - ">="
|
280
307
|
- !ruby/object:Gem::Version
|
281
|
-
version: '0'
|
308
|
+
version: '2.0'
|
282
309
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
283
310
|
requirements:
|
284
311
|
- - ">="
|
285
312
|
- !ruby/object:Gem::Version
|
286
313
|
version: '0'
|
287
314
|
requirements: []
|
288
|
-
|
289
|
-
|
290
|
-
signing_key:
|
315
|
+
rubygems_version: 3.0.8
|
316
|
+
signing_key:
|
291
317
|
specification_version: 4
|
292
318
|
summary: OAuth Core Ruby implementation
|
293
|
-
test_files:
|
294
|
-
- test/test_rsa_sha1.rb
|
295
|
-
- test/test_helper.rb
|
296
|
-
- test/test_server.rb
|
297
|
-
- test/test_em_http_client.rb
|
298
|
-
- test/test_signature_hmac_sha1.rb
|
299
|
-
- test/test_signature.rb
|
300
|
-
- test/test_em_http_request_proxy.rb
|
301
|
-
- test/test_net_http_client.rb
|
302
|
-
- test/test_rest_client_request_proxy.rb
|
303
|
-
- test/cases/oauth_case.rb
|
304
|
-
- test/cases/spec/1_0-final/test_parameter_encodings.rb
|
305
|
-
- test/cases/spec/1_0-final/test_signature_base_strings.rb
|
306
|
-
- test/cases/spec/1_0-final/test_normalize_request_parameters.rb
|
307
|
-
- test/cases/spec/1_0-final/test_construct_request_url.rb
|
308
|
-
- test/test_hmac_sha1.rb
|
309
|
-
- test/test_consumer.rb
|
310
|
-
- test/test_rack_request_proxy.rb
|
311
|
-
- test/test_signature_base.rb
|
312
|
-
- test/test_typhoeus_request_proxy.rb
|
313
|
-
- test/integration/consumer_test.rb
|
314
|
-
- test/test_signature_plain_text.rb
|
315
|
-
- test/test_curb_request_proxy.rb
|
316
|
-
- test/test_token.rb
|
317
|
-
- test/test_action_controller_request_proxy.rb
|
318
|
-
- test/test_oauth_helper.rb
|
319
|
-
- test/test_access_token.rb
|
320
|
-
- test/test_request_token.rb
|
321
|
-
- test/test_net_http_request_proxy.rb
|
322
|
-
has_rdoc:
|
319
|
+
test_files: []
|