summaryrefslogtreecommitdiffstats
path: root/Auth
diff options
context:
space:
mode:
Diffstat (limited to 'Auth')
-rw-r--r--Auth/OpenID/Consumer.php31
1 files changed, 21 insertions, 10 deletions
diff --git a/Auth/OpenID/Consumer.php b/Auth/OpenID/Consumer.php
index e3a6334..7aa897b 100644
--- a/Auth/OpenID/Consumer.php
+++ b/Auth/OpenID/Consumer.php
@@ -1319,6 +1319,26 @@ class Auth_OpenID_GenericConsumer {
return false;
}
+ /*
+ * Adapt a POST response to a Message.
+ *
+ * @param $response Result of a POST to an OpenID endpoint.
+ */
+ function _httpResponseToMessage($response, $server_url)
+ {
+ // Should this function be named Message.fromHTTPResponse instead?
+ $response_message = Auth_OpenID_Message::fromKVForm($response->body);
+
+ if ($response->status == 400) {
+ return Auth_OpenID_ServerErrorContainer::fromMessage(
+ $response_message);
+ } else if ($response->status != 200) {
+ return null;
+ }
+
+ return $response_message;
+ }
+
/**
* @access private
*/
@@ -1331,16 +1351,7 @@ class Auth_OpenID_GenericConsumer {
return null;
}
- $response_message = Auth_OpenID_Message::fromKVForm($resp->body);
-
- if ($resp->status == 400) {
- return Auth_OpenID_ServerErrorContainer::fromMessage(
- $response_message);
- } else if ($resp->status != 200) {
- return null;
- }
-
- return $response_message;
+ return $this->_httpResponseToMessage($resp, $server_url);
}
/**