nextcloud/3rdparty/Sabre/HTTP/AbstractAuth.php

112 lines
2.2 KiB
PHP

<?php
/**
* HTTP Authentication baseclass
*
* This class has the common functionality for BasicAuth and DigestAuth
*
* @package Sabre
* @subpackage HTTP
* @copyright Copyright (C) 2007-2011 Rooftop Solutions. All rights reserved.
* @author Evert Pot (http://www.rooftopsolutions.nl/)
* @license http://code.google.com/p/sabredav/wiki/License Modified BSD License
*/
abstract class Sabre_HTTP_AbstractAuth {
/**
* The realm will be displayed in the dialog boxes
*
* This identifier can be changed through setRealm()
*
* @var string
*/
protected $realm = 'SabreDAV';
/**
* HTTP response helper
*
* @var Sabre_HTTP_Response
*/
protected $httpResponse;
/**
* HTTP request helper
*
* @var Sabre_HTTP_Request
*/
protected $httpRequest;
/**
* __construct
*
*/
public function __construct() {
$this->httpResponse = new Sabre_HTTP_Response();
$this->httpRequest = new Sabre_HTTP_Request();
}
/**
* Sets an alternative HTTP response object
*
* @param Sabre_HTTP_Response $response
* @return void
*/
public function setHTTPResponse(Sabre_HTTP_Response $response) {
$this->httpResponse = $response;
}
/**
* Sets an alternative HTTP request object
*
* @param Sabre_HTTP_Request $request
* @return void
*/
public function setHTTPRequest(Sabre_HTTP_Request $request) {
$this->httpRequest = $request;
}
/**
* Sets the realm
*
* The realm is often displayed in authentication dialog boxes
* Commonly an application name displayed here
*
* @param string $realm
* @return void
*/
public function setRealm($realm) {
$this->realm = $realm;
}
/**
* Returns the realm
*
* @return string
*/
public function getRealm() {
return $this->realm;
}
/**
* Returns an HTTP 401 header, forcing login
*
* This should be called when username and password are incorrect, or not supplied at all
*
* @return void
*/
abstract public function requireLogin();
}