ruby-openid 1.1.4 → 2.0.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


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

Files changed (207) hide show
  1. data/INSTALL +0 -9
  2. data/README +21 -22
  3. data/UPGRADE +117 -0
  4. data/admin/runtests.rb +36 -0
  5. data/examples/README +13 -21
  6. data/examples/active_record_openid_store/README +8 -3
  7. data/examples/active_record_openid_store/XXX_add_open_id_store_to_db.rb +4 -8
  8. data/examples/active_record_openid_store/XXX_upgrade_open_id_store.rb +26 -0
  9. data/examples/active_record_openid_store/lib/association.rb +2 -0
  10. data/examples/active_record_openid_store/lib/openid_ar_store.rb +22 -47
  11. data/examples/active_record_openid_store/test/store_test.rb +78 -48
  12. data/examples/discover +46 -0
  13. data/examples/{rails_server → rails_openid}/README +0 -0
  14. data/examples/{rails_server → rails_openid}/Rakefile +0 -0
  15. data/examples/{rails_server → rails_openid}/app/controllers/application.rb +0 -0
  16. data/examples/rails_openid/app/controllers/consumer_controller.rb +115 -0
  17. data/examples/{rails_server → rails_openid}/app/controllers/login_controller.rb +10 -2
  18. data/examples/rails_openid/app/controllers/server_controller.rb +265 -0
  19. data/examples/{rails_server → rails_openid}/app/helpers/application_helper.rb +0 -0
  20. data/examples/{rails_server → rails_openid}/app/helpers/login_helper.rb +0 -0
  21. data/examples/{rails_server → rails_openid}/app/helpers/server_helper.rb +0 -0
  22. data/examples/rails_openid/app/views/consumer/index.rhtml +81 -0
  23. data/examples/rails_openid/app/views/consumer/start.rhtml +8 -0
  24. data/examples/{rails_server → rails_openid}/app/views/layouts/server.rhtml +0 -0
  25. data/examples/{rails_server → rails_openid}/app/views/login/index.rhtml +1 -1
  26. data/examples/rails_openid/app/views/server/decide.rhtml +26 -0
  27. data/examples/{rails_server → rails_openid}/config/boot.rb +0 -0
  28. data/examples/{rails_server → rails_openid}/config/database.yml +0 -0
  29. data/examples/{rails_server → rails_openid}/config/environment.rb +0 -0
  30. data/examples/{rails_server → rails_openid}/config/environments/development.rb +0 -0
  31. data/examples/{rails_server → rails_openid}/config/environments/production.rb +0 -0
  32. data/examples/{rails_server → rails_openid}/config/environments/test.rb +0 -0
  33. data/examples/{rails_server → rails_openid}/config/routes.rb +2 -1
  34. data/examples/{rails_server → rails_openid}/doc/README_FOR_APP +0 -0
  35. data/examples/{rails_server → rails_openid}/public/404.html +0 -0
  36. data/examples/{rails_server → rails_openid}/public/500.html +0 -0
  37. data/examples/{rails_server → rails_openid}/public/dispatch.cgi +0 -0
  38. data/examples/{rails_server → rails_openid}/public/dispatch.fcgi +0 -0
  39. data/examples/{rails_server → rails_openid}/public/dispatch.rb +0 -0
  40. data/examples/{rails_server → rails_openid}/public/favicon.ico +0 -0
  41. data/examples/rails_openid/public/images/openid_login_bg.gif +0 -0
  42. data/examples/{rails_server → rails_openid}/public/javascripts/controls.js +0 -0
  43. data/examples/{rails_server → rails_openid}/public/javascripts/dragdrop.js +0 -0
  44. data/examples/{rails_server → rails_openid}/public/javascripts/effects.js +0 -0
  45. data/examples/{rails_server → rails_openid}/public/javascripts/prototype.js +0 -0
  46. data/examples/{rails_server → rails_openid}/public/robots.txt +0 -0
  47. data/examples/{rails_server → rails_openid}/script/about +0 -0
  48. data/examples/{rails_server → rails_openid}/script/breakpointer +0 -0
  49. data/examples/{rails_server → rails_openid}/script/console +0 -0
  50. data/examples/{rails_server → rails_openid}/script/destroy +0 -0
  51. data/examples/{rails_server → rails_openid}/script/generate +0 -0
  52. data/examples/{rails_server → rails_openid}/script/performance/benchmarker +0 -0
  53. data/examples/{rails_server → rails_openid}/script/performance/profiler +0 -0
  54. data/examples/{rails_server → rails_openid}/script/plugin +0 -0
  55. data/examples/{rails_server → rails_openid}/script/process/reaper +0 -0
  56. data/examples/{rails_server → rails_openid}/script/process/spawner +0 -0
  57. data/examples/{rails_server → rails_openid}/script/process/spinner +0 -0
  58. data/examples/{rails_server → rails_openid}/script/runner +0 -0
  59. data/examples/{rails_server → rails_openid}/script/server +0 -0
  60. data/examples/{rails_server → rails_openid}/test/functional/login_controller_test.rb +0 -0
  61. data/examples/{rails_server → rails_openid}/test/functional/server_controller_test.rb +0 -0
  62. data/examples/{rails_server → rails_openid}/test/test_helper.rb +0 -0
  63. data/lib/{hmac.rb → hmac/hmac.rb} +0 -0
  64. data/lib/{hmac-sha1.rb → hmac/sha1.rb} +1 -1
  65. data/lib/{hmac-sha2.rb → hmac/sha2.rb} +1 -1
  66. data/lib/openid/association.rb +213 -73
  67. data/lib/openid/consumer/associationmanager.rb +338 -0
  68. data/lib/openid/consumer/checkid_request.rb +175 -0
  69. data/lib/openid/consumer/discovery.rb +480 -0
  70. data/lib/openid/consumer/discovery_manager.rb +123 -0
  71. data/lib/openid/consumer/html_parse.rb +136 -0
  72. data/lib/openid/consumer/idres.rb +525 -0
  73. data/lib/openid/consumer/responses.rb +133 -0
  74. data/lib/openid/consumer.rb +280 -807
  75. data/lib/openid/cryptutil.rb +85 -0
  76. data/lib/openid/dh.rb +60 -23
  77. data/lib/openid/extension.rb +31 -0
  78. data/lib/openid/extensions/ax.rb +506 -0
  79. data/lib/openid/extensions/pape.rb +182 -0
  80. data/lib/openid/extensions/sreg.rb +275 -0
  81. data/lib/openid/extras.rb +11 -0
  82. data/lib/openid/fetchers.rb +132 -93
  83. data/lib/openid/kvform.rb +133 -0
  84. data/lib/openid/kvpost.rb +56 -0
  85. data/lib/openid/message.rb +534 -0
  86. data/lib/openid/protocolerror.rb +6 -0
  87. data/lib/openid/server.rb +1215 -666
  88. data/lib/openid/store/filesystem.rb +271 -0
  89. data/lib/openid/store/interface.rb +75 -0
  90. data/lib/openid/store/memory.rb +84 -0
  91. data/lib/openid/store/nonce.rb +68 -0
  92. data/lib/openid/trustroot.rb +314 -87
  93. data/lib/openid/urinorm.rb +37 -34
  94. data/lib/openid/util.rb +42 -220
  95. data/lib/openid/yadis/accept.rb +148 -0
  96. data/lib/openid/yadis/constants.rb +21 -0
  97. data/lib/openid/yadis/discovery.rb +153 -0
  98. data/lib/openid/yadis/filters.rb +205 -0
  99. data/lib/openid/{htmltokenizer.rb → yadis/htmltokenizer.rb} +1 -54
  100. data/lib/openid/yadis/parsehtml.rb +36 -0
  101. data/lib/openid/yadis/services.rb +42 -0
  102. data/lib/openid/yadis/xrds.rb +171 -0
  103. data/lib/openid/yadis/xri.rb +90 -0
  104. data/lib/openid/yadis/xrires.rb +106 -0
  105. data/lib/openid.rb +1 -4
  106. data/test/data/accept.txt +124 -0
  107. data/test/data/dh.txt +29 -0
  108. data/test/data/example-xrds.xml +14 -0
  109. data/test/data/linkparse.txt +587 -0
  110. data/test/data/n2b64 +650 -0
  111. data/test/data/test1-discover.txt +137 -0
  112. data/test/data/test1-parsehtml.txt +128 -0
  113. data/test/data/test_discover/openid.html +11 -0
  114. data/test/data/test_discover/openid2.html +11 -0
  115. data/test/data/test_discover/openid2_xrds.xml +12 -0
  116. data/test/data/test_discover/openid2_xrds_no_local_id.xml +11 -0
  117. data/test/data/test_discover/openid_1_and_2.html +11 -0
  118. data/test/data/test_discover/openid_1_and_2_xrds.xml +16 -0
  119. data/test/data/test_discover/openid_1_and_2_xrds_bad_delegate.xml +17 -0
  120. data/test/data/test_discover/openid_and_yadis.html +12 -0
  121. data/test/data/test_discover/openid_no_delegate.html +10 -0
  122. data/test/data/test_discover/yadis_0entries.xml +12 -0
  123. data/test/data/test_discover/yadis_2_bad_local_id.xml +15 -0
  124. data/test/data/test_discover/yadis_2entries_delegate.xml +22 -0
  125. data/test/data/test_discover/yadis_2entries_idp.xml +21 -0
  126. data/test/data/test_discover/yadis_another_delegate.xml +14 -0
  127. data/test/data/test_discover/yadis_idp.xml +12 -0
  128. data/test/data/test_discover/yadis_idp_delegate.xml +13 -0
  129. data/test/data/test_discover/yadis_no_delegate.xml +11 -0
  130. data/test/data/test_xrds/=j3h.2007.11.14.xrds +25 -0
  131. data/test/data/test_xrds/README +12 -0
  132. data/test/data/test_xrds/delegated-20060809-r1.xrds +34 -0
  133. data/test/data/test_xrds/delegated-20060809-r2.xrds +34 -0
  134. data/test/data/test_xrds/delegated-20060809.xrds +34 -0
  135. data/test/data/test_xrds/no-xrd.xml +7 -0
  136. data/test/data/test_xrds/not-xrds.xml +2 -0
  137. data/test/data/test_xrds/prefixsometimes.xrds +34 -0
  138. data/test/data/test_xrds/ref.xrds +109 -0
  139. data/test/data/test_xrds/sometimesprefix.xrds +34 -0
  140. data/test/data/test_xrds/spoof1.xrds +25 -0
  141. data/test/data/test_xrds/spoof2.xrds +25 -0
  142. data/test/data/test_xrds/spoof3.xrds +37 -0
  143. data/test/data/test_xrds/status222.xrds +9 -0
  144. data/test/data/test_xrds/valid-populated-xrds.xml +39 -0
  145. data/test/data/trustroot.txt +147 -0
  146. data/test/discoverdata.rb +131 -0
  147. data/test/test_accept.rb +170 -0
  148. data/test/test_association.rb +266 -0
  149. data/test/test_associationmanager.rb +899 -0
  150. data/test/test_ax.rb +587 -0
  151. data/test/test_checkid_request.rb +297 -0
  152. data/test/test_consumer.rb +257 -0
  153. data/test/test_cryptutil.rb +117 -0
  154. data/test/test_dh.rb +86 -0
  155. data/test/test_discover.rb +772 -0
  156. data/test/test_discovery_manager.rb +262 -0
  157. data/test/test_extras.rb +35 -0
  158. data/test/test_fetchers.rb +472 -0
  159. data/test/test_filters.rb +270 -0
  160. data/test/test_idres.rb +816 -0
  161. data/test/test_kvform.rb +165 -0
  162. data/test/test_kvpost.rb +65 -0
  163. data/test/test_linkparse.rb +101 -0
  164. data/test/test_message.rb +1058 -0
  165. data/test/test_nonce.rb +89 -0
  166. data/test/test_openid_yadis.rb +178 -0
  167. data/test/test_pape.rb +233 -0
  168. data/test/test_parsehtml.rb +80 -0
  169. data/test/test_responses.rb +63 -0
  170. data/test/test_server.rb +2270 -0
  171. data/test/test_sreg.rb +479 -0
  172. data/test/test_stores.rb +269 -0
  173. data/test/test_trustroot.rb +112 -0
  174. data/test/{urinorm.rb → test_urinorm.rb} +6 -3
  175. data/test/test_util.rb +144 -0
  176. data/test/test_xrds.rb +160 -0
  177. data/test/test_xri.rb +48 -0
  178. data/test/test_xrires.rb +63 -0
  179. data/test/test_yadis_discovery.rb +207 -0
  180. data/test/testutil.rb +116 -0
  181. data/test/util.rb +47 -50
  182. metadata +233 -143
  183. data/examples/consumer.rb +0 -290
  184. data/examples/rails_openid_login_generator/openid_login_generator-0.1.gem +0 -0
  185. data/examples/rails_server/app/controllers/server_controller.rb +0 -190
  186. data/examples/rails_server/app/views/server/decide.rhtml +0 -11
  187. data/examples/rails_server/public/images/rails.png +0 -0
  188. data/lib/hmac-md5.rb +0 -11
  189. data/lib/hmac-rmd160.rb +0 -11
  190. data/lib/openid/discovery.rb +0 -122
  191. data/lib/openid/filestore.rb +0 -315
  192. data/lib/openid/parse.rb +0 -23
  193. data/lib/openid/service.rb +0 -147
  194. data/lib/openid/stores.rb +0 -178
  195. data/test/assoc.rb +0 -38
  196. data/test/consumer.rb +0 -376
  197. data/test/data/brian.xrds +0 -16
  198. data/test/data/brianellin.mylid.xrds +0 -42
  199. data/test/dh.rb +0 -20
  200. data/test/extensions.rb +0 -30
  201. data/test/linkparse.rb +0 -305
  202. data/test/runtests.rb +0 -22
  203. data/test/server2.rb +0 -1053
  204. data/test/service.rb +0 -47
  205. data/test/storetestcase.rb +0 -172
  206. data/test/teststore.rb +0 -47
  207. data/test/trustroot.rb +0 -117
