Project

General

Profile

Actions

Bug #61688

closed

Insufficient folder write permissions for offline storages

Added by Philipp Gampe about 10 years ago. Updated about 6 years ago.

Status:
Closed
Priority:
Should have
Assignee:
Category:
File Abstraction Layer (FAL)
Target version:
Start date:
2014-09-17
Due date:
% Done:

100%

Estimated time:
TYPO3 Version:
6.2
PHP Version:
5.5
Tags:
Complexity:
no-brainer
Is Regression:
No
Sprint Focus:

Description

If a folder is inaccessible, it is correctly marked as offline. However it is still included in the file list module folder tree.
This triggers an exception when FAL tries to create the temporary folder.

Omit offline or unbrowsable storages in the folder tree.

To test, create a storage for a nonexisting folder and create a mountpoint for this folder. Now assign this mountpoint to your user and see the folder tree crash.

Actions #1

Updated by Gerrit Code Review about 10 years ago

  • Status changed from Accepted to Under Review

Patch set 1 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/32836

Actions #2

Updated by Gerrit Code Review about 10 years ago

Patch set 2 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/32836

Actions #3

Updated by Philipp Gampe about 10 years ago

OK, here is what really happens.

The folder tree view asks the resource storage about the role of the folder for each mount, in order to find an icon for it.
The isRole() method asks the storage for the processing folder to get the name of the processing folder to compare it with the current folder name.

There are problems on several levels here, while only (1) is fixed by my patch:
1) Offline and unbrowsable storages are shown. This is not needed, because accessing them will lead to an error any way.
2) The getProcessingFolder() method actually tries to create the folder if it does not exist, even if the storage is offline and even if it might not be writeable at all.
3) The object is create on the fly instead of creating it with the storage object (constructor). It needs to be defined whether the processing folder must exist and if the existence can be determined at the time the storage object is created in memory. It needs to be defined too, what should happen if it does not exist and/or cannot be created.
4) Asking for an object where only the name of the folder needs to be know is an avoidable overhead. A method should be introduced to get the name directly or to ask the storage if any given identifier is the processing folder. I prefer the later.

To test my patch:
Create a storage and a file mount, add that mount to your user, mark it as offline and remove the associated folder from the disk. Then try to reload the folder tree.

Actions #4

Updated by Frans Saris almost 10 years ago

  • Sprint Focus set to On Location Sprint
Actions #5

Updated by Frans Saris almost 10 years ago

  • Status changed from Under Review to In Progress
Actions #6

Updated by Gerrit Code Review almost 10 years ago

  • Status changed from In Progress to Under Review

Patch set 3 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/32836

Actions #7

Updated by Gerrit Code Review almost 10 years ago

Patch set 4 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/32836

Actions #8

Updated by Gerrit Code Review almost 10 years ago

Patch set 1 for branch TYPO3_6-2 of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/36397

Actions #9

Updated by Gerrit Code Review almost 10 years ago

Patch set 2 for branch TYPO3_6-2 of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/36397

Actions #10

Updated by Frans Saris almost 10 years ago

  • Status changed from Under Review to Resolved
  • % Done changed from 0 to 100
Actions #11

Updated by Anja Leichsenring almost 9 years ago

  • Sprint Focus deleted (On Location Sprint)
Actions #12

Updated by Benni Mack about 6 years ago

  • Status changed from Resolved to Closed
Actions

Also available in: Atom PDF