ruby-openid 2.1.8 → 2.2.0

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.

Potentially problematic release.


This version of ruby-openid might be problematic. Click here for more details.

Files changed (54) hide show
  1. data/CHANGELOG.md +13 -0
  2. data/INSTALL.md +47 -0
  3. data/README.md +82 -0
  4. data/{UPGRADE → UPGRADE.md} +54 -55
  5. data/examples/active_record_openid_store/README +4 -2
  6. data/examples/active_record_openid_store/XXX_add_open_id_store_to_db.rb +1 -1
  7. data/examples/active_record_openid_store/lib/openid_ar_store.rb +1 -1
  8. data/examples/rails_openid/app/controllers/server_controller.rb +0 -6
  9. data/lib/openid.rb +2 -2
  10. data/lib/openid/consumer/responses.rb +2 -0
  11. data/lib/openid/dh.rb +1 -1
  12. data/lib/openid/extensions/ax.rb +44 -22
  13. data/lib/openid/extensions/ui.rb +53 -0
  14. data/lib/openid/message.rb +1 -1
  15. data/lib/openid/store/filesystem.rb +8 -9
  16. data/lib/openid/store/memcache.rb +10 -2
  17. data/lib/openid/trustroot.rb +1 -0
  18. data/lib/openid/util.rb +6 -0
  19. data/lib/openid/version.rb +3 -0
  20. data/test/data/trustroot.txt +2 -2
  21. data/test/test_accept.rb +1 -1
  22. data/test/test_associationmanager.rb +1 -1
  23. data/test/test_ax.rb +89 -19
  24. data/test/test_checkid_request.rb +1 -1
  25. data/test/test_consumer.rb +5 -2
  26. data/test/test_cryptutil.rb +1 -1
  27. data/test/test_dh.rb +1 -1
  28. data/test/test_discover.rb +2 -4
  29. data/test/test_discovery_manager.rb +1 -3
  30. data/test/test_extension.rb +2 -2
  31. data/test/test_fetchers.rb +3 -7
  32. data/test/test_filters.rb +25 -31
  33. data/test/test_idres.rb +17 -17
  34. data/test/test_kvpost.rb +2 -2
  35. data/test/test_message.rb +1 -2
  36. data/test/test_oauth.rb +3 -2
  37. data/test/test_openid_yadis.rb +0 -1
  38. data/test/test_pape.rb +7 -6
  39. data/test/test_parsehtml.rb +2 -2
  40. data/test/test_server.rb +17 -22
  41. data/test/test_sreg.rb +8 -8
  42. data/test/test_stores.rb +1 -2
  43. data/test/test_trustroot.rb +14 -15
  44. data/test/test_ui.rb +93 -0
  45. data/test/test_urinorm.rb +2 -3
  46. data/test/test_util.rb +2 -3
  47. data/test/test_xrds.rb +13 -15
  48. data/test/test_xrires.rb +27 -14
  49. data/test/test_yadis_discovery.rb +1 -3
  50. metadata +260 -189
  51. data/CHANGELOG +0 -215
  52. data/INSTALL +0 -47
  53. data/README +0 -81
  54. data/admin/runtests.rb +0 -45
@@ -1,7 +1,7 @@
1
+ require 'test/unit'
1
2
  require 'openid/extensions/sreg'
2
3
  require 'openid/message'
3
4
  require 'openid/server'
4
- require 'test/unit'
5
5
 
6
6
  module OpenID
7
7
  module SReg
@@ -71,7 +71,7 @@ module OpenID
71
71
  @openid1 = false
72
72
  @namespaces = NamespaceMap.new
73
73
  end
74
-
74
+
75
75
  def is_openid1
76
76
  return @openid1
77
77
  end
@@ -95,7 +95,7 @@ module OpenID
95
95
  assert_equal('sreg', @msg.namespaces.get_alias(ns_uri))
96
96
  assert_equal(NS_URI, ns_uri)
97
97
  end
98
-
98
+
99
99
  def test_openid1defined_1_0
100
100
  @msg.openid1 = true
101
101
  @msg.namespaces.add(NS_URI_1_0)
@@ -117,7 +117,7 @@ module OpenID
117
117
  }
118
118
  }
119
119
  end
120
-
120
+
121
121
  def test_openid1_defined_badly
122
122
  @msg.openid1 = true
123
123
  @msg.namespaces.add_alias('http://invalid/', 'sreg')
@@ -182,7 +182,7 @@ module OpenID
182
182
  end
183
183
 
184
184
  def test_from_openid_request_ns_1_0
