-const char filters_rcs[] = "$Id: filters.c,v 1.3 2001/05/20 16:44:47 jongfoster Exp $";
+const char filters_rcs[] = "$Id: filters.c,v 1.4 2001/05/22 18:46:04 oes Exp $";
/*********************************************************************
*
* File : $Source: /cvsroot/ijbswa/current/filters.c,v $
*
* Revisions :
* $Log: filters.c,v $
+ * Revision 1.4 2001/05/22 18:46:04 oes
+ *
+ * - Enabled filtering banners by size rather than URL
+ * by adding patterns that replace all standard banner
+ * sizes with the "Junkbuster" gif to the re_filterfile
+ *
+ * - Enabled filtering WebBugs by providing a pattern
+ * which kills all 1x1 images
+ *
+ * - Added support for PCRE_UNGREEDY behaviour to pcrs,
+ * which is selected by the (nonstandard and therefore
+ * capital) letter 'U' in the option string.
+ * It causes the quantifiers to be ungreedy by default.
+ * Appending a ? turns back to greedy (!).
+ *
+ * - Added a new interceptor ijb-send-banner, which
+ * sends back the "Junkbuster" gif. Without imagelist or
+ * MSIE detection support, or if tinygif = 1, or the
+ * URL isn't recognized as an imageurl, a lame HTML
+ * explanation is sent instead.
+ *
+ * - Added new feature, which permits blocking remote
+ * script redirects and firing back a local redirect
+ * to the browser.
+ * The feature is conditionally compiled, i.e. it
+ * can be disabled with --disable-fast-redirects,
+ * plus it must be activated by a "fast-redirects"
+ * line in the config file, has its own log level
+ * and of course wants to be displayed by show-proxy-args
+ * Note: Boy, all the #ifdefs in 1001 locations and
+ * all the fumbling with configure.in and acconfig.h
+ * were *way* more work than the feature itself :-(
+ *
+ * - Because a generic redirect template was needed for
+ * this, tinygif = 3 now uses the same.
+ *
+ * - Moved GIFs, and other static HTTP response templates
+ * to project.h
+ *
+ * - Some minor fixes
+ *
+ * - Removed some >400 CRs again (Jon, you really worked
+ * a lot! ;-)
+ *
* Revision 1.3 2001/05/20 16:44:47 jongfoster
* Removing last hardcoded JunkBusters.com URLs.
*
char *p, *q;
p = q = csp->http->path;
- log_error(LOG_LEVEL_REDIRECTS, "checking path: %s", p);
+ log_error(LOG_LEVEL_REDIRECTS, "checking path: %s", p);
/* find the last URL encoded in the request */
while (p = strstr(p, "http://"))
- {
- q = p++;
- }
+ {
+ q = p++;
+ }
/* if there was any, generate and return a HTTP redirect */
- if (q != csp->http->path)
- {
- log_error(LOG_LEVEL_REDIRECTS, "redirecting to: %s", q);
+ if (q != csp->http->path)
+ {
+ log_error(LOG_LEVEL_REDIRECTS, "redirecting to: %s", q);
- p = (char *)malloc(strlen(HTTP_REDIRECT_TEMPLATE) + strlen(q));
- sprintf(p, HTTP_REDIRECT_TEMPLATE, q);
- return(p);
+ p = (char *)malloc(strlen(HTTP_REDIRECT_TEMPLATE) + strlen(q));
+ sprintf(p, HTTP_REDIRECT_TEMPLATE, q);
+ return(p);
}
- else
+ else
{
return(NULL);
- }
+ }
}
#endif /* def FAST_REDIRECTS */
* Need to alter the stats not to include the fetch of this
* page.
*
- * Can't do following thread safely! doh!
- *
+ * Can't do following thread safely! doh!
+ *
* urls_read--;
* urls_rejected--; * This will be incremented subsequently *
- */
+ */
s = strsav(s,"<h2>Statistics for this " BANNER ":</h2>\n");
-const char jcc_rcs[] = "$Id: jcc.c,v 1.5 2001/05/22 18:46:04 oes Exp $";
+const char jcc_rcs[] = "$Id: jcc.c,v 1.6 2001/05/23 00:13:58 joergs Exp $";
/*********************************************************************
*
* File : $Source: /cvsroot/ijbswa/current/jcc.c,v $
*
* Revisions :
* $Log: jcc.c,v $
+ * Revision 1.6 2001/05/23 00:13:58 joergs
+ * AmigaOS support fixed.
+ *
* Revision 1.5 2001/05/22 18:46:04 oes
*
* - Enabled filtering banners by size rather than URL
#ifdef FORCE_LOAD
/* If this request contains the FORCE_PREFIX,
- * better get rid of it now and set the force flag --oes
+ * better get rid of it now and set the force flag --oes
*/
- if(strstr(req, FORCE_PREFIX))
+ if (strstr(req, FORCE_PREFIX))
{
- strclean(req, FORCE_PREFIX);
- log_error(LOG_LEVEL_FORCE, "Enforcing request \"%s\".\n", req);
- csp->force = 1;
- }
+ strclean(req, FORCE_PREFIX);
+ log_error(LOG_LEVEL_FORCE, "Enforcing request \"%s\".\n", req);
+ csp->force = 1;
+ }
else
{
- csp->force = 0;
- }
+ csp->force = 0;
+ }
#endif /* def FORCE_LOAD */
parse_http_request(req, http, csp);
destroy_list(csp->headers);
- /* Check the request against all rules, unless
- * we're toggled off or in force mode.
+ /* Check the request against all rules, unless
+ * we're toggled off or in force mode.
*/
if (IS_TOGGLED_ON
else if ((tinygif == 3) && (tinygifurl))
{
p = (char *)malloc(strlen(HTTP_REDIRECT_TEMPLATE) + strlen(tinygifurl));
- sprintf(p, HTTP_REDIRECT_TEMPLATE, tinygifurl);
+ sprintf(p, HTTP_REDIRECT_TEMPLATE, tinygifurl);
write_socket(csp->cfd, p, strlen(p));
}
else
-const char loadcfg_rcs[] = "$Id: loadcfg.c,v 1.3 2001/05/20 01:21:20 jongfoster Exp $";
+const char loadcfg_rcs[] = "$Id: loadcfg.c,v 1.4 2001/05/22 18:46:04 oes Exp $";
/*********************************************************************
*
* File : $Source: /cvsroot/ijbswa/current/loadcfg.c,v $
*
* Revisions :
* $Log: loadcfg.c,v $
+ * Revision 1.4 2001/05/22 18:46:04 oes
+ *
+ * - Enabled filtering banners by size rather than URL
+ * by adding patterns that replace all standard banner
+ * sizes with the "Junkbuster" gif to the re_filterfile
+ *
+ * - Enabled filtering WebBugs by providing a pattern
+ * which kills all 1x1 images
+ *
+ * - Added support for PCRE_UNGREEDY behaviour to pcrs,
+ * which is selected by the (nonstandard and therefore
+ * capital) letter 'U' in the option string.
+ * It causes the quantifiers to be ungreedy by default.
+ * Appending a ? turns back to greedy (!).
+ *
+ * - Added a new interceptor ijb-send-banner, which
+ * sends back the "Junkbuster" gif. Without imagelist or
+ * MSIE detection support, or if tinygif = 1, or the
+ * URL isn't recognized as an imageurl, a lame HTML
+ * explanation is sent instead.
+ *
+ * - Added new feature, which permits blocking remote
+ * script redirects and firing back a local redirect
+ * to the browser.
+ * The feature is conditionally compiled, i.e. it
+ * can be disabled with --disable-fast-redirects,
+ * plus it must be activated by a "fast-redirects"
+ * line in the config file, has its own log level
+ * and of course wants to be displayed by show-proxy-args
+ * Note: Boy, all the #ifdefs in 1001 locations and
+ * all the fumbling with configure.in and acconfig.h
+ * were *way* more work than the feature itself :-(
+ *
+ * - Because a generic redirect template was needed for
+ * this, tinygif = 3 now uses the same.
+ *
+ * - Moved GIFs, and other static HTTP response templates
+ * to project.h
+ *
+ * - Some minor fixes
+ *
+ * - Removed some >400 CRs again (Jon, you really worked
+ * a lot! ;-)
+ *
* Revision 1.3 2001/05/20 01:21:20 jongfoster
* Version 2.9.4 checkin.
* - Merged popupfile and cookiefile, and added control over PCRS
continue;
#ifdef FAST_REDIRECTS
- case hash_fast_redirects :
+ case hash_fast_redirects :
fast_redirects = 1;
continue;
#endif /* def FAST_REDIRECTS */