summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarin Ivanov <[email protected]>2026-01-18 21:38:23 +0200
committerMarin Ivanov <[email protected]>2026-01-18 21:38:23 +0200
commitb117769ad9648240fbcf7500a8039ebe297aafe7 (patch)
treed8a0c4f260b343c9299e106df1736c2af90e9fd8
parent0e13bf7d9286b8deb170a298fbef09bf6a2f6570 (diff)
fail fast on multipart parsing error
-rw-r--r--main.go7
1 files changed, 6 insertions, 1 deletions
diff --git a/main.go b/main.go
index 597726b..ac52a8b 100644
--- a/main.go
+++ b/main.go
@@ -190,7 +190,12 @@ func (s *Server) post(w http.ResponseWriter, r *http.Request) {
r.Body = http.MaxBytesReader(w, r.Body, s.maxSize) // impose maximum request size
mimeType := r.Header.Get("content-type")
if strings.HasPrefix(mimeType, "multipart/form-data;") {
- r.ParseMultipartForm(1 << 23) // max 8MB in RAM
+ // max 8MB in RAM for multipart parsing
+ if err := r.ParseMultipartForm(1 << 23); err != nil {
+ log.Print("Error parse multipart form: ", err)
+ w.WriteHeader(http.StatusInternalServerError)
+ return
+ }
textName, err := s.postText(r)
if err != nil {
log.Print("Error text upload: ", err)