diff --git a/jetty-http/src/main/java/org/eclipse/jetty/http/MultiPartFormInputStream.java b/jetty-http/src/main/java/org/eclipse/jetty/http/MultiPartFormInputStream.java index badefa3e6f1b..03f54590320c 100644 --- a/jetty-http/src/main/java/org/eclipse/jetty/http/MultiPartFormInputStream.java +++ b/jetty-http/src/main/java/org/eclipse/jetty/http/MultiPartFormInputStream.java @@ -42,7 +42,6 @@ import org.eclipse.jetty.util.BufferUtil; import org.eclipse.jetty.util.ByteArrayOutputStream2; -import org.eclipse.jetty.util.IO; import org.eclipse.jetty.util.LazyList; import org.eclipse.jetty.util.MultiException; import org.eclipse.jetty.util.MultiMap; @@ -152,8 +151,8 @@ protected void write(byte[] bytes, int offset, int length) throws IOException protected void createFile() throws IOException { - Path parent = MultiPartFormInputStream.this._tmpDir.toPath(); - Path tempFile = Files.createTempFile(parent, "MultiPart", "", IO.getUserOnlyFileAttribute(parent)); + // Create temp file in Context tempDir (which is user private already) + Path tempFile = Files.createTempFile(MultiPartFormInputStream.this._tmpDir.toPath(), "MultiPart", ""); _file = tempFile.toFile(); OutputStream fos = Files.newOutputStream(tempFile, StandardOpenOption.WRITE); diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/IO.java b/jetty-util/src/main/java/org/eclipse/jetty/util/IO.java index a4cb3a3cb8ac..9c0c71a065b8 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/IO.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/IO.java @@ -474,7 +474,7 @@ public static void close(Writer writer) * For Windows / Dos, that means {@link java.nio.file.attribute.DosFileAttributes} *

*/ - public static FileAttribute[] getUserOnlyFileAttribute(Path path) + public static FileAttribute[] getUserPrivateFileAttribute(Path path) { FileStore fileStore = null; try diff --git a/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartInputStreamParser.java b/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartInputStreamParser.java index 97e5ec7563a4..4c2c685501a2 100644 --- a/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartInputStreamParser.java +++ b/jetty-util/src/main/java/org/eclipse/jetty/util/MultiPartInputStreamParser.java @@ -190,8 +190,8 @@ protected void write(byte[] bytes, int offset, int length) protected void createFile() throws IOException { - Path parent = MultiPartInputStreamParser.this._tmpDir.toPath(); - Path tempFile = Files.createTempFile(parent, "MultiPart", "", IO.getUserOnlyFileAttribute(parent)); + // Create temp file in Context tempDir (which is user private already) + Path tempFile = Files.createTempFile(MultiPartInputStreamParser.this._tmpDir.toPath(), "MultiPart", ""); _file = tempFile.toFile(); OutputStream fos = Files.newOutputStream(tempFile, StandardOpenOption.WRITE); diff --git a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebInfConfiguration.java b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebInfConfiguration.java index 357bb241244d..1cf5b756964f 100644 --- a/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebInfConfiguration.java +++ b/jetty-webapp/src/main/java/org/eclipse/jetty/webapp/WebInfConfiguration.java @@ -508,7 +508,7 @@ public void makeTempDirectory(File parent, WebAppContext context) else { //ensure file will always be unique by appending random digits - tmpDir = Files.createTempDirectory(parent.toPath(), temp, IO.getUserOnlyFileAttribute(parent.toPath())).toFile(); + tmpDir = Files.createTempDirectory(parent.toPath(), temp, IO.getUserPrivateFileAttribute(parent.toPath())).toFile(); } configureTempDirectory(tmpDir, context);