You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
27 lines
882 B
27 lines
882 B
diff --git a/jinja2/bccache.py b/jinja2/bccache.py |
|
index 09ff845..c31a905 100644 |
|
--- a/jinja2/bccache.py |
|
+++ b/jinja2/bccache.py |
|
@@ -16,6 +16,7 @@ |
|
""" |
|
from os import path, listdir |
|
import os |
|
+import stat |
|
import sys |
|
import errno |
|
import marshal |
|
@@ -230,6 +231,14 @@ class FileSystemBytecodeCache(BytecodeCache): |
|
if e.errno != errno.EEXIST: |
|
raise |
|
|
|
+ if os.lstat(actual_dir).st_uid != os.getuid(): |
|
+ raise RuntimeError('Someone else owns temp directory with your ' |
|
+ 'uid. You need to explicitly provide another.') |
|
+ |
|
+ if stat.S_IMODE(os.lstat(actual_dir).st_mode) != 448: |
|
+ raise RuntimeError('Bad permission flags on temp directory, ' |
|
+ 'shoud be 0700. You need to fix this.') |
|
+ |
|
return actual_dir |
|
|
|
def _get_cache_filename(self, bucket):
|
|
|