Go to file
Jo-Philipp Wich b345461070 uhttpd: fix keep-alive bug (#20607, #20661)
The two commits

  5162e3b0ee7bd1d0fd6e75e1ca7993a1834b5291
	"allow request handlers to disable chunked reponses"

and

  618493e378e2239f0d30902e47adfa134e649fdc
	"file: disable chunked encoding for file responses"

broke the chunked transfer encoding handling for proc responses in keep-alive
connections that followed a file response with http status 204 or 304.

The effect of this bug is that cgi responses following a 204 or 304 one where
sent neither in chunked encoding nor with a content-length header, causing
browsers to stall until the keep alive timeout was reached.

Fix the logic flaw by inverting the chunk prevention flag in the client state
and by testing the chunked encoding preconditions every time instead of
once upon client (re-)initialization.

Signed-off-by: Jo-Philipp Wich <jow@openwrt.org>

SVN-Revision: 47161
2015-10-07 22:14:48 +00:00
config linux: make IPv6 builtin if selected (saves >30KB) 2015-09-09 12:20:36 +00:00
docs build: Prevent more gzip timestamps 2015-07-14 09:57:45 +00:00
include build: include homebrew include/library directory in cflags/ldflags on mac os x 2015-10-05 14:11:30 +00:00
package uhttpd: fix keep-alive bug (#20607, #20661) 2015-10-07 22:14:48 +00:00
scripts dl_cleanup: Fix linux blacklist 2015-10-07 10:51:18 +00:00
target lantiq: activate spi-xway on TDW89X0 2015-10-07 12:12:48 +00:00
toolchain musl: re-enable des crypto support, fixes pppd MPPE issues 2015-10-01 19:50:06 +00:00
tools lantiq: Add target TP-Link TD-W8980 2015-10-05 10:28:19 +00:00
.gitattributes
.gitignore build: add integration for managing opkg package feed keys 2015-04-06 19:39:51 +00:00
BSDmakefile
Config.in scripts/config: sync with linux upstream 2015-01-08 14:33:53 +00:00
LICENSE
Makefile Makefile: move the cleaning of staging_dir/target* from dirclean to clean 2015-06-14 17:47:16 +00:00
README Add 'subversion' build dependency to README 2014-08-31 12:06:32 +00:00
feeds.conf.default feeds.conf.default: add new targets feed 2015-03-19 11:58:35 +00:00
rules.mk rules.mk: remove GCC 4.4 and GCC 4.5 conditional 2015-08-25 07:45:42 +00:00

README

This is the buildsystem for the OpenWrt Linux distribution.

Please use "make menuconfig" to configure your appreciated
configuration for the toolchain and firmware.

You need to have installed gcc, binutils, bzip2, flex, python, perl, make,
find, grep, diff, unzip, gawk, getopt, subversion, libz-dev and libc headers.

Run "./scripts/feeds update -a" to get all the latest package definitions
defined in feeds.conf / feeds.conf.default respectively
and "./scripts/feeds install -a" to install symlinks of all of them into
package/feeds/.

Use "make menuconfig" to configure your image.

Simply running "make" will build your firmware.
It will download all sources, build the cross-compile toolchain, 
the kernel and all choosen applications.

You can use "scripts/flashing/flash.sh" for remotely updating your embedded
system via tftp.

The OpenWrt system is documented in docs/. You will need a LaTeX distribution
and the tex4ht package to build the documentation. Type "make -C docs/" to build it.

To build your own firmware you need to have access to a Linux, BSD or MacOSX system
(case-sensitive filesystem required). Cygwin will not be supported because of
the lack of case sensitiveness in the file system.


Sunshine!
	Your OpenWrt Project
	http://openwrt.org