Merge pull request #10422 from owncloud/dav-disablerangerequestwhennotsupported
Return whole file if range request cannot be granted due to encryption
This commit is contained in:
commit
36c88e2830
|
@ -33,6 +33,11 @@ class OC_Connector_Sabre_Server extends Sabre\DAV\Server {
|
||||||
*/
|
*/
|
||||||
private $overLoadedUri = null;
|
private $overLoadedUri = null;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var boolean
|
||||||
|
*/
|
||||||
|
private $ignoreRangeHeader = false;
|
||||||
|
|
||||||
public function getRequestUri() {
|
public function getRequestUri() {
|
||||||
|
|
||||||
if (!is_null($this->overLoadedUri)) {
|
if (!is_null($this->overLoadedUri)) {
|
||||||
|
@ -59,6 +64,23 @@ class OC_Connector_Sabre_Server extends Sabre\DAV\Server {
|
||||||
return $result;
|
return $result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function getHTTPRange() {
|
||||||
|
if ($this->ignoreRangeHeader) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
return parent::getHTTPRange();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function httpGet($uri) {
|
||||||
|
$range = $this->getHTTPRange();
|
||||||
|
|
||||||
|
if (OC_App::isEnabled('files_encryption') && $range) {
|
||||||
|
// encryption does not support range requests
|
||||||
|
$this->ignoreRangeHeader = true;
|
||||||
|
}
|
||||||
|
return parent::httpGet($uri);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @see \Sabre\DAV\Server
|
* @see \Sabre\DAV\Server
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in New Issue