summaryrefslogtreecommitdiff
path: root/lib/twitterapi.php
diff options
context:
space:
mode:
authorZach Copley <zach@status.net>2009-09-25 16:58:35 -0700
committerZach Copley <zach@status.net>2009-09-25 16:58:35 -0700
commitde5ff19713a990af197330dd8e4314de465ffe76 (patch)
tree1578bbdfbbfe6afcc385537840b85ad8ca4165bf /lib/twitterapi.php
parented9ba9d945e4f50812022a7489fc8135f4e49846 (diff)
Moved basic auth stuff into its own classes
Diffstat (limited to 'lib/twitterapi.php')
-rw-r--r--lib/twitterapi.php81
1 files changed, 0 insertions, 81 deletions
diff --git a/lib/twitterapi.php b/lib/twitterapi.php
index 959b0981a..5cf666668 100644
--- a/lib/twitterapi.php
+++ b/lib/twitterapi.php
@@ -1205,85 +1205,4 @@ class TwitterapiAction extends Action
}
}
- function checkBasicAuthUser()
- {
- $this->basicAuthProcessHeader();
-
- if (!isset($this->auth_user)) {
- header('WWW-Authenticate: Basic realm="StatusNet API"');
-
- // show error if the user clicks 'cancel'
-
- $this->showBasicAuthError();
- return false;
-
- } else {
- $nickname = $this->auth_user;
- $password = $this->auth_pw;
- $this->auth_user = common_check_user($nickname, $password);
-
- if (empty($this->auth_user)) {
-
- // basic authentication failed
-
- list($proxy, $ip) = common_client_ip();
- common_log(LOG_WARNING,
- "Failed API auth attempt, nickname = $nickname, proxy = $proxy, ip = $ip.");
- $this->showBasicAuthError();
- return false;
- }
- }
- return true;
- }
-
- function basicAuthProcessHeader()
- {
- if (isset($_SERVER['AUTHORIZATION']) || isset($_SERVER['HTTP_AUTHORIZATION'])) {
- $authorization_header = isset($_SERVER['HTTP_AUTHORIZATION'])? $_SERVER['HTTP_AUTHORIZATION'] : $_SERVER['AUTHORIZATION'];
- }
-
- if (isset($_SERVER['PHP_AUTH_USER'])) {
- $this->auth_user = $_SERVER['PHP_AUTH_USER'];
- $this->auth_pw = $_SERVER['PHP_AUTH_PW'];
- } elseif (isset($authorization_header) && strstr(substr($authorization_header, 0, 5), 'Basic')) {
- // decode the HTTP_AUTHORIZATION header on php-cgi server self
- // on fcgid server the header name is AUTHORIZATION
-
- $auth_hash = base64_decode(substr($authorization_header, 6));
- list($this->auth_user, $this->auth_pw) = explode(':', $auth_hash);
-
- // set all to null on a empty basic auth request
- if ($this->auth_user == "") {
- $this->auth_user = null;
- $this->auth_pw = null;
- }
- } else {
- $this->auth_user = null;
- $this->auth_pw = null;
- }
- }
-
- function showBasicAuthError()
- {
- header('HTTP/1.1 401 Unauthorized');
- $msg = 'Could not authenticate you.';
-
- if ($this->arg('format') == 'xml') {
- header('Content-Type: application/xml; charset=utf-8');
- $this->startXML();
- $this->elementStart('hash');
- $this->element('error', null, $msg);
- $this->element('request', null, $_SERVER['REQUEST_URI']);
- $this->elementEnd('hash');
- $this->endXML();
- } elseif ($this->arg('format') == 'json') {
- header('Content-Type: application/json; charset=utf-8');
- $error_array = array('error' => $msg, 'request' => $_SERVER['REQUEST_URI']);
- print(json_encode($error_array));
- } else {
- header('Content-type: text/plain');
- print "$msg\n";
- }
- }
-
}