64
64
# In the local file system, where IVLE is actually installed.
65
65
# This directory should contain the "www" and "bin" directories."""))
66
66
config_options.append(ConfigOption("jail_base", "/home/informatics/jails",
67
"""Location of Directories
68
=======================
69
Root directory where the jails (containing user files) are stored
70
(on the local file system):""",
67
"""Location of jail mountpoints
68
============================
69
Root directory where the user jails will be mounted, and the non-user
70
components of the jails will be stored (on the local file system):""",
72
# In the local file system, where the student/user jails will be mounted.
73
# Only a single copy of the jail's system components will be stored here -
74
# all user jails will be virtually mounted here."""))
75
config_options.append(ConfigOption("jail_system", "/home/informatics/jails/__base__",
76
"""Location of system jail components
77
==================================
78
Directory where the template system jail will be stored.""",
80
# In the local file system, where the template system jail will be stored."""))
81
config_options.append(ConfigOption("jail_src_base", "/home/informatics/jailssrc",
82
"""Location of user jail components
83
================================
84
Root directory where the user components of the jails will be stored (on the
85
local file system):""",
72
87
# In the local file system, where are the student/user file spaces located.
73
88
# The user jails are expected to be located immediately in subdirectories of
89
# this location. Note that no complete jails reside here - only user
75
91
config_options.append(ConfigOption("subjects_base",
76
92
"/home/informatics/subjects",
77
93
"""Root directory where the subject directories (containing worksheets
408
424
* to take effect.
427
#define IVLE_AUFS_JAILS
411
429
/* In the local file system, where are the jails located.
412
430
* The trampoline does not allow the creation of a jail anywhere besides
413
431
* jail_base or a subdirectory of jail_base.
415
433
static const char* jail_base = "%s";
434
static const char* jail_src_base = "%s";
435
static const char* jail_system = "%s";
417
437
/* Which user IDs are allowed to run the trampoline.
418
438
* This list should be limited to the web server user.
419
439
* (Note that root is an implicit member of this list).
421
441
static const int allowed_uids[] = { %s };
422
""" % (repr(jail_base)[1:-1], repr(allowed_uids_list)[1:-1]))
442
""" % (repr(jail_base)[1:-1], repr(jail_src_base)[1:-1],
443
repr(jail_system)[1:-1], repr(allowed_uids_list)[1:-1]))
423
444
# Note: The above uses PYTHON reprs, not C reprs
424
445
# However they should be the same with the exception of the outer
425
446
# characters, which are stripped off and replaced