Document FileStore design, add some polish

Bug #718035 reported by Jason Gerard DeRose
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Dmedia
Fix Released
High
Jason Gerard DeRose

Bug Description

The dmedia.filestore.FileStore class is really the heart of dmedia. The FileStore API is getting quite mature and is nearly feature complete, so it's a good time to add some polish and really document the design.

On the design, I need to document:

 1) Decision to use base32-encoded document IDs and how that relates to FileStore
 2) Decision to include a file extension in the canonical filenames
 3) More clearly explain security considerations of FileStore design

I'm also going to reorder the FileStore methods to make things clearer, will reorder into:

 1) methods used to prevent path traversal outside of FileStore.base
 2) methods for dealing with files inside the filestore, testing if files are inside filestore
 3) methods for dealing with the temporary files used to stage new files to be placed in the filestore

And probably some other cleanup that hasn't come to mind

Tags: filestore

Related branches

Changed in dmedia:
status: In Progress → Fix Committed
Changed in dmedia:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.