diff options
Diffstat (limited to 'Auth')
-rw-r--r-- | Auth/Yadis/XRI.php | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/Auth/Yadis/XRI.php b/Auth/Yadis/XRI.php index d5758cf..4e34623 100644 --- a/Auth/Yadis/XRI.php +++ b/Auth/Yadis/XRI.php @@ -15,7 +15,7 @@ require_once 'Auth/OpenID.php'; function Auth_Yadis_getDefaultProxy() { - return 'http://proxy.xri.net/'; + return 'http://xri.net/'; } function Auth_Yadis_getXRIAuthorities() @@ -199,7 +199,7 @@ function Auth_Yadis_getCanonicalID($iname, $xrds) return false; } - $canonicalID = $canonicalID_nodes[count($canonicalID_nodes) - 1]; + $canonicalID = $canonicalID_nodes[0]; $canonicalID = Auth_Yadis_XRI($parser->content($canonicalID)); $childID = $canonicalID; @@ -208,13 +208,13 @@ function Auth_Yadis_getCanonicalID($iname, $xrds) $xrd = $xrd_list[$i]; $parent_sought = substr($childID, 0, strrpos($childID, '!')); - $parent_list = array(); - - foreach ($parser->evalXPath('xrd:CanonicalID', $xrd) as $c) { - $parent_list[] = Auth_Yadis_XRI($parser->content($c)); + $parentCID = $parser->evalXPath('xrd:CanonicalID', $xrd); + if (!$parentCID) { + return false; } + $parentCID = Auth_Yadis_XRI($parser->content($parentCID[0])); - if (!in_array($parent_sought, $parent_list)) { + if (strcasecmp($parent_sought, $parentCID)) { // raise XRDSFraud. return false; } @@ -231,4 +231,4 @@ function Auth_Yadis_getCanonicalID($iname, $xrds) return $canonicalID; } -?>
\ No newline at end of file +?> |