tree 2fd3cbc881fcb8f0002bfbf1f690df69d589c280
parent b96b77ed6eb33b0b6f5615242ac653069de5e526
author Willy Tarreau <w@1wt.eu> 1544524947 +0100
committer Willy Tarreau <w@1wt.eu> 1544544913 +0100
encoding latin1

REORG: http: create http_msg.c to place there some legacy HTTP parts

Lots of HTTP code still uses struct http_msg. Not only this code is
still huge, but it's part of the legacy interface. Let's move most
of these functions to a separate file http_msg.c to make it more
visible which file relies on what. It's mostly symmetrical with
what is present in http_htx.c.

The function http_transform_header_str() which used to rely on two
function pointers to look up a header was simplified to rely on
two variants http_legacy_replace_{,full_}header(), making both
sides of the function much simpler.

No code was changed beyond these moves.
