Skip to content

Commit a70335d

Browse files
committed
Check calendar URI length before creation
Signed-off-by: Anna Larch <anna@nextcloud.com>
1 parent dfbfe5a commit a70335d

1 file changed

Lines changed: 8 additions & 0 deletions

File tree

apps/dav/lib/CalDAV/CalDavBackend.php

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@
4040

4141
use DateTime;
4242
use DateTimeInterface;
43+
use OC\DB\Exceptions\DbalException;
4344
use OCA\DAV\AppInfo\Application;
4445
use OCA\DAV\Connector\Sabre\Principal;
4546
use OCA\DAV\DAV\Sharing\Backend;
@@ -64,6 +65,7 @@
6465
use OCA\DAV\Events\SubscriptionCreatedEvent;
6566
use OCA\DAV\Events\SubscriptionDeletedEvent;
6667
use OCA\DAV\Events\SubscriptionUpdatedEvent;
68+
use OCP\Calendar\Exceptions\CalendarException;
6769
use OCP\DB\Exception;
6870
use OCP\DB\QueryBuilder\IQueryBuilder;
6971
use OCP\EventDispatcher\IEventDispatcher;
@@ -770,8 +772,14 @@ public function getSubscriptionById($subscriptionId) {
770772
* @param string $calendarUri
771773
* @param array $properties
772774
* @return int
775+
*
776+
* @throws CalendarException
773777
*/
774778
public function createCalendar($principalUri, $calendarUri, array $properties) {
779+
if(strlen($calendarUri) > 255) {
780+
throw new CalendarException('URI too long. Calendar not created');
781+
}
782+
775783
$values = [
776784
'principaluri' => $this->convertPrincipal($principalUri, true),
777785
'uri' => $calendarUri,

0 commit comments

Comments
 (0)