[O] Protect against path traversal

This commit is contained in:
Azalea
2025-02-26 21:20:54 -05:00
parent 6bdfc69668
commit 5adbcc0aff
2 changed files with 8 additions and 3 deletions

View File

@@ -19,6 +19,7 @@ import org.springframework.http.HttpHeaders
import org.springframework.http.HttpStatus
import org.springframework.http.ResponseEntity.BodyBuilder
import org.springframework.web.bind.annotation.*
import java.io.File
import java.lang.reflect.Field
import java.nio.charset.StandardCharsets
import java.nio.file.Path
@@ -235,6 +236,7 @@ fun <T> Lock.maybeLock(block: () -> T) = if (tryLock()) try { block() } finally
fun path(part1: Str, vararg parts: Str) = Path.of(part1, *parts)
fun Str.path() = Path.of(this)
operator fun Path.div(part: Str) = resolve(part)
operator fun File.div(fileName: Str) = File(this, fileName)
fun Str.ensureEndingSlash() = if (endsWith('/')) this else "$this/"
fun <T: Any> T.logger() = LoggerFactory.getLogger(this::class.java)