tree 4b2671853865942475f48462ffa12d5fc7e7bf77
parent b2f8f087fcd5bb3670ad4ff5d383398cc93ba8ab
author Thierry FOURNIER <tfournier@arpalert.org> 1438709746 +0200
committer Willy Tarreau <w@1wt.eu> 1440083626 +0200
encoding latin1

MEDIUM: actions: Merge (http|tcp)-(request|reponse) action structs

This patch is the first of a serie which merge all the action structs. The
function "tcp-request content", "tcp-response-content", "http-request" and
"http-response" have the same values and the same process for some defined
actions, but the struct and the prototype of the declared function are
different.

This patch try to unify all of these entries.
