(process_request): Changed the filtering code around to handle both domains and URLs.
This commit is contained in:
parent
35d3d79e92
commit
4ce9674365
25
src/reqs.c
25
src/reqs.c
@ -1,4 +1,4 @@
|
|||||||
/* $Id: reqs.c,v 1.76 2002-05-26 18:54:56 rjkaes Exp $
|
/* $Id: reqs.c,v 1.77 2002-05-27 02:00:22 rjkaes Exp $
|
||||||
*
|
*
|
||||||
* This is where all the work in tinyproxy is actually done. Incoming
|
* This is where all the work in tinyproxy is actually done. Incoming
|
||||||
* connections have a new child created for them. The child then
|
* connections have a new child created for them. The child then
|
||||||
@ -408,22 +408,31 @@ process_request(struct conn_s *connptr)
|
|||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
safefree(url);
|
|
||||||
|
|
||||||
#ifdef FILTER_ENABLE
|
#ifdef FILTER_ENABLE
|
||||||
/*
|
/*
|
||||||
* Filter restricted domains
|
* Filter restricted domains/urls
|
||||||
*/
|
*/
|
||||||
if (config.filter) {
|
if (config.filter) {
|
||||||
if (filter_url(request->host)) {
|
if (config.filter_url)
|
||||||
|
ret = filter_url(url);
|
||||||
|
else
|
||||||
|
ret = filter_domain(request->host);
|
||||||
|
|
||||||
|
if (ret) {
|
||||||
update_stats(STAT_DENIED);
|
update_stats(STAT_DENIED);
|
||||||
|
|
||||||
|
if (config.filter_url)
|
||||||
|
log_message(LOG_NOTICE,
|
||||||
|
"Proxying refused on filtered url \"%s\"",
|
||||||
|
url);
|
||||||
|
else
|
||||||
log_message(LOG_NOTICE,
|
log_message(LOG_NOTICE,
|
||||||
"Proxying refused on filtered domain \"%s\"",
|
"Proxying refused on filtered domain \"%s\"",
|
||||||
request->host);
|
request->host);
|
||||||
indicate_http_error(connptr, 404,
|
|
||||||
"Connection to filtered domain is not allowed.");
|
|
||||||
|
|
||||||
|
indicate_http_error(connptr, 403, "Filtered.");
|
||||||
|
|
||||||
|
safefree(url);
|
||||||
free_request_struct(request);
|
free_request_struct(request);
|
||||||
|
|
||||||
return NULL;
|
return NULL;
|
||||||
@ -431,6 +440,8 @@ process_request(struct conn_s *connptr)
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
safefree(url);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Check to see if they're requesting the stat host
|
* Check to see if they're requesting the stat host
|
||||||
*/
|
*/
|
||||||
|
Loading…
Reference in New Issue
Block a user