RegexData.cc File Reference
#include "squid.h"
#include "acl/Acl.h"
#include "acl/Checklist.h"
#include "acl/RegexData.h"
#include "base/RegexPattern.h"
#include "cache_cf.h"
#include "ConfigParser.h"
#include "debug/Stream.h"
#include "sbuf/Algorithms.h"
#include "sbuf/List.h"
#include "sbuf/Stream.h"
Include dependency graph for RegexData.cc:

Go to the source code of this file.

Functions

static const char * removeUnnecessaryWildcards (char *t)
 
static void compileRE (std::list< RegexPattern > &curlist, const SBuf &RE, int flags)
 
static void compileREs (std::list< RegexPattern > &curlist, const SBufList &RE, int flags)
 
static void compileOptimisedREs (std::list< RegexPattern > &curlist, const SBufList &sl, const int flagsAtLineStart)
 
static void compileUnoptimisedREs (std::list< RegexPattern > &curlist, const SBufList &sl, const int flagsAtLineStart)
 

Function Documentation

◆ compileOptimisedREs()

static void compileOptimisedREs ( std::list< RegexPattern > &  curlist,
const SBufList sl,
const int  flagsAtLineStart 
)
static

Compose and compile one large RE from a set of (small) REs. The ultimate goal is to have only one RE per ACL so that match() is called only once per ACL.

Definition at line 129 of file RegexData.cc.

References cfg_filename, compileREs(), config_input_line, config_lineno, DBG_IMPORTANT, debugs, opt_parse_cfg_only, and REG_ICASE.

Referenced by ACLRegexData::parse().

◆ compileRE()

static void compileRE ( std::list< RegexPattern > &  curlist,
const SBuf RE,
int  flags 
)
static

Definition at line 108 of file RegexData.cc.

Referenced by compileREs(), and compileUnoptimisedREs().

◆ compileREs()

static void compileREs ( std::list< RegexPattern > &  curlist,
const SBufList RE,
int  flags 
)
static

Definition at line 114 of file RegexData.cc.

References assert, SBuf::begin(), compileRE(), and JoinContainerIntoSBuf().

Referenced by compileOptimisedREs().

◆ compileUnoptimisedREs()

static void compileUnoptimisedREs ( std::list< RegexPattern > &  curlist,
const SBufList sl,
const int  flagsAtLineStart 
)
static

Definition at line 201 of file RegexData.cc.

References compileRE(), and REG_ICASE.

Referenced by ACLRegexData::parse().

◆ removeUnnecessaryWildcards()

static const char* removeUnnecessaryWildcards ( char *  t)
static

Definition at line 80 of file RegexData.cc.

References cfg_filename, config_input_line, config_lineno, DBG_IMPORTANT, and debugs.

Referenced by ACLRegexData::parse().

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors