lp:~measurement-factory/squid/update-right-headers-on-304

Created by eduard-bagdasaryan and last modified
Get this branch:
bzr branch lp:~measurement-factory/squid/update-right-headers-on-304
Members of Measurement Factory can upload to this branch. Log in for directions.

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Measurement Factory
Project:
Squid
Status:
Development

Recent revisions

14722. By eduard-bagdasaryan

Merged from trunk r14734

14721. By eduard-bagdasaryan

Allow Squid to refresh all headers for 304 responses.

According to RFC 7234 Section 4.3.3, all non-Warning headers
should be updated.
Note that r14582 partially addressed this requirements.

14720. By eduard-bagdasaryan

Making Squid conform to HTTPbis refreshing upon
validation requirements.

This is the first change, focusing on "Warning" headers updating.

14719. By Amos Jeffries

Bug 4532: pid_filename not working as documented

14718. By Source Maintenance <email address hidden>

SourceFormat Enforcement

14717. By Christos Tsantilas

Assertion failed: Write.cc:38: "fd_table[conn->fd].flags.open"

The Ftp::Server::stopWaitingForOrigin() notification may come after
Ftp::Server (or an external force) has started closing the control
connection but before the Ftp::Server job became unreachable for
notifications. Writing a response in this state leads to assertions.

Other, currently unknown paths may lead to the same write-after-close
problems. This change protects all asynchronous notification methods
(except the connection closure handler itself) from exposing underlying
code to a closing control connection. This is very similar to checking
for ERR_CLOSING in Comm handlers.

This is a Measurement Factory project.

14716. By Amos Jeffries

Remove impossible condition from rev.14715

14715. By Amos Jeffries

Unit test for SBuf::reserve()

14714. By Alex Rousskov

Do not make bogus recvmsg(2) calls when closing UDS sockets.

comm_empty_os_read_buffers() assumes that all non-blocking
FD_READ_METHODs can read into an opaque buffer filled with random
characters. That assumption is wrong for UDS sockets that require an
initialized msghdr structure. Feeding random data to recvmsg(2) leads to
confusing errors, at best. Squid does not log those errors, but they
are visible in, for example, strace:

  recvmsg(17, 0x7fffbb, MSG_DONTWAIT) = -1 EMSGSIZE (Message too long)

comm_empty_os_read_buffers() is meant to prevent TCP RST packets. The
function now ignores UDS sockets that are not used for TCP.

TODO: Useless reads may also exist for UDP and some TCP sockets.

14713. By Amos Jeffries

Bug 4504: Too many WARNING: Ignoring error setting CA certificate locations

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
Stacked on:
lp:~squid/squid/trunk
This branch contains Public information 
Everyone can see this information.