summaryrefslogtreecommitdiffstats
path: root/Auth/OpenID
diff options
context:
space:
mode:
authortailor <dag@janrain.com>2008-05-27 00:10:24 +0000
committertailor <dag@janrain.com>2008-05-27 00:10:24 +0000
commitad00026316d8f5344e5fb206311796739810a6dc (patch)
tree138b19530fc4fd873b2260279a7cfc5c93545d5a /Auth/OpenID
parentcf2b16b8dc2a030751a2bc0e6c39152ef89dd66a (diff)
downloadphp-openid-ad00026316d8f5344e5fb206311796739810a6dc.zip
php-openid-ad00026316d8f5344e5fb206311796739810a6dc.tar.gz
php-openid-ad00026316d8f5344e5fb206311796739810a6dc.tar.bz2
[project @ Send all fields in check_authentication, not just signed ones. (OpenID 2 compliance)]
Diffstat (limited to 'Auth/OpenID')
-rw-r--r--Auth/OpenID/Consumer.php33
1 files changed, 4 insertions, 29 deletions
diff --git a/Auth/OpenID/Consumer.php b/Auth/OpenID/Consumer.php
index 3619e5a..0d276f0 100644
--- a/Auth/OpenID/Consumer.php
+++ b/Auth/OpenID/Consumer.php
@@ -1323,43 +1323,18 @@ class Auth_OpenID_GenericConsumer {
function _createCheckAuthRequest($message)
{
$signed = $message->getArg(Auth_OpenID_OPENID_NS, 'signed');
- if ($signed === null) {
- return null;
- }
-
- $whitelist = array('assoc_handle', 'sig',
- 'signed', 'invalidate_handle');
-
- $check_args = array();
-
- foreach ($whitelist as $k) {
- $val = $message->getArg(Auth_OpenID_OPENID_NS, $k);
- if ($val !== null) {
- $check_args[$k] = $val;
- }
- }
-
- $signed = $message->getArg(Auth_OpenID_OPENID_NS,
- 'signed');
-
if ($signed) {
foreach (explode(',', $signed) as $k) {
- if ($k == 'ns') {
- $check_args['ns'] = $message->getOpenIDNamespace();
- continue;
- }
-
$value = $message->getAliasedArg($k);
if ($value === null) {
return null;
}
-
- $check_args[$k] = $value;
}
}
-
- $check_args['mode'] = 'check_authentication';
- return Auth_OpenID_Message::fromOpenIDArgs($check_args);
+ $ca_message = $message->copy();
+ $ca_message->setArg(Auth_OpenID_OPENID_NS, 'mode',
+ 'check_authentication');
+ return $ca_message;
}
/**