2 * Copyright (C) 1996-2025 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_SRC_ACL_NOTE_H
10 #define SQUID_SRC_ACL_NOTE_H
12 #include "acl/CharacterSetOption.h"
14 #include "acl/ParameterizedNode.h"
19 /// common parent of several ACLs dealing with transaction annotations
20 class AnnotationCheck
: public ParameterizedNode
< ACLData
<NotePairs::Entry
*> >
23 AnnotationCheck(): delimiters(CharacterSet(__FILE__
, ",")) {}
25 const Acl::Options
&options() override
;
27 Acl::CharacterSetOptionValue delimiters
; ///< annotation separators
31 class NoteCheck
: public Acl::AnnotationCheck
35 int match(ACLChecklist
*) override
;
36 bool requiresRequest() const override
{ return true; }
39 bool matchNotes(const NotePairs
*) const;
44 #endif /* SQUID_SRC_ACL_NOTE_H */