26 name(proto.substr(0, proto.find(
'/'))),
27 version(proto.substr(name.length()))
70 protocol(rawProtocol),
#define Here()
source code location of the caller
std::ostream & operator<<(std::ostream &os, const ProtocolView &view)
void aclParseAccessLine(const char *directive, ConfigParser &, acl_access **config)
Parses a single line of a "action followed by acls" directive (e.g., http_access).
const char * cfg_directive
During parsing, the name of the current squid.conf directive being parsed.
static char * NextToken()
NamedGuard(const char *rawProtocol, acl_access *)
void configureGuard(ConfigParser &)
parses a single allow/deny rule
~HttpUpgradeProtocolAccess()
acl_access * other
OTHER rules governing unnamed protocols.
static const SBuf & ProtoOther()
pseudonym to specify rules for "all other protocols"
NamedGuards namedGuards
rules governing upgrades to explicitly named protocols
a reference to a protocol name[/version] string; no 0-termination is assumed
ProtocolView(const char *const start, const size_t len)
SBuf version
everything after the name, including the slash('/')
SBuf name
everything up to (but excluding) the first slash('/')
an std::runtime_error with thrower location info
void aclDestroyAccessList(acl_access **list)
SBuf ToSBuf(Args &&... args)
slowly stream-prints all arguments into a freshly allocated SBuf