]>
git.ipfire.org Git - thirdparty/squid.git/blob - src/adaptation/icap/InOut.h
30ddce0e484a870eb8ab6c157acce94ef1f6ea97
2 * Copyright (C) 1996-2018 The Squid Software Foundation and contributors
4 * Squid software is distributed under GPLv2+ license and includes
5 * contributions from numerous individuals and organizations.
6 * Please see the COPYING and CONTRIBUTORS files for details.
9 #ifndef SQUID_ICAPINOUT_H
10 #define SQUID_ICAPINOUT_H
12 #include "HttpReply.h"
14 // IcapInOut manages a pointer to the HTTP message being worked on.
15 // For HTTP responses, request header information is also available
16 // as the "cause". ICAP transactions use this class to store virgin
17 // and adapted HTTP messages.
28 // TODO: s/Header/Message/i ?
29 typedef Http::Message Header
;
31 InOut(): header(0), cause(0) {}
35 HTTPMSGUNLOCK(header
);
38 void setCause(HttpRequest
*r
) {
48 void setHeader(Header
*h
) {
49 HTTPMSGUNLOCK(header
);
52 body_pipe
= header
->body_pipe
;
56 // virgin or adapted message being worked on
57 Header
*header
; // parsed HTTP status/request line and headers
59 // HTTP request header for HTTP responses (the cause of the response)
62 // Copy of header->body_pipe, in case somebody moves the original.
63 BodyPipe::Pointer body_pipe
;
67 } // namespace Adaptation
69 #endif /* SQUID_ICAPINOUT_H */