UrlPath.cc
Go to the documentation of this file.
1/*
2 * Copyright (C) 1996-2022 The Squid Software Foundation and contributors
3 *
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.
7 */
8
9/* DEBUG: section 28 Access Control */
10
11#include "squid.h"
12#include "acl/FilledChecklist.h"
13#include "acl/RegexData.h"
14#include "acl/UrlPath.h"
15#include "HttpRequest.h"
16#include "rfc1738.h"
17
18int
20{
21 if (checklist->request->url.path().isEmpty())
22 return -1;
23
24 char *esc_buf = SBufToCstring(checklist->request->url.path());
25 rfc1738_unescape(esc_buf);
26 int result = data->match(esc_buf);
27 xfree(esc_buf);
28 return result;
29}
30
void SBufToCstring(char *d, const SBuf &s)
Definition: SBuf.h:752
virtual bool match(M)=0
HttpRequest * request
virtual int match(ACLData< char const * > *&, ACLFilledChecklist *)
Definition: UrlPath.cc:19
void path(const char *p)
Definition: Uri.h:99
AnyP::Uri url
the request URI
Definition: HttpRequest.h:115
#define xfree
void rfc1738_unescape(char *url)
Definition: rfc1738.c:146

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors