mirror of
https://github.com/EngineHub/WorldEdit.git
synced 2024-12-21 04:49:51 +08:00
Add config option to allow symbolic links for files.
This commit is contained in:
parent
a7b4913f6c
commit
a54c7437fc
@ -107,6 +107,7 @@ public abstract class LocalConfiguration {
|
||||
public int butcherDefaultRadius = -1;
|
||||
public int butcherMaxRadius = -1;
|
||||
public boolean allowExtraDataValues = false;
|
||||
public boolean allowSymlinks = false;
|
||||
|
||||
/**
|
||||
* Loads the configuration.
|
||||
|
@ -825,7 +825,7 @@ private File getSafeFile(LocalPlayer player, File dir, String filename,
|
||||
String filePath = f.getCanonicalPath();
|
||||
String dirPath = dir.getCanonicalPath();
|
||||
|
||||
if (!filePath.substring(0, dirPath.length()).equals(dirPath)) {
|
||||
if (!filePath.substring(0, dirPath.length()).equals(dirPath) && !config.allowSymlinks) {
|
||||
throw new FilenameResolutionException(filename,
|
||||
"Path is outside allowable root");
|
||||
}
|
||||
|
@ -93,6 +93,8 @@ public void load() {
|
||||
|
||||
saveDir = config.getString("saving.dir", saveDir);
|
||||
|
||||
allowSymlinks = config.getBoolean("files.allow-symbolic-links", false);
|
||||
|
||||
disallowedBlocks = new HashSet<Integer>(config.getIntList("limits.disallowed-blocks", null));
|
||||
|
||||
allowedDataCycleBlocks = new HashSet<Integer>(config.getIntList("limits.allowed-data-cycle-blocks", null));
|
||||
|
@ -16,6 +16,7 @@
|
||||
#
|
||||
|
||||
limits:
|
||||
allow-extra-data-values: false
|
||||
max-blocks-changed:
|
||||
default: -1
|
||||
maximum: -1
|
||||
@ -56,6 +57,9 @@ scripting:
|
||||
saving:
|
||||
dir: schematics
|
||||
|
||||
files:
|
||||
allow-symbolic-links: false
|
||||
|
||||
history:
|
||||
size: 15
|
||||
expiration: 10
|
||||
|
Loading…
Reference in New Issue
Block a user