@@ -0,0 +1,137 @@
1
+ equiv
2
+ Status: 200 OK
3
+ Content-Type: text/html
4
+
5
+ <html>
6
+ <head>
7
+ <meta http-equiv="YADIS_HEADER" content="URL_BASE/xrds">
8
+ <title>Joe Schmoe's Homepage</title>
9
+ </head>
10
+ <body>
11
+ <h1>Joe Schmoe's Homepage</h1>
12
+ <p>Blah blah blah blah blah blah blah</p>
13
+ </body>
14
+ </html>
15
+
16
+ header
17
+ Status: 200 OK
18
+ Content-Type: text/html
19
+ YADIS_HEADER: URL_BASE/xrds
20
+
21
+ <html>
22
+ <head>
23
+ <title>Joe Schmoe's Homepage</title>
24
+ </head>
25
+ <body>
26
+ <h1>Joe Schmoe's Homepage</h1>
27
+ <p>Blah blah blah blah blah blah blah</p>
28
+ </body>
29
+
30
+ xrds
31
+ Status: 200 OK
32
+ Content-Type: application/xrds+xml
33
+
34
+ <XRDS Content>
35
+
36
+ xrds_ctparam
37
+ Status: 200 OK
38
+ Content-Type: application/xrds+xml; charset=UTF8
39
+
40
+ <XRDS Content>
41
+
42
+ xrds_ctcase
43
+ Status: 200 OK
44
+ Content-Type: appliCATION/XRDS+xml
45
+
46
+ <XRDS Content>
47
+
48
+ xrds_html
49
+ Status: 200 OK
50
+ Content-Type: text/html
51
+
52
+ <XRDS Content>
53
+
54
+ redir_equiv
55
+ Status: 302 Found
56
+ Content-Type: text/plain
57
+ Location: URL_BASE/equiv
58
+
59
+ You are presently being redirected.
60
+
61
+ redir_header
62
+ Status: 302 Found
63
+ Content-Type: text/plain
64
+ Location: URL_BASE/header
65
+
66
+ You are presently being redirected.
67
+
68
+ redir_xrds
69
+ Status: 302 Found
70
+ Content-Type: application/xrds+xml
71
+ Location: URL_BASE/xrds
72
+
73
+ <XRDS Content>
74
+
75
+ redir_xrds_html
76
+ Status: 302 Found
77
+ Content-Type: text/plain
78
+ Location: URL_BASE/xrds_html
79
+
80
+ You are presently being redirected.
81
+
82
+ redir_redir_equiv
83
+ Status: 302 Found
84
+ Content-Type: text/plain
85
+ Location: URL_BASE/redir_equiv
86
+
87
+ You are presently being redirected.
88
+
89
+ lowercase_header
90
+ Status: 200 OK
91
+ Content-Type: text/html
92
+ x-xrds-location: URL_BASE/xrds
93
+
94
+ <html>
95
+ <head>
96
+ <title>Joe Schmoe's Homepage</title>
97
+ </head>
98
+ <body>
99
+ <h1>Joe Schmoe's Homepage</h1>
100
+ <p>Blah blah blah blah blah blah blah</p>
101
+ </body>
102
+
103
+ 404_server_response
104
+ Status: 404 Not Found
105
+
106
+ EEk!
107
+
108
+ 500_server_response
109
+ Status: 500 Server error
110
+
111
+ EEk!
112
+
113
+ 201_server_response
114
+ Status: 201 Created
115
+
116
+ EEk!
117
+
118
+ 404_with_header
119
+ Status: 404 Not Found
120
+ YADIS_HEADER: URL_BASE/xrds
121
+
122
+ EEk!
123
+
124
+ 404_with_meta
125
+ Status: 404 Not Found
126
+ Content-Type: text/html
127
+
128
+ <html>
129
+ <head>
130
+ <meta http-equiv="YADIS_HEADER" content="URL_BASE/xrds">
131
+ <title>Joe Schmoe's Homepage</title>
132
+ </head>
133
+ <body>
134
+ <h1>Joe Schmoe's Homepage</h1>
135
+ <p>Blah blah blah blah blah blah blah</p>
136
+ </body>
137
+ </html>
@@ -0,0 +1,128 @@
1
+ found
2
+ <!-- minimal well-formed success case -->
3
+ <html><head><meta http-equiv="X-XRDS-Location" content="found"></head></html>
4
+
5
+ found
6
+ <!-- minimal success case -->
7
+ <html><head><meta http-equiv="X-XRDS-Location" content="found">
8
+
9
+ found
10
+ <!-- ignore bogus top-level tags -->
11
+ </porky><html><head><meta http-equiv="X-XRDS-Location" content="found">
12
+
13
+ found
14
+ <!-- Case folding for header name -->
15
+ <html><head><meta http-equiv="x-xrds-location" content="found">
16
+
17
+ found
18
+ <!-- missing <html> tag -->
19
+ <head><meta http-equiv="X-XRDS-Location" content="found">
20
+
21
+ found
22
+ <!-- case folding for tag names -->
23
+ <html><head><META http-equiv="X-XRDS-Location" content="found">
24
+
25
+ found
26
+ <!-- Stop after first one found -->
27
+ <html><head>
28
+ <meta http-equiv="x-xrds-location" content="found">
29
+ <meta http-equiv="x-xrds-location" content="not-found">
30
+
31
+ &
32
+ <!-- standard entity -->
33
+ <head><meta http-equiv="X-XRDS-Location" content="&amp;">
34
+
35
+ found
36
+ <!-- hex entity -->
37
+ <html>
38
+ <head>
39
+ <meta http-equiv="X-XRDS-Location" content="&#x66;ound">
40
+ </head>
41
+ </html>
42
+
43
+ found
44
+ <!-- decimal entity -->
45
+ <html>
46
+ <head>
47
+ <meta http-equiv="X-XRDS-Location" content="&#102;ound">
48
+ </head>
49
+ </html>
50
+
51
+ /
52
+ <!-- hex entity -->
53
+ <html>
54
+ <head>
55
+ <meta http-equiv="X-XRDS-Location" content="&#x2f;">
56
+ </head>
57
+ </html>
58
+
59
+
60
+ <!-- empty string -->
61
+ <html><head><meta http-equiv="X-XRDS-Location" content="">
62
+
63
+ EOF
64
+ <!-- No markup, except this comment -->
65
+
66
+ None
67
+ <!-- No meta, just standard HTML -->
68
+ <html>
69
+ <head>
70
+ <title>A boring document</title>
71
+ </head>
72
+ <body>
73
+ <h1>A boring document</h1>
74
+ <p>There's really nothing interesting about this</p>
75
+ </body>
76
+ </html>
77
+
78
+ EOF
79
+ <!-- No <html> or <head> -->
80
+ <meta http-equiv="X-XRDS-Location" content="found">
81
+
82
+ EOF
83
+ <!-- No <head> tag -->
84
+ <html><meta http-equiv="X-XRDS-Location" content="found">
85
+
86
+ None
87
+ <!-- No <html> or <head> and a <body> -->
88
+ <body><meta http-equiv="X-XRDS-Location" content="found">
89
+
90
+ None
91
+ <!-- <head> and <html> reversed -->
92
+ <head><html><meta http-equiv="X-XRDS-Location" content="found">
93
+
94
+ None
95
+ <!-- <meta> is inside of <body> -->
96
+ <html><head><body><meta http-equiv="X-XRDS-Location" content="found">
97
+
98
+ None
99
+ <!-- <meta> is inside of <body> -->
100
+ <html>
101
+ <head>
102
+ <title>Someone's blog</title>
103
+ </head>
104
+ <body>
105
+ <h1>My blog</h1>
106
+ <p>This is my blog</p>
107
+ <h2>Comments</h2>
108
+ <p><meta http-equiv="X-XRDS-Location" content="found"></p>
109
+ </body>
110
+ </html>
111
+
112
+ None
113
+ <!-- short head tag -->
114
+ <html><head/>
115
+ <meta http-equiv="X-XRDS-Location" content="found">
116
+
117
+ None
118
+ <!-- <body> comes first -->
119
+ <body><html><head>
120
+ <meta http-equiv="X-XRDS-Location" content="found">
121
+
122
+ None
123
+ <!-- </body> comes first -->
124
+ </body><html><head>
125
+ <meta http-equiv="X-XRDS-Location" content="found">
126
+
127
+ None
128
+ <!bad processing instruction!>
@@ -0,0 +1,11 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html>
3
+ <head>
4
+ <title>Identity Page for Smoker</title>
5
+ <link rel="openid.server" href="http://www.myopenid.com/server" />
6
+ <link rel="openid.delegate" href="http://smoker.myopenid.com/" />
7
+ </head>
8
+ <body>
9
+ <p>foo</p>
10
+ </body>
11
+ </html>
@@ -0,0 +1,11 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html>
3
+ <head>
4
+ <title>Identity Page for Smoker</title>
5
+ <link rel="openid2.provider" href="http://www.myopenid.com/server" />
6
+ <link rel="openid2.local_id" href="http://smoker.myopenid.com/" />
7
+ </head>
8
+ <body>
9
+ <p>foo</p>
10
+ </body>
11
+ </html>
@@ -0,0 +1,12 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xrds:XRDS xmlns:xrds="xri://$xrds"
3
+ xmlns="xri://$xrd*($v*2.0)"
4
+ >
5
+ <XRD>
6
+ <Service priority="10">
7
+ <Type>http://specs.openid.net/auth/2.0/signon</Type>
8
+ <URI>http://www.myopenid.com/server</URI>
9
+ <LocalID>http://smoker.myopenid.com/</LocalID>
10
+ </Service>
11
+ </XRD>
12
+ </xrds:XRDS>
@@ -0,0 +1,11 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xrds:XRDS xmlns:xrds="xri://$xrds"
3
+ xmlns="xri://$xrd*($v*2.0)"
4
+ >
5
+ <XRD>
6
+ <Service priority="10">
7
+ <Type>http://specs.openid.net/auth/2.0/signon</Type>
8
+ <URI>http://www.myopenid.com/server</URI>
9
+ </Service>
10
+ </XRD>
11
+ </xrds:XRDS>
@@ -0,0 +1,11 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html>
3
+ <head>
4
+ <title>Identity Page for Smoker</title>
5
+ <link rel="openid2.provider openid.server" href="http://www.myopenid.com/server" />
6
+ <link rel="openid2.local_id openid.delegate" href="http://smoker.myopenid.com/" />
7
+ </head>
8
+ <body>
9
+ <p>foo</p>
10
+ </body>
11
+ </html>
@@ -0,0 +1,16 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xrds:XRDS xmlns:xrds="xri://$xrds"
3
+ xmlns="xri://$xrd*($v*2.0)"
4
+ xmlns:openid="http://openid.net/xmlns/1.0"
5
+ >
6
+ <XRD>
7
+
8
+ <Service priority="10">
9
+ <Type>http://specs.openid.net/auth/2.0/signon</Type>
10
+ <Type>http://openid.net/signon/1.1</Type>
11
+ <URI>http://www.myopenid.com/server</URI>
12
+ <LocalID>http://smoker.myopenid.com/</LocalID>
13
+ <openid:Delegate>http://smoker.myopenid.com/</openid:Delegate>
14
+ </Service>
15
+ </XRD>
16
+ </xrds:XRDS>
@@ -0,0 +1,17 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xrds:XRDS xmlns:xrds="xri://$xrds"
3
+ xmlns="xri://$xrd*($v*2.0)"
4
+ xmlns:openid="http://openid.net/xmlns/1.0"
5
+ >
6
+ <XRD>
7
+
8
+ <Service priority="10">
9
+ <Type>http://specs.openid.net/auth/2.0/signon</Type>
10
+ <Type>http://openid.net/signon/1.0</Type>
11
+ <Type>http://openid.net/signon/1.1</Type>
12
+ <URI>http://www.myopenid.com/server</URI>
13
+ <LocalID>http://smoker.myopenid.com/</LocalID>
14
+ <openid:Delegate>http://localid.mismatch.invalid/</openid:Delegate>
15
+ </Service>
16
+ </XRD>
17
+ </xrds:XRDS>
@@ -0,0 +1,12 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html>
3
+ <head>
4
+ <title>Identity Page for Smoker</title>
5
+ <meta http-equiv="X-XRDS-Location" content="http://someuser.unittest/xrds" />
6
+ <link rel="openid.server" href="http://www.myopenid.com/server" />
7
+ <link rel="openid.delegate" href="http://smoker.myopenid.com/" />
8
+ </head>
9
+ <body>
10
+ <p>foo</p>
11
+ </body>
12
+ </html>
@@ -0,0 +1,10 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html>
3
+ <head>
4
+ <title>Identity Page for Smoker</title>
5
+ <link rel="openid.server" href="http://www.myopenid.com/server" />
6
+ </head>
7
+ <body>
8
+ <p>foo</p>
9
+ </body>
10
+ </html>
@@ -0,0 +1,12 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xrds:XRDS xmlns:xrds="xri://$xrds"
3
+ xmlns="xri://$xrd*($v*2.0)"
4
+ xmlns:openid="http://openid.net/xmlns/1.0"
5
+ >
6
+ <XRD>
7
+ <Service >
8
+ <Type>http://is-not-openid.unittest/</Type>
9
+ <URI>http://noffing.unittest./</URI>
10
+ </Service>
11
+ </XRD>
12
+ </xrds:XRDS>
@@ -0,0 +1,15 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xrds:XRDS xmlns:xrds="xri://$xrds"
3
+ xmlns="xri://$xrd*($v*2.0)"
4
+ xmlns:openid="http://openid.net/xmlns/1.0"
5
+ >
6
+ <XRD>
7
+
8
+ <Service priority="10">
9
+ <Type>http://specs.openid.net/auth/2.0/signon</Type>
10
+ <URI>http://www.myopenid.com/server</URI>
11
+ <LocalID>http://smoker.myopenid.com/</LocalID>
12
+ <LocalID>http://localid.mismatch.invalid/</LocalID>
13
+ </Service>
14
+ </XRD>
15
+ </xrds:XRDS>
@@ -0,0 +1,22 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xrds:XRDS xmlns:xrds="xri://$xrds"
3
+ xmlns="xri://$xrd*($v*2.0)"
4
+ xmlns:openid="http://openid.net/xmlns/1.0"
5
+ >
6
+ <XRD>
7
+ <CanonicalID>=!1000</CanonicalID>
8
+
9
+ <Service priority="10">
10
+ <Type>http://openid.net/signon/1.0</Type>
11
+ <URI>http://www.myopenid.com/server</URI>
12
+ <openid:Delegate>http://smoker.myopenid.com/</openid:Delegate>
13
+ </Service>
14
+
15
+ <Service priority="20">
16
+ <Type>http://openid.net/signon/1.0</Type>
17
+ <URI>http://www.livejournal.com/openid/server.bml</URI>
18
+ <openid:Delegate>http://frank.livejournal.com/</openid:Delegate>
19
+ </Service>
20
+
21
+ </XRD>
22
+ </xrds:XRDS>
@@ -0,0 +1,21 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xrds:XRDS xmlns:xrds="xri://$xrds"
3
+ xmlns="xri://$xrd*($v*2.0)"
4
+ xmlns:openid="http://openid.net/xmlns/1.0"
5
+ >
6
+ <XRD>
7
+ <CanonicalID>=!1000</CanonicalID>
8
+
9
+ <Service priority="10">
10
+ <Type>http://specs.openid.net/auth/2.0/signon</Type>
11
+ <URI>http://www.myopenid.com/server</URI>
12
+ <openid:LocalID>http://smoker.myopenid.com/</openid:LocalID>
13
+ </Service>
14
+
15
+ <Service priority="20">
16
+ <Type>http://specs.openid.net/auth/2.0/server</Type>
17
+ <URI>http://www.livejournal.com/openid/server.bml</URI>
18
+ </Service>
19
+
20
+ </XRD>
21
+ </xrds:XRDS>
@@ -0,0 +1,14 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xrds:XRDS xmlns:xrds="xri://$xrds"
3
+ xmlns="xri://$xrd*($v*2.0)"
4
+ xmlns:openid="http://openid.net/xmlns/1.0"
5
+ >
6
+ <XRD>
7
+
8
+ <Service priority="10">
9
+ <Type>http://openid.net/signon/1.0</Type>
10
+ <URI>http://vroom.unittest/server</URI>
11
+ <openid:Delegate>http://smoker.myopenid.com/</openid:Delegate>
12
+ </Service>
13
+ </XRD>
14
+ </xrds:XRDS>
@@ -0,0 +1,12 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xrds:XRDS xmlns:xrds="xri://$xrds"
3
+ xmlns="xri://$xrd*($v*2.0)"
4
+ xmlns:openid="http://openid.net/xmlns/1.0"
5
+ >
6
+ <XRD>
7
+ <Service priority="10">
8
+ <Type>http://specs.openid.net/auth/2.0/server</Type>
9
+ <URI>http://www.myopenid.com/server</URI>
10
+ </Service>
11
+ </XRD>
12
+ </xrds:XRDS>
@@ -0,0 +1,13 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xrds:XRDS xmlns:xrds="xri://$xrds"
3
+ xmlns="xri://$xrd*($v*2.0)"
4
+ xmlns:openid="http://openid.net/xmlns/1.0"
5
+ >
6
+ <XRD>
7
+ <Service>
8
+ <Type>http://specs.openid.net/auth/2.0/server</Type>
9
+ <URI>http://www.myopenid.com/server</URI>
10
+ <openid:Delegate>http://smoker.myopenid.com/</openid:Delegate>
11
+ </Service>
12
+ </XRD>
13
+ </xrds:XRDS>
@@ -0,0 +1,11 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <xrds:XRDS xmlns:xrds="xri://$xrds"
3
+ xmlns="xri://$xrd*($v*2.0)"
4
+ >
5
+ <XRD>
6
+ <Service priority="10">
7
+ <Type>http://openid.net/signon/1.0</Type>
8
+ <URI>http://www.myopenid.com/server</URI>
9
+ </Service>
10
+ </XRD>
11
+ </xrds:XRDS>
@@ -0,0 +1,25 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <XRDS ref="xri://=j3h" xmlns="xri://$xrds">
3
+ <XRD xmlns="xri://$xrd*($v*2.0)">
4
+ <Query>*j3h</Query>
5
+ <Status code="100"/>
6
+ <Expires>2007-11-15T01:35:07.000Z</Expires>
7
+ <ProviderID>xri://=</ProviderID>
8
+ <LocalID priority="10">!378C.2F61.25D6.F7EB</LocalID>
9
+ <CanonicalID priority="10">=!378C.2F61.25D6.F7EB</CanonicalID>
10
+ <Service priority="10">
11
+ <Type select="true">http://openid.net/signon/1.0</Type>
12
+ <ProviderID/>
13
+ <URI append="qxri" priority="2">http://2idi.com/openid/</URI>
14
+ <URI append="qxri" priority="1">https://2idi.com/openid/</URI>
15
+ </Service>
16
+ <Service priority="10">
17
+ <Type select="true">xri://+i-service*(+contact)*($v*1.0)</Type>
18
+ <Type match="default"/>
19
+ <ProviderID/>
20
+ <Path select="true">(+contact)</Path>
21
+ <Path match="null"/>
22
+ <URI append="qxri" priority="1">http://2idi.com/contact/</URI>
23
+ </Service>
24
+ </XRD>
25
+ </XRDS>
@@ -0,0 +1,12 @@
1
+ delegated-20060809.xrds - results from proxy.xri.net, determined by
2
+ Drummond and Kevin to be incorrect.
3
+ delegated-20060809-r1.xrds - Drummond's 1st correction
4
+ delegated-20060809-r2.xrds - Drummond's 2nd correction
5
+
6
+ spoofs: keturn's (=!E4)'s attempts to log in with Drummond's i-number (=!D2)
7
+ spoof1.xrds
8
+ spoof2.xrds
9
+ spoof3.xrds - attempt to steal @!C0!D2 by having "at least one" CanonicalID
10
+ match the $res service ProviderID.
11
+
12
+ ref.xrds - resolving @ootao*test.ref, which refers to a neustar XRI.
@@ -0,0 +1,34 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <XRDS ref="xri://@ootao*test1" xmlns="xri://$xrds">
3
+ <XRD xmlns="xri://$xrd*($v*2.0)">
4
+ <Query>*ootao</Query>
5
+ <Status code="100"/>
6
+ <Expires>2006-08-09T22:07:13.000Z</Expires>
7
+ <ProviderID>xri://@</ProviderID>
8
+ <LocalID priority="10">!5BAD.2AA.3C72.AF46</LocalID>
9
+ <CanonicalID priority="10">@!5BAD.2AA.3C72.AF46</CanonicalID>
10
+ <Service priority="10">
11
+ <Type>xri://$res*auth*($v*2.0)</Type>
12
+ <ProviderID>xri://!!1003</ProviderID>
13
+ <MediaType>application/xrds+xml;trust=none</MediaType>
14
+ <URI priority="10">http://resolve.ezibroker.net/resolve/@ootao/</URI>
15
+ </Service>
16
+ <Service priority="10">
17
+ <Type select="true">http://openid.net/signon/1.0</Type>
18
+ <ProviderID/>
19
+ <URI append="qxri" priority="1">https://linksafe.ezibroker.net/server/</URI>
20
+ </Service>
21
+ </XRD>
22
+ <XRD xmlns="xri://$xrd*($v*2.0)">
23
+ <Query>*test1</Query>
24
+ <Status code="100">SUCCESS</Status>
25
+ <ProviderID>xri://!!1003</ProviderID>
26
+ <LocalID>!0000.0000.3B9A.CA01</LocalID>
27
+ <CanonicalID>@!5BAD.2AA.3C72.AF46!0000.0000.3B9A.CA01</CanonicalID>
28
+ <Service>
29
+ <Type select="true">http://openid.net/signon/1.0</Type>
30
+ <ProviderID/>
31
+ <URI append="qxri" priority="1">https://linksafe.ezibroker.net/server/</URI>
32
+ </Service>
33
+ </XRD>
34
+ </XRDS>
@@ -0,0 +1,34 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <XRDS ref="xri://@ootao*test1" xmlns="xri://$xrds">
3
+ <XRD xmlns="xri://$xrd*($v*2.0)">
4
+ <Query>*ootao</Query>
5
+ <Status code="100"/>
6
+ <Expires>2006-08-09T22:07:13.000Z</Expires>
7
+ <ProviderID>xri://@</ProviderID>
8
+ <LocalID priority="10">!5BAD.2AA.3C72.AF46</LocalID>
9
+ <CanonicalID priority="10">@!5BAD.2AA.3C72.AF46</CanonicalID>
10
+ <Service priority="10">
11
+ <Type>xri://$res*auth*($v*2.0)</Type>
12
+ <ProviderID>xri://@!5BAD.2AA.3C72.AF46</ProviderID>
13
+ <MediaType>application/xrds+xml;trust=none</MediaType>
14
+ <URI priority="10">http://resolve.ezibroker.net/resolve/@ootao/</URI>
15
+ </Service>
16
+ <Service priority="10">
17
+ <Type select="true">http://openid.net/signon/1.0</Type>
18
+ <ProviderID/>
19
+ <URI append="qxri" priority="1">https://linksafe.ezibroker.net/server/</URI>
20
+ </Service>
21
+ </XRD>
22
+ <XRD xmlns="xri://$xrd*($v*2.0)">
23
+ <Query>*test1</Query>
24
+ <Status code="100">SUCCESS</Status>
25
+ <ProviderID>xri://@!5BAD.2AA.3C72.AF46</ProviderID>
26
+ <LocalID>!0000.0000.3B9A.CA01</LocalID>
27
+ <CanonicalID>@!5BAD.2AA.3C72.AF46!0000.0000.3B9A.CA01</CanonicalID>
28
+ <Service>
29
+ <Type select="true">http://openid.net/signon/1.0</Type>
30
+ <ProviderID/>
31
+ <URI append="qxri" priority="1">https://linksafe.ezibroker.net/server/</URI>
32
+ </Service>
33
+ </XRD>
34
+ </XRDS>