]>
git.ipfire.org Git - thirdparty/squid.git/blob - src/HttpHdrSc.h
2 * Copyright (C) 1996-2014 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_HTTPHDRSURROGATECONTROL_H
10 #define SQUID_HTTPHDRSURROGATECONTROL_H
12 #include "HttpHdrScTarget.h"
16 /* http surogate control header field */
22 HttpHdrSc(const HttpHdrSc
&);
26 bool parse(const String
*str
);
27 void packInto(Packer
* p
) const;
28 void updateStats(StatHist
*) const;
29 HttpHdrScTarget
* getMergedTarget (const char *ourtarget
); //todo: make const?
30 void setMaxAge(char const *target
, int max_age
);
31 void addTarget(HttpHdrScTarget
*t
) {
32 dlinkAdd(t
, &t
->node
, &targets
);
34 void addTargetAtTail(HttpHdrScTarget
*t
) {
35 dlinkAddTail (t
, &t
->node
, &targets
);
38 MEMPROXY_CLASS(HttpHdrSc
);
41 HttpHdrScTarget
* findTarget (const char *target
);
45 MEMPROXY_CLASS_INLINE(HttpHdrSc
);
47 /* Http Surrogate Control Header Field */
48 void httpHdrScStatDumper(StoreEntry
* sentry
, int idx
, double val
, double size
, int count
);
49 void httpHdrScInitModule (void);
50 void httpHdrScCleanModule (void);
51 HttpHdrSc
*httpHdrScParseCreate(String
const &);
52 void httpHdrScSetMaxAge(HttpHdrSc
*, char const *, int);
54 #endif /* SQUID_HTTPHDRSURROGATECONTROL_H */