req = web.recv() =>
{
let WebRequest {
- initial, initial_remaining, length_hint, body,
+ initial, initial_remaining, length_hint, mut body,
reply_to, warnings,
} = req.ok_or_else(|| anyhow!("webservers all shut down!"))?;
match async {
- // xxx size limit
-
- let whole_request = body.try_fold(
- initial.into_vec(),
- |mut w, by| async move { w.extend_from_slice(&by); Ok(w) },
+ let whole_request = read_limited_bytes(
+ usize::MAX /* xxx */,
+ initial,
+ length_hint,
+ &mut body
).await.context("read request body")?;
dbg!(whole_request.len());