diff --git a/apps/dav/lib/Server.php b/apps/dav/lib/Server.php index 44ba036de8..3dd54bd2fc 100644 --- a/apps/dav/lib/Server.php +++ b/apps/dav/lib/Server.php @@ -60,11 +60,13 @@ use OCA\DAV\Connector\Sabre\SharesPlugin; use OCA\DAV\Connector\Sabre\TagsPlugin; use OCA\DAV\DAV\CustomPropertiesBackend; use OCA\DAV\DAV\PublicAuth; +use OCA\DAV\Events\SabrePluginAuthInitEvent; use OCA\DAV\Files\BrowserErrorPagePlugin; use OCA\DAV\Files\LazySearchBackend; use OCA\DAV\Provisioning\Apple\AppleProvisioningPlugin; use OCA\DAV\SystemTag\SystemTagPlugin; use OCA\DAV\Upload\ChunkingPlugin; +use OCP\EventDispatcher\IEventDispatcher; use OCP\IRequest; use OCP\SabrePluginEvent; use Sabre\CardDAV\VCFExportPlugin; @@ -88,6 +90,8 @@ class Server { $this->baseUri = $baseUri; $logger = \OC::$server->getLogger(); $dispatcher = \OC::$server->getEventDispatcher(); + /** @var IEventDispatcher $newDispatcher */ + $newDispatcher = \OC::$server->query(IEventDispatcher::class); $root = new RootCollection(); $this->server = new \OCA\DAV\Connector\Sabre\Server(new CachingTree($root)); @@ -118,6 +122,9 @@ class Server { $event = new SabrePluginEvent($this->server); $dispatcher->dispatch('OCA\DAV\Connector\Sabre::authInit', $event); + $event = new SabrePluginAuthInitEvent($this->server); + $newDispatcher->dispatchTyped($event); + $bearerAuthBackend = new BearerAuth( \OC::$server->getUserSession(), \OC::$server->getSession(),