185
- message = Message.from_openid_args({'ns.sreg' => NS_URI_1_0,
185
+ message = Message.from_openid_args({'ns.sreg' => NS_URI_1_0,
186
186
  "sreg.required" => "nickname"})
187
187
  openid_req = Server::OpenIDRequest.new
188
188
  openid_req.message = message
@@ -214,7 +214,7 @@ module OpenID
214
214
  req.parse_extension_args({'required' => 'stuff'})
215
215
  assert_equal([], req.required)
216
216
  end
217
-
217
+
218
218
  def test_parse_extension_args_strict
219
219
  req = Request.new
220
220
  assert_raises(ArgumentError) {
@@ -351,7 +351,7 @@ module OpenID
351
351
  req.request_fields(fields)
352
352
  assert_equal(fields, req.optional)
353
353
  assert_equal([], req.required)
354
-
354
+
355
355
  # By default, adding the same fields over again has no effect
356
356
  req.request_fields(fields)
357
357
  assert_equal(fields, req.optional)
@@ -439,7 +439,7 @@ module OpenID
439
439
  })
440
440
  success_resp = DummySuccessResponse.new(message, {})
441
441
  sreg_resp = Response.from_success_response(success_resp, false)
442
- assert_equal({'nickname' => 'The Mad Stork'},
442
+ assert_equal({'nickname' => 'The Mad Stork'},
443
443
  sreg_resp.get_extension_args)
444
444
  end
445
445
  end
@@ -119,8 +119,7 @@ module OpenID
119
119
 
120
120
  ret_assoc = @store.get_association(server_url, nil)
121
121
  unexpected = [assoc2.handle, assoc3.handle]
122
- assert(ret_assoc.nil? || !unexpected.member?(ret_assoc.handle),
123
- ret_assoc)
122
+ assert ret_assoc.nil? || !unexpected.member?(ret_assoc.handle)
124
123
 
125
124
  _check_retrieve(server_url, assoc.handle, assoc)
126
125
  _check_retrieve(server_url, assoc2.handle, nil)
@@ -1,22 +1,21 @@
1
1
  require 'test/unit'
2
+ require 'testutil'
2
3
  require 'openid/trustroot'
3
4
 
4
- require "testutil"
5
-
6
5
  class TrustRootTest < Test::Unit::TestCase
7
6
  include OpenID::TestDataMixin
8
7
 
9
8
  def _test_sanity(case_, sanity, desc)
10
9
  tr = OpenID::TrustRoot::TrustRoot.parse(case_)
11
10
  if sanity == 'sane'
12
- assert(! tr.nil?)
13
- assert(tr.sane?, [case_, desc])
14
- assert(OpenID::TrustRoot::TrustRoot.check_sanity(case_), [case_, desc])
11
+ assert !tr.nil?
12
+ assert tr.sane?, [case_, desc].join(' ')
13
+ assert OpenID::TrustRoot::TrustRoot.check_sanity(case_), [case_, desc].join(' ')
15
14
  elsif sanity == 'insane'
16
- assert(!tr.sane?, [case_, desc])
17
- assert(!OpenID::TrustRoot::TrustRoot.check_sanity(case_), [case_, desc])
15
+ assert !tr.sane?, [case_, desc].join(' ')
16
+ assert !OpenID::TrustRoot::TrustRoot.check_sanity(case_), [case_, desc].join(' ')
18
17
  else
19
- assert(tr.nil?, case_)
18
+ assert tr.nil?, case_
20
19
  end
21
20
  end
22
21
 
@@ -24,11 +23,11 @@ class TrustRootTest < Test::Unit::TestCase
24
23
  tr = OpenID::TrustRoot::TrustRoot.parse(trust_root)
25
24
  actual_match = tr.validate_url(url)
26
25
  if expected_match
27
- assert(actual_match, [trust_root, url])
28
- assert(OpenID::TrustRoot::TrustRoot.check_url(trust_root, url))
26
+ assert actual_match, [trust_root, url].join(' ')
27
+ assert OpenID::TrustRoot::TrustRoot.check_url(trust_root, url)
29
28
  else
30
- assert(!actual_match, [expected_match, actual_match, trust_root, url])
31
- assert(!OpenID::TrustRoot::TrustRoot.check_url(trust_root, url))
29
+ assert !actual_match, [expected_match, actual_match, trust_root, url].join(' ')
30
+ assert !OpenID::TrustRoot::TrustRoot.check_url(trust_root, url)
32
31
  end
33
32
  end
34
33
 
@@ -55,8 +54,8 @@ class TrustRootTest < Test::Unit::TestCase
55
54
  tests = []
56
55
  top = head.strip()
57
56
  gdat = dat.split('-' * 40 + "\n").collect { |i| i.strip() }
58
- assert(gdat[0] == '')
59
- assert(gdat.length == (grps.length * 2 + 1), [gdat, grps])
57
+ assert gdat[0] == ''
58
+ assert gdat.length == (grps.length * 2 + 1)
60
59
  i = 1
61
60
  grps.each { |x|
62
61
  n, desc = gdat[i].split(': ')
@@ -107,7 +106,7 @@ class TrustRootTest < Test::Unit::TestCase
107
106
  trust_root, expected_disco_url = case_
108
107
  tr = OpenID::TrustRoot::TrustRoot.parse(trust_root)
109
108
  actual_disco_url = tr.build_discovery_url()
110
- assert(actual_disco_url == expected_disco_url, case_ + [actual_disco_url])
109
+ assert actual_disco_url == expected_disco_url
111
110
  }
112
111
  end
113
112
  end
@@ -0,0 +1,93 @@
1
+ require 'openid/extensions/ui'
2
+ require 'openid/message'
3
+ require 'openid/server'
4
+ require 'test/unit'
5
+
6
+ module OpenID
7
+ module UITest
8
+ class UIRequestTestCase < Test::Unit::TestCase
9
+
10
+ def setup
11
+ @req = UI::Request.new
12
+ end
13
+
14
+ def test_construct
15
+ assert_nil @req.mode
16
+ assert_nil @req.icon
17
+ assert_nil @req.lang
18
+ assert_equal 'ui', @req.ns_alias
19
+
20
+ req2 = UI::Request.new("popup", true, "ja-JP")
21
+ assert_equal "popup", req2.mode
22
+ assert_equal true, req2.icon
23
+ assert_equal "ja-JP", req2.lang
24
+ end
25
+
26
+ def test_add_mode
27
+ @req.mode = "popup"
28
+ assert_equal "popup", @req.mode
29
+ end
30
+
31
+ def test_add_icon
32
+ @req.icon = true
33
+ assert_equal true, @req.icon
34
+ end
35
+
36
+ def test_add_lang
37
+ @req.lang = "ja-JP"
38
+ assert_equal "ja-JP", @req.lang
39
+ end
40
+
41
+ def test_get_extension_args
42
+ assert_equal({}, @req.get_extension_args)
43
+ @req.mode = "popup"
44
+ assert_equal({'mode' => 'popup'}, @req.get_extension_args)
45
+ @req.icon = true
46
+ assert_equal({'mode' => 'popup', 'icon' => true}, @req.get_extension_args)
47
+ @req.lang = "ja-JP"
48
+ assert_equal({'mode' => 'popup', 'icon' => true, 'lang' => 'ja-JP'}, @req.get_extension_args)
49
+ end
50
+
51
+ def test_parse_extension_args
52
+ args = {'mode' => 'popup', 'icon' => true, 'lang' => 'ja-JP'}
53
+ @req.parse_extension_args args
54
+ assert_equal "popup", @req.mode
55
+ assert_equal true, @req.icon
56
+ assert_equal "ja-JP", @req.lang
57
+ end
58
+
59
+ def test_parse_extension_args_empty
60
+ @req.parse_extension_args({})
61
+ assert_nil @req.mode
62
+ assert_nil @req.icon
63
+ assert_nil @req.lang
64
+ end
65
+
66
+ def test_from_openid_request
67
+ openid_req_msg = Message.from_openid_args(
68
+ 'mode' => 'checkid_setup',
69
+ 'ns' => OPENID2_NS,
70
+ 'ns.ui' => UI::NS_URI,
71
+ 'ui.mode' => 'popup',
72
+ 'ui.icon' => true,
73
+ 'ui.lang' => 'ja-JP'
74
+ )
75
+ oid_req = Server::OpenIDRequest.new
76
+ oid_req.message = openid_req_msg
77
+ req = UI::Request.from_openid_request oid_req
78
+ assert_equal "popup", req.mode
79
+ assert_equal true, req.icon
80
+ assert_equal "ja-JP", req.lang
81
+ end
82
+
83
+ def test_from_openid_request_no_ui_params
84
+ message = Message.new
85
+ openid_req = Server::OpenIDRequest.new
86
+ openid_req.message = message
87
+ ui_req = UI::Request.from_openid_request openid_req
88
+ assert ui_req.nil?
89
+ end
90
+
91
+ end
92
+ end
93
+ end
@@ -1,7 +1,6 @@
1
- require 'test/unit'
2
-
3
- require "openid/urinorm"
1
+ require "test/unit"
4
2
  require "testutil"
3
+ require "openid/urinorm"
5
4
 
6
5
  class URINormTestCase < Test::Unit::TestCase
7
6
  include OpenID::TestDataMixin
@@ -1,6 +1,5 @@
1
- # coding: ASCII-8BIT
2
- require 'test/unit'
3
-
1
+ # encoding: ASCII-8BIT
2
+ require "test/unit"
4
3
  require "openid/util"
5
4
 
6
5
  module OpenID
@@ -1,8 +1,6 @@
1
-
2
1
  require 'test/unit'
3
- require 'openid/yadis/xrds'
4
-
5
2
  require 'testutil'
3
+ require 'openid/yadis/xrds'
6
4
 
7
5
  module OpenID
8
6
  module Yadis
@@ -16,8 +14,8 @@ module OpenID
16
14
 
17
15
  XRDS_DATA_DIR = TEST_DATA_DIR.join('test_xrds')
18
16
 
19
- def read_data_file(filename)
20
- super(filename, false, XRDS_DATA_DIR)
17
+ def read_xrds_data_file(filename)
18
+ read_data_file(filename, false, XRDS_DATA_DIR)
21
19
  end
22
20
  end
23
21
 
@@ -26,12 +24,12 @@ module OpenID
26
24
 
27
25
  # Check that parsing succeeds at all.
28
26
  def test_parse
29
- result = Yadis.parseXRDS(read_data_file(XRD_FILE))
27
+ result = Yadis.parseXRDS(read_xrds_data_file(XRD_FILE))
30
28
  assert_not_nil result
31
29
  end
32
30
 
33
31
  def test_parse_no_xrds_xml
34
- xmldoc = read_data_file(NOXRDS_FILE)
32
+ xmldoc = read_xrds_data_file(NOXRDS_FILE)
35
33
  assert_raise(Yadis::XRDSError) {
36
34
  Yadis.parseXRDS(xmldoc)
37
35
  }
@@ -44,8 +42,8 @@ module OpenID
44
42
  end
45
43
 
46
44
  def test_is_xrds
47
- isnt = REXML::Document.new(read_data_file(NOXRDS_FILE))
48
- should_be = Yadis.parseXRDS(read_data_file(XRD_FILE))
45
+ isnt = REXML::Document.new(read_xrds_data_file(NOXRDS_FILE))
46
+ should_be = Yadis.parseXRDS(read_xrds_data_file(XRD_FILE))
49
47
  assert_equal false, Yadis::is_xrds?(isnt)
50
48
  assert Yadis::is_xrds?(should_be)
51
49
  end
@@ -56,7 +54,7 @@ module OpenID
56
54
 
57
55
  # XXX: Test to make sure this really gets the _right_ XRD.
58
56
  def test_get_xrd
59
- doc = Yadis.parseXRDS(read_data_file(XRD_FILE))
57
+ doc = Yadis.parseXRDS(read_xrds_data_file(XRD_FILE))
60
58
  result = Yadis::get_yadis_xrd(doc)
61
59
  assert_not_nil result
62
60
  assert_equal 'XRD', result.name
@@ -64,7 +62,7 @@ module OpenID
64
62
  end
65
63
 
66
64
  def test_no_xrd
67
- xmldoc = read_data_file(NOXRD_FILE)
65
+ xmldoc = read_xrds_data_file(NOXRD_FILE)
68
66
  doc = Yadis.parseXRDS(xmldoc)
69
67
  assert_raise(Yadis::XRDSError) {
70
68
  Yadis.get_yadis_xrd(doc)
@@ -76,7 +74,7 @@ module OpenID
76
74
  include XRDSTestMixin
77
75
 
78
76
  def test_get_xrd
79
- doc = Yadis.parseXRDS(read_data_file(XRD_FILE))
77
+ doc = Yadis.parseXRDS(read_xrds_data_file(XRD_FILE))
80
78
  count = 0
81
79
  result = Yadis::each_service(doc) { |e|
82
80
  assert_equal 'Service', e.name
@@ -87,7 +85,7 @@ module OpenID
87
85
  end
88
86
 
89
87
  def test_no_xrd
90
- xmldoc = read_data_file(NOXRD_FILE)
88
+ xmldoc = read_xrds_data_file(NOXRD_FILE)
91
89
  doc = Yadis.parseXRDS(xmldoc)
92
90
  assert_raise(Yadis::XRDSError) {
93
91
  Yadis.each_service(doc)
@@ -95,7 +93,7 @@ module OpenID
95
93
  end
96
94
 
97
95
  def test_equal_j3h
98
- doc = Yadis.parseXRDS(read_data_file('=j3h.2007.11.14.xrds'))
96
+ doc = Yadis.parseXRDS(read_xrds_data_file('=j3h.2007.11.14.xrds'))
99
97
  count = 0
100
98
  result = Yadis::each_service(doc) { |e|
101
99
  assert_equal 'Service', e.name
@@ -161,7 +159,7 @@ END
161
159
  include XRDSTestMixin
162
160
 
163
161
  def test_multisegment_xri
164
- xmldoc = Yadis.parseXRDS(read_data_file('subsegments.xrds'))
162
+ xmldoc = Yadis.parseXRDS(read_xrds_data_file('subsegments.xrds'))
165
163
  result = Yadis.get_canonical_id('xri://=nishitani*masaki', xmldoc)
166
164
  end
167
165
  end
@@ -1,4 +1,3 @@
1
-
2
1
  require 'test/unit'
3
2
  require 'openid/yadis/xrires'
4
3
 
@@ -30,33 +29,47 @@ module OpenID
30
29
  def test_proxy_url
31
30
  st = @servicetype
32
31
  ste = @servicetype_enc
33
- args_esc = "_xrd_r=application%2Fxrds%2Bxml&_xrd_t=" + ste
32
+ args_esc = ["_xrd_r=application%2Fxrds%2Bxml", "_xrd_t=#{ste}"]
34
33
  pqu = @proxy.method('query_url')
35
34
  h = @proxy_url
36
35
 
37
- assert_equal(h + '=foo?' + args_esc, pqu.call('=foo', st))
38
- assert_equal(h + '=foo/bar?baz&' + args_esc,
39
- pqu.call('=foo/bar?baz', st))
40
- assert_equal(h + '=foo/bar?baz=quux&' + args_esc,
41
- pqu.call('=foo/bar?baz=quux', st))
42
- assert_equal(h + '=foo/bar?mi=fa&so=la&' + args_esc,
43
- pqu.call('=foo/bar?mi=fa&so=la', st))
36
+ assert_match h + '=foo?', pqu.call('=foo', st)
37
+ assert_match args_esc[0], pqu.call('=foo', st)
38
+ assert_match args_esc[1], pqu.call('=foo', st)
39
+
40
+ assert_match h + '=foo/bar?baz&', pqu.call('=foo/bar?baz', st)
41
+ assert_match args_esc[0], pqu.call('=foo/bar?baz', st)
42
+ assert_match args_esc[1], pqu.call('=foo/bar?baz', st)
43
+
44
+ assert_match h + '=foo/bar?baz=quux&', pqu.call('=foo/bar?baz=quux', st)
45
+ assert_match args_esc[0], pqu.call('=foo/bar?baz=quux', st)
46
+ assert_match args_esc[1], pqu.call('=foo/bar?baz=quux', st)
47
+
48
+ assert_match h + '=foo/bar?mi=fa&so=la&', pqu.call('=foo/bar?mi=fa&so=la', st)
49
+ assert_match args_esc[0], pqu.call('=foo/bar?mi=fa&so=la', st)
50
+ assert_match args_esc[1], pqu.call('=foo/bar?mi=fa&so=la', st)
44
51
 
45
52
  # With no service endpoint selection.
46
53
  args_esc = "_xrd_r=application%2Fxrds%2Bxml%3Bsep%3Dfalse"
47
- assert_equal(h + '=foo?' + args_esc, pqu.call('=foo', nil))
54
+
55
+ assert_match h + '=foo?', pqu.call('=foo', nil)
56
+ assert_match args_esc, pqu.call('=foo', nil)
48
57
  end
49
58
 
50
59
  def test_proxy_url_qmarks
51
60
  st = @servicetype
52
61
  ste = @servicetype_enc
53
- args_esc = "_xrd_r=application%2Fxrds%2Bxml&_xrd_t=" + ste
62
+ args_esc = ["_xrd_r=application%2Fxrds%2Bxml", "_xrd_t=#{ste}"]
54
63
  pqu = @proxy.method('query_url')
55
64
  h = @proxy_url
56
65
 
57
- assert_equal(h + '=foo/bar??' + args_esc, pqu.call('=foo/bar?', st))
58
- assert_equal(h + '=foo/bar????' + args_esc,
59
- pqu.call('=foo/bar???', st))
66
+ assert_match h + '=foo/bar??', pqu.call('=foo/bar?', st)
67
+ assert_match args_esc[0], pqu.call('=foo/bar?', st)
68
+ assert_match args_esc[1], pqu.call('=foo/bar?', st)
69
+
70
+ assert_match h + '=foo/bar????', pqu.call('=foo/bar???', st)
71
+ assert_match args_esc[0], pqu.call('=foo/bar???', st)
72
+ assert_match args_esc[1], pqu.call('=foo/bar???', st)
60
73
  end
61
74
  end
62
75
  end
@@ -1,8 +1,6 @@
1
-
2
1
  require 'test/unit'
3
- require 'uri'
4
2
  require 'testutil'
5
-
3
+ require 'uri'
6
4
  require 'openid/yadis/discovery'
7
5
  require 'openid/fetchers'
8
6
  require 'openid/util'
metadata CHANGED
@@ -1,264 +1,335 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: ruby-openid
3
- version: !ruby/object:Gem::Version
4
- hash: 27
5
- prerelease: false
6
- segments:
7
- - 2
8
- - 1
9
- - 8
10
- version: 2.1.8
3
+ version: !ruby/object:Gem::Version
4
+ version: 2.2.0
5
+ prerelease:
11
6
  platform: ruby
12
- authors:
7
+ authors:
13
8
  - JanRain, Inc
14
9
  autorequire: openid
15
10
  bindir: bin
16
11
  cert_chain: []
17
-
18
- date: 2010-07-22 00:00:00 -07:00
19
- default_executable:
12
+ date: 2012-07-07 00:00:00.000000000 Z
20
13
  dependencies: []
21
-
22
14
  description:
23
15
  email: openid@janrain.com
24
16
  executables: []
25
-
26
17
  extensions: []
27
-
28
- extra_rdoc_files:
29
- - README
30
- - INSTALL
18
+ extra_rdoc_files:
19
+ - README.md
20
+ - INSTALL.md
31
21
  - LICENSE
32
- - UPGRADE
33
- files:
34
- - examples/README
35
- - examples/active_record_openid_store/XXX_upgrade_open_id_store.rb
36
- - examples/active_record_openid_store/XXX_add_open_id_store_to_db.rb
37
- - examples/active_record_openid_store/README
38
- - examples/active_record_openid_store/test/store_test.rb
22
+ - UPGRADE.md
23
+ files:
39
24
  - examples/active_record_openid_store/init.rb
25
+ - examples/active_record_openid_store/lib/association.rb
40
26
  - examples/active_record_openid_store/lib/nonce.rb
41
27
  - examples/active_record_openid_store/lib/open_id_setting.rb
42
- - examples/active_record_openid_store/lib/association.rb
43
28
  - examples/active_record_openid_store/lib/openid_ar_store.rb
29
+ - examples/active_record_openid_store/README
30
+ - examples/active_record_openid_store/test/store_test.rb
31
+ - examples/active_record_openid_store/XXX_add_open_id_store_to_db.rb
32
+ - examples/active_record_openid_store/XXX_upgrade_open_id_store.rb
33
+ - examples/discover
34
+ - examples/rails_openid/app/controllers/application.rb
35
+ - examples/rails_openid/app/controllers/consumer_controller.rb
36
+ - examples/rails_openid/app/controllers/login_controller.rb
37
+ - examples/rails_openid/app/controllers/server_controller.rb
38
+ - examples/rails_openid/app/helpers/application_helper.rb
39
+ - examples/rails_openid/app/helpers/login_helper.rb
40
+ - examples/rails_openid/app/helpers/server_helper.rb
41
+ - examples/rails_openid/app/views/consumer/index.rhtml
42
+ - examples/rails_openid/app/views/layouts/server.rhtml
43
+ - examples/rails_openid/app/views/login/index.rhtml
44
+ - examples/rails_openid/app/views/server/decide.rhtml
45
+ - examples/rails_openid/config/boot.rb
46
+ - examples/rails_openid/config/database.yml
47
+ - examples/rails_openid/config/environment.rb
48
+ - examples/rails_openid/config/environments/development.rb
49
+ - examples/rails_openid/config/environments/production.rb
50
+ - examples/rails_openid/config/environments/test.rb
51
+ - examples/rails_openid/config/routes.rb
52
+ - examples/rails_openid/doc/README_FOR_APP
53
+ - examples/rails_openid/public/404.html
54
+ - examples/rails_openid/public/500.html
55
+ - examples/rails_openid/public/dispatch.cgi
56
+ - examples/rails_openid/public/dispatch.fcgi
57
+ - examples/rails_openid/public/dispatch.rb
58
+ - examples/rails_openid/public/favicon.ico
44
59
  - examples/rails_openid/public/images/openid_login_bg.gif
60
+ - examples/rails_openid/public/javascripts/controls.js
45
61
  - examples/rails_openid/public/javascripts/dragdrop.js
46
62
  - examples/rails_openid/public/javascripts/effects.js
47
63
  - examples/rails_openid/public/javascripts/prototype.js
48
- - examples/rails_openid/public/javascripts/controls.js
49
- - examples/rails_openid/public/dispatch.fcgi
50
- - examples/rails_openid/public/favicon.ico
51
- - examples/rails_openid/public/500.html
52
- - examples/rails_openid/public/dispatch.rb
53
64
  - examples/rails_openid/public/robots.txt
54
- - examples/rails_openid/public/dispatch.cgi
55
- - examples/rails_openid/public/404.html
56
- - examples/rails_openid/doc/README_FOR_APP
65
+ - examples/rails_openid/Rakefile
57
66
  - examples/rails_openid/README
58
- - examples/rails_openid/test/test_helper.rb
59
- - examples/rails_openid/test/functional/server_controller_test.rb
60
- - examples/rails_openid/test/functional/login_controller_test.rb
61
- - examples/rails_openid/config/routes.rb
62
- - examples/rails_openid/config/boot.rb
63
- - examples/rails_openid/config/environments/production.rb
64
- - examples/rails_openid/config/environments/test.rb
65
- - examples/rails_openid/config/environments/development.rb
66
- - examples/rails_openid/config/environment.rb
67
- - examples/rails_openid/config/database.yml
67
+ - examples/rails_openid/script/about
68
+ - examples/rails_openid/script/breakpointer
69
+ - examples/rails_openid/script/console
68
70
  - examples/rails_openid/script/destroy
69
71
  - examples/rails_openid/script/generate
70
- - examples/rails_openid/script/breakpointer
72
+ - examples/rails_openid/script/performance/benchmarker
73
+ - examples/rails_openid/script/performance/profiler
71
74
  - examples/rails_openid/script/plugin
72
- - examples/rails_openid/script/server
73
75
  - examples/rails_openid/script/process/reaper
74
76
  - examples/rails_openid/script/process/spawner
75
77
  - examples/rails_openid/script/process/spinner
76
- - examples/rails_openid/script/about
77
- - examples/rails_openid/script/console
78
- - examples/rails_openid/script/performance/profiler
79
- - examples/rails_openid/script/performance/benchmarker
80
78
  - examples/rails_openid/script/runner
81
- - examples/rails_openid/Rakefile
82
- - examples/rails_openid/app/helpers/server_helper.rb
83
- - examples/rails_openid/app/helpers/login_helper.rb
84
- - examples/rails_openid/app/helpers/application_helper.rb
85
- - examples/rails_openid/app/controllers/application.rb
86
- - examples/rails_openid/app/controllers/login_controller.rb
87
- - examples/rails_openid/app/controllers/consumer_controller.rb
88
- - examples/rails_openid/app/controllers/server_controller.rb
89
- - examples/rails_openid/app/views/consumer/index.rhtml
90
- - examples/rails_openid/app/views/login/index.rhtml
91
- - examples/rails_openid/app/views/layouts/server.rhtml
92
- - examples/rails_openid/app/views/server/decide.rhtml
93
- - examples/discover
94
- - lib/openid/extensions/sreg.rb
95
- - lib/openid/extensions/ax.rb
96
- - lib/openid/extensions/oauth.rb
97
- - lib/openid/extensions/pape.rb
98
- - lib/openid/kvpost.rb
99
- - lib/openid/consumer/discovery_manager.rb
79
+ - examples/rails_openid/script/server
80
+ - examples/rails_openid/test/functional/login_controller_test.rb
81
+ - examples/rails_openid/test/functional/server_controller_test.rb
82
+ - examples/rails_openid/test/test_helper.rb
83
+ - examples/README
84
+ - lib/hmac/hmac.rb
85
+ - lib/hmac/sha1.rb
86
+ - lib/hmac/sha2.rb
87
+ - lib/openid/association.rb
100
88
  - lib/openid/consumer/associationmanager.rb
89
+ - lib/openid/consumer/checkid_request.rb
90
+ - lib/openid/consumer/discovery.rb
91
+ - lib/openid/consumer/discovery_manager.rb
101
92
  - lib/openid/consumer/html_parse.rb
102
93
  - lib/openid/consumer/idres.rb
103
94
  - lib/openid/consumer/responses.rb
104
- - lib/openid/consumer/checkid_request.rb
105
- - lib/openid/consumer/discovery.rb
106
- - lib/openid/util.rb
107
- - lib/openid/extension.rb
108
- - lib/openid/server.rb
109
- - lib/openid/protocolerror.rb
110
- - lib/openid/store/nonce.rb
111
- - lib/openid/store/memory.rb
112
- - lib/openid/store/memcache.rb
113
- - lib/openid/store/interface.rb
114
- - lib/openid/store/filesystem.rb
115
- - lib/openid/association.rb
116
- - lib/openid/extras.rb
117
95
  - lib/openid/consumer.rb
118
96
  - lib/openid/cryptutil.rb
97
+ - lib/openid/dh.rb
98
+ - lib/openid/extension.rb
99
+ - lib/openid/extensions/ax.rb
100
+ - lib/openid/extensions/oauth.rb
101
+ - lib/openid/extensions/pape.rb
102
+ - lib/openid/extensions/sreg.rb
103
+ - lib/openid/extensions/ui.rb
104
+ - lib/openid/extras.rb
105
+ - lib/openid/fetchers.rb
106
+ - lib/openid/kvform.rb
107
+ - lib/openid/kvpost.rb
119
108
  - lib/openid/message.rb
109
+ - lib/openid/protocolerror.rb
110
+ - lib/openid/server.rb
111
+ - lib/openid/store/filesystem.rb
112
+ - lib/openid/store/interface.rb
113
+ - lib/openid/store/memcache.rb
114
+ - lib/openid/store/memory.rb
115
+ - lib/openid/store/nonce.rb
120
116
  - lib/openid/trustroot.rb
121
- - lib/openid/yadis/parsehtml.rb
122
- - lib/openid/yadis/services.rb
123
- - lib/openid/yadis/htmltokenizer.rb
124
- - lib/openid/yadis/xrires.rb
125
- - lib/openid/yadis/xri.rb
117
+ - lib/openid/urinorm.rb
118
+ - lib/openid/util.rb
119
+ - lib/openid/version.rb
126
120
  - lib/openid/yadis/accept.rb
127
- - lib/openid/yadis/xrds.rb
128
- - lib/openid/yadis/filters.rb
129
121
  - lib/openid/yadis/constants.rb
130
122
  - lib/openid/yadis/discovery.rb
131
- - lib/openid/kvform.rb
132
- - lib/openid/urinorm.rb
133
- - lib/openid/fetchers.rb
134
- - lib/openid/dh.rb
123
+ - lib/openid/yadis/filters.rb
124
+ - lib/openid/yadis/htmltokenizer.rb
125
+ - lib/openid/yadis/parsehtml.rb
126
+ - lib/openid/yadis/services.rb
127
+ - lib/openid/yadis/xrds.rb
128
+ - lib/openid/yadis/xri.rb
129
+ - lib/openid/yadis/xrires.rb
135
130
  - lib/openid.rb
136
- - lib/hmac/sha2.rb
137
- - lib/hmac/hmac.rb
138
- - lib/hmac/sha1.rb
139
- - test/test_message.rb
140
- - test/util.rb
141
- - test/test_ax.rb
142
- - test/test_extension.rb
143
- - test/test_idres.rb
144
- - test/data/test_xrds/not-xrds.xml
145
- - test/data/test_xrds/delegated-20060809-r2.xrds
146
- - test/data/test_xrds/README
147
- - test/data/test_xrds/status222.xrds
148
- - test/data/test_xrds/ref.xrds
149
- - test/data/test_xrds/sometimesprefix.xrds
150
- - test/data/test_xrds/=j3h.2007.11.14.xrds
151
- - test/data/test_xrds/delegated-20060809.xrds
152
- - test/data/test_xrds/spoof1.xrds
153
- - test/data/test_xrds/subsegments.xrds
154
- - test/data/test_xrds/no-xrd.xml
155
- - test/data/test_xrds/delegated-20060809-r1.xrds
156
- - test/data/test_xrds/spoof2.xrds
157
- - test/data/test_xrds/valid-populated-xrds.xml
158
- - test/data/test_xrds/spoof3.xrds
159
- - test/data/test_xrds/prefixsometimes.xrds
160
- - test/data/n2b64
161
131
  - test/data/accept.txt
162
- - test/data/linkparse.txt
163
- - test/data/trustroot.txt
164
132
  - test/data/dh.txt
165
- - test/data/test_discover/openid.html
166
- - test/data/test_discover/yadis_2_bad_local_id.xml
167
- - test/data/test_discover/yadis_2entries_delegate.xml
168
- - test/data/test_discover/yadis_0entries.xml
169
- - test/data/test_discover/openid_1_and_2.html
133
+ - test/data/example-xrds.xml
134
+ - test/data/linkparse.txt
135
+ - test/data/n2b64
136
+ - test/data/test1-discover.txt
137
+ - test/data/test1-parsehtml.txt
170
138
  - test/data/test_discover/malformed_meta_tag.html
171
- - test/data/test_discover/yadis_idp.xml
172
- - test/data/test_discover/yadis_2entries_idp.xml
139
+ - test/data/test_discover/openid.html
140
+ - test/data/test_discover/openid2.html
141
+ - test/data/test_discover/openid2_xrds.xml
173
142
  - test/data/test_discover/openid2_xrds_no_local_id.xml
174
- - test/data/test_discover/yadis_no_delegate.xml
175
- - test/data/test_discover/openid_no_delegate.html
176
- - test/data/test_discover/openid_and_yadis.html
143
+ - test/data/test_discover/openid_1_and_2.html
177
144
  - test/data/test_discover/openid_1_and_2_xrds.xml
178
- - test/data/test_discover/openid2_xrds.xml
179
145
  - test/data/test_discover/openid_1_and_2_xrds_bad_delegate.xml
146
+ - test/data/test_discover/openid_and_yadis.html
147
+ - test/data/test_discover/openid_no_delegate.html
180
148
  - test/data/test_discover/openid_utf8.html
149
+ - test/data/test_discover/yadis_0entries.xml
150
+ - test/data/test_discover/yadis_2_bad_local_id.xml
151
+ - test/data/test_discover/yadis_2entries_delegate.xml
152
+ - test/data/test_discover/yadis_2entries_idp.xml
181
153
  - test/data/test_discover/yadis_another_delegate.xml
154
+ - test/data/test_discover/yadis_idp.xml
182
155
  - test/data/test_discover/yadis_idp_delegate.xml
183
- - test/data/test_discover/openid2.html
184
- - test/data/test1-discover.txt
156
+ - test/data/test_discover/yadis_no_delegate.xml
157
+ - test/data/test_xrds/=j3h.2007.11.14.xrds
158
+ - test/data/test_xrds/delegated-20060809-r1.xrds
159
+ - test/data/test_xrds/delegated-20060809-r2.xrds
160
+ - test/data/test_xrds/delegated-20060809.xrds
161
+ - test/data/test_xrds/no-xrd.xml
162
+ - test/data/test_xrds/not-xrds.xml
163
+ - test/data/test_xrds/prefixsometimes.xrds
164
+ - test/data/test_xrds/README
165
+ - test/data/test_xrds/ref.xrds
166
+ - test/data/test_xrds/sometimesprefix.xrds
167
+ - test/data/test_xrds/spoof1.xrds
168
+ - test/data/test_xrds/spoof2.xrds
169
+ - test/data/test_xrds/spoof3.xrds
170
+ - test/data/test_xrds/status222.xrds
171
+ - test/data/test_xrds/subsegments.xrds
172
+ - test/data/test_xrds/valid-populated-xrds.xml
173
+ - test/data/trustroot.txt
185
174
  - test/data/urinorm.txt
186
- - test/data/test1-parsehtml.txt
187
- - test/data/example-xrds.xml
188
- - test/test_openid_yadis.rb
189
- - test/test_dh.rb
190
- - test/test_fetchers.rb
191
- - test/test_discover.rb
192
- - test/test_kvform.rb
193
- - test/test_association.rb
194
- - test/test_server.rb
195
- - test/test_consumer.rb
196
- - test/test_oauth.rb
197
- - test/test_util.rb
198
- - test/test_nonce.rb
199
- - test/test_xrds.rb
200
175
  - test/discoverdata.rb
201
- - test/test_filters.rb
176
+ - test/test_accept.rb
177
+ - test/test_association.rb
202
178
  - test/test_associationmanager.rb
179
+ - test/test_ax.rb
203
180
  - test/test_checkid_request.rb
204
- - test/test_responses.rb
181
+ - test/test_consumer.rb
182
+ - test/test_cryptutil.rb
183
+ - test/test_dh.rb
184
+ - test/test_discover.rb
185
+ - test/test_discovery_manager.rb
186
+ - test/test_extension.rb
187
+ - test/test_extras.rb
188
+ - test/test_fetchers.rb
189
+ - test/test_filters.rb
190
+ - test/test_idres.rb
191
+ - test/test_kvform.rb
205
192
  - test/test_kvpost.rb
206
- - test/test_yadis_discovery.rb
207
- - test/test_xri.rb
208
193
  - test/test_linkparse.rb
209
- - test/test_trustroot.rb
210
- - test/test_discovery_manager.rb
211
- - test/test_parsehtml.rb
194
+ - test/test_message.rb
195
+ - test/test_nonce.rb
196
+ - test/test_oauth.rb
197
+ - test/test_openid_yadis.rb
212
198
  - test/test_pape.rb
213
- - test/test_extras.rb
214
- - test/testutil.rb
199
+ - test/test_parsehtml.rb
200
+ - test/test_responses.rb
201
+ - test/test_server.rb
215
202
  - test/test_sreg.rb
216
- - test/test_accept.rb
203
+ - test/test_stores.rb
204
+ - test/test_trustroot.rb
205
+ - test/test_ui.rb
217
206
  - test/test_urinorm.rb
218
- - test/test_cryptutil.rb
207
+ - test/test_util.rb
208
+ - test/test_xrds.rb
209
+ - test/test_xri.rb
219
210
  - test/test_xrires.rb
220
- - test/test_stores.rb
211
+ - test/test_yadis_discovery.rb
212
+ - test/testutil.rb
213
+ - test/util.rb
221
214
  - NOTICE
222
- - CHANGELOG
223
- - README
224
- - INSTALL
215
+ - CHANGELOG.md
216
+ - README.md
217
+ - INSTALL.md
225
218
  - LICENSE
226
- - UPGRADE
227
- - admin/runtests.rb
228
- has_rdoc: true
229
- homepage: http://github.com/openid/ruby-openid
219
+ - UPGRADE.md
220
+ homepage: https://github.com/openid/ruby-openid
230
221
  licenses: []
231
-
232
222
  post_install_message:
233
- rdoc_options:
223
+ rdoc_options:
234
224
  - --main
235
- - README
236
- require_paths:
225
+ - README.md
226
+ require_paths:
237
227
  - lib
238
- required_ruby_version: !ruby/object:Gem::Requirement
228
+ required_ruby_version: !ruby/object:Gem::Requirement
239
229
  none: false
240
- requirements:
241
- - - ">="
242
- - !ruby/object:Gem::Version
243
- hash: 3
244
- segments:
230
+ requirements:
231
+ - - ! '>='
232
+ - !ruby/object:Gem::Version
233
+ version: '0'
234
+ segments:
245
235
  - 0
246
- version: "0"
247
- required_rubygems_version: !ruby/object:Gem::Requirement
236
+ hash: 3380124184653495316
237
+ required_rubygems_version: !ruby/object:Gem::Requirement
248
238
  none: false
249
- requirements:
250
- - - ">="
251
- - !ruby/object:Gem::Version
252
- hash: 3
253
- segments:
239
+ requirements:
240
+ - - ! '>='
241
+ - !ruby/object:Gem::Version
242
+ version: '0'
243
+ segments:
254
244
  - 0
255
- version: "0"
245
+ hash: 3380124184653495316
256
246
  requirements: []
257
-
258
247
  rubyforge_project:
259
- rubygems_version: 1.3.7
248
+ rubygems_version: 1.8.23
260
249
  signing_key:
261
250
  specification_version: 3
262
251
  summary: A library for consuming and serving OpenID identities.
263
- test_files:
264
- - admin/runtests.rb
252
+ test_files:
253
+ - test/data/accept.txt
254
+ - test/data/dh.txt
255
+ - test/data/example-xrds.xml
256
+ - test/data/linkparse.txt
257
+ - test/data/n2b64
258
+ - test/data/test1-discover.txt
259
+ - test/data/test1-parsehtml.txt
260
+ - test/data/test_discover/malformed_meta_tag.html
261
+ - test/data/test_discover/openid.html
262
+ - test/data/test_discover/openid2.html
263
+ - test/data/test_discover/openid2_xrds.xml
264
+ - test/data/test_discover/openid2_xrds_no_local_id.xml
265
+ - test/data/test_discover/openid_1_and_2.html
266
+ - test/data/test_discover/openid_1_and_2_xrds.xml
267
+ - test/data/test_discover/openid_1_and_2_xrds_bad_delegate.xml
268
+ - test/data/test_discover/openid_and_yadis.html
269
+ - test/data/test_discover/openid_no_delegate.html
270
+ - test/data/test_discover/openid_utf8.html
271
+ - test/data/test_discover/yadis_0entries.xml
272
+ - test/data/test_discover/yadis_2_bad_local_id.xml
273
+ - test/data/test_discover/yadis_2entries_delegate.xml
274
+ - test/data/test_discover/yadis_2entries_idp.xml
275
+ - test/data/test_discover/yadis_another_delegate.xml
276
+ - test/data/test_discover/yadis_idp.xml
277
+ - test/data/test_discover/yadis_idp_delegate.xml
278
+ - test/data/test_discover/yadis_no_delegate.xml
279
+ - test/data/test_xrds/=j3h.2007.11.14.xrds
280
+ - test/data/test_xrds/delegated-20060809-r1.xrds
281
+ - test/data/test_xrds/delegated-20060809-r2.xrds
282
+ - test/data/test_xrds/delegated-20060809.xrds
283
+ - test/data/test_xrds/no-xrd.xml
284
+ - test/data/test_xrds/not-xrds.xml
285
+ - test/data/test_xrds/prefixsometimes.xrds
286
+ - test/data/test_xrds/README
287
+ - test/data/test_xrds/ref.xrds
288
+ - test/data/test_xrds/sometimesprefix.xrds
289
+ - test/data/test_xrds/spoof1.xrds
290
+ - test/data/test_xrds/spoof2.xrds
291
+ - test/data/test_xrds/spoof3.xrds
292
+ - test/data/test_xrds/status222.xrds
293
+ - test/data/test_xrds/subsegments.xrds
294
+ - test/data/test_xrds/valid-populated-xrds.xml
295
+ - test/data/trustroot.txt
296
+ - test/data/urinorm.txt
297
+ - test/discoverdata.rb
298
+ - test/test_accept.rb
299
+ - test/test_association.rb
300
+ - test/test_associationmanager.rb
301
+ - test/test_ax.rb
302
+ - test/test_checkid_request.rb
303
+ - test/test_consumer.rb
304
+ - test/test_cryptutil.rb
305
+ - test/test_dh.rb
306
+ - test/test_discover.rb
307
+ - test/test_discovery_manager.rb
308
+ - test/test_extension.rb
309
+ - test/test_extras.rb
310
+ - test/test_fetchers.rb
311
+ - test/test_filters.rb
312
+ - test/test_idres.rb
313
+ - test/test_kvform.rb
314
+ - test/test_kvpost.rb
315
+ - test/test_linkparse.rb
316
+ - test/test_message.rb
317
+ - test/test_nonce.rb
318
+ - test/test_oauth.rb
319
+ - test/test_openid_yadis.rb
320
+ - test/test_pape.rb
321
+ - test/test_parsehtml.rb
322
+ - test/test_responses.rb
323
+ - test/test_server.rb
324
+ - test/test_sreg.rb
325
+ - test/test_stores.rb
326
+ - test/test_trustroot.rb
327
+ - test/test_ui.rb
328
+ - test/test_urinorm.rb
329
+ - test/test_util.rb
330
+ - test/test_xrds.rb
331
+ - test/test_xri.rb
332
+ - test/test_xrires.rb
333
+ - test/test_yadis_discovery.rb
334
+ - test/testutil.rb
335
+ - test/util.rb