Trees | Indices | Help |
---|
|
1 # -*- Mode: Python; test-case-name: flumotion.test.test_component_providers -*- 2 # vi:si:et:sw=4:sts=4:ts=4 3 # 4 # Flumotion - a streaming media server 5 # Copyright (C) 2004,2005,2006,2007,2008 Fluendo, S.L. (www.fluendo.com). 6 # All rights reserved. 7 8 # This file may be distributed and/or modified under the terms of 9 # the GNU General Public License version 2 as published by 10 # the Free Software Foundation. 11 # This file is distributed without any warranty; without even the implied 12 # warranty of merchantability or fitness for a particular purpose. 13 # See "LICENSE.GPL" in the source distribution for more information. 14 15 # Licensees having purchased or holding a valid Flumotion Advanced 16 # Streaming Server license may use this file in accordance with the 17 # Flumotion Advanced Streaming Server Commercial License Agreement. 18 # See "LICENSE.Flumotion" in the source distribution for more information. 19 20 # Headers in this file shall remain intact. 21 22 import os 23 24 from flumotion.component.misc.httpserver import fileprovider 25 from flumotion.component.misc.httpserver import mimetypes 26 from flumotion.component.misc.httpserver.fileprovider import InsecureError 27 from flumotion.component.misc.httpserver.fileprovider import NotFoundError 28 2931 32 contentTypes = mimetypes.MimeTypes() 33 34 # Override parent class property by an attribute 35 mimeType = None 36 40 43 47 50 51 52 ## Protected Methods ## 537255 """ 56 @param name: the name of a child of the pointed directory 57 @type name: str 58 59 @return: the path of the child 60 @rtype: str 61 @raises InsecureError: if the specified name compromise security 62 """ 63 norm = os.path.normpath(name) 64 if os.sep in norm: 65 raise InsecureError("Child name '%s' contains one or more " 66 "directory separators" % (name, )) 67 childpath = os.path.abspath(os.path.join(self._path, norm)) 68 if not childpath.startswith(self._path): 69 raise InsecureError("Path '%s' is not a child of '%s'" 70 % (childpath, self._path)) 71 return childpath
Trees | Indices | Help |
---|
Generated by Epydoc 3.0.1 on Thu May 5 05:30:41 2011 | http://epydoc.sourceforge.net |