1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
|
# IVLE Configuration File
# conf/app/server.py
# Configuration for Server ('serve') app.
# These should not need to be modified by admins unless new languages become
# supported.
# Note that this configuration file uses mime types to identify files.
# conf/mimetypes.py may need to be modified to configure mime types outside of
# the system's default mime types.
# Mapping mime types to interpreters
# Interpreters are built-in to IVLE, and identified by their string names.
# Available interpreters are:
# cgi-generic
# Runs any executable file as a CGI program
# cgi-python
# Runs a Python script as a CGI program
# python-server-page
# Runs a Python Server Page (psp) file
interpreters = {
"text/x-python" : "cgi-python",
"text/x-python-server-page" : "python-server-page",
}
# Non-interpreted files fall back to either being served directly, or
# returning a 403 Forbidden.
# This decision can either be made with a blacklist or a whitelist.
blacklist_served_filetypes = False
# blacklist_served_filetypes = False causes IVLE to disallow all filetypes by
# default, and use served_filetypes_whitelist for exceptions.
# blacklist_served_filetypes = True causes IVLE to allow all filetypes by
# default, and use served_filetypes_blacklist for exceptions.
# The whitelist/blacklist dictionaries are sets of mime types to allow or
# disallow respectively.
served_filetypes_whitelist = set([
"application/ecmascript",
"application/octet-stream",
"application/pdf",
"application/postscript",
"application/javascript",
"application/x-javascript", # Old versions of Python produce this.
"application/json",
"application/xhtml+xml",
"application/xml",
"application/zip",
"audio/x-wav",
"audio/mpeg",
"audio/midi",
"image/gif",
"image/jpeg",
"image/png",
"image/svg+xml",
"text/css",
"text/csv",
"text/csv",
"text/html",
"text/plain",
"text/xml",
])
served_filetypes_blacklist = set([
"application/x-executable",
])
|