浏览代码

rpc: limit chunked requests (#16343)

Felix Lange 7 年之前
父节点
当前提交
e9b5e22ad1
共有 1 个文件被更改,包括 2 次插入1 次删除
  1. 2 1
      rpc/http.go

+ 2 - 1
rpc/http.go

@@ -169,7 +169,8 @@ func (srv *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
 	// All checks passed, create a codec that reads direct from the request body
 	// untilEOF and writes the response to w and order the server to process a
 	// single request.
-	codec := NewJSONCodec(&httpReadWriteNopCloser{r.Body, w})
+	body := io.LimitReader(r.Body, maxRequestContentLength)
+	codec := NewJSONCodec(&httpReadWriteNopCloser{body, w})
 	defer codec.Close()
 
 	w.Header().Set("content-type", contentType)