CVSROOT:        /cvs
Module name:    src
Changes by:     r...@cvs.openbsd.org    2017/01/31 07:39:47

Modified files:
        usr.sbin/httpd : httpd.h server_file.c server_http.c 

Log message:
Reimplement httpd's support for byte ranges.

The previous implementation loaded all the output into a single output
buffer and used its size to determine the Content-Length of the body.

The new implementation calculates the body length first and writes the
individual ranges in an async way using the bufferevent mechanism.

This prevents httpd from using too much memory and applies the
watermark and throttling mechanisms to range requests.

Problem reported by Pierre Kim (pierre.kim.sec at gmail.com)

OK benno@ sunil@

Reply via email to