This file belongs into
ijbswa.sourceforge.net:/home/groups/i/ij/ijbswa/htdocs/
- $Id: user-manual.sgml,v 1.8 2001/09/25 00:34:59 hal9 Exp $
+ $Id: user-manual.sgml,v 1.21 2001/10/31 21:11:03 hal9 Exp $
Written by and Copyright (C) 2001 the SourceForge
IJBSWA team. http://ijbswa.sourceforge.net
<artheader>
<title>Junkbuster User Manual</title>
-<pubdate>$Id: user-manual.sgml,v 1.8 2001/09/25 00:34:59 hal9 Exp $</pubdate>
+<pubdate>$Id: user-manual.sgml,v 1.21 2001/10/31 21:11:03 hal9 Exp $</pubdate>
<authorgroup>
<author>
security to users of the World Wide Web.
</para>
<para>
-You can find the latest version of the user manual at <ulink url="http://ijbswa.sourceforge.net/doc/user-manual/">http://ijbswa.sourceforge.net/doc/user-manual/</ulink>.
+You can find the latest version of the user manual at <ulink url="http://ijbswa.sourceforge.net/user-manual/">http://ijbswa.sourceforge.net/user-manual/</ulink>.
</para>
<para>
<para>
<application>Internet Junkbuster</application> is a web proxy with advanced
filtering capabilities for protecting privacy, filtering web page content,
- managing cookies and removing ads, banners, pop-ups and other obnoxious
- Internet Junk. <application>Junkbuster</application> has a very flexible
- configuration and can be customized to suit individual needs and tastes.
- <application>Internet Junkbuster</application> has application for both
- stand-alone systems and multi-user networks.
+ managing cookies, controlling access, and removing ads, banners, pop-ups and
+ other obnoxious Internet Junk. <application>Junkbuster</application> has a
+ very flexible configuration and can be customized to suit individual needs
+ and tastes. <application>Internet Junkbuster</application> has application
+ for both stand-alone systems and multi-user networks.
</para>
<para>
<application>Internet Junkbuster</application> and is incomplete at this
point. The most up to date reference for the time being is still the comments
in the source files and in the individual configuration files. Development
- of version 3.0 is currently underway, and includes significant changes and
+ of version 3.0 is currently underway, and includes many significant changes and
enhancements over earlier verions. The target release date for stable v3.0 is
December 2001.
</para>
<para>
Since this is a development version, some features are in the process of
- being implemented. And there <emphasis>are</emphasis> bugs!
+ being implemented. This documentation may be slightly out of sync as a
+ result. And there <emphasis>are</emphasis> bugs, though hopefully not many!
</para>
<listitem>
<para>
- Modularized configuration that will allow for system wide settings, and
- individual user settings.
+ A browser based configuration utility (WIP at
+ <ulink url="http://i.j.b">http://i.j.b</ulink>).
</para>
</listitem>
<listitem>
<para>
- A web based GUI configuration utility.
+ Modularized configuration that will allow for system wide settings, and
+ individual user settings. (not implemented yet)
</para>
</listitem>
patch).
</para>
</listitem>
- </itemizedlist>
<listitem>
<para>
- Support for HTTP 1.1.
+ Support for HTTP/1.1 (partially implemented at this point).
</para>
</listitem>
<listitem>
<para>
Support for Perl Compatible Regular Expressions in the configuration files, and
- generally a more sophisticated configuration syntax.
+ generally a more sophisticated configuration syntax over previous versions.
</para>
</listitem>
</para>
</listitem>
+ <listitem>
+ <para>
+ Multi-threaded.
+ </para>
+ </listitem>
+
+ </itemizedlist>
+</para>
+
+<para>
+ In addition, the configuration is more versatile overall.
</para>
</sect2>
<application>Junkbuster</application> is available as raw source code, or
pre-compiled binaries. See the <ulink
url="http://sourceforge.net/projects/ijbswa/">Junkbuster Home Page</ulink>
- for current releases. <application>Junkbuster</application> is also available
+ for current release info. <application>Junkbuster</application> is also available
via <ulink
url="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ijbswa/current/">CVS</ulink>.
This is the recommended approach at this time. But please be aware that CVS
<para>
<screen>
- tar zxvf ijb_source_2.9*
- cd ijb_source_2.9*
+ tar xzvf ijb_source_* [.tgz or .tar.gz]
+ cd ijb_source_2.9.9_alpha
</screen>
</para>
</para>
<para>
- Then, in either case, to build from source:
+ Then, in either case, to build from tarball/CVS source:
</para>
<para>
<screen>
- ./configure
- make
- su
- make install
+ ./configure (--help to see options)
+ make (the make from gnu, gmake for *BSD)
+ su
+ make -n install (to see where all the files will go)
+ make install (to really install)
</screen>
</para>
<para>
<screen>
+ autoheader [suggested for CVS source]
+ autoconf [suggested for CVS source]
./configure
make redhat-dist
</screen>
/usr/src/redhat/RPMS/i686/junkbuster-2.9.8-1.i686.rpm
</para>
<para>
- /usr/src/redhat/SRPMS/junkbuster-2.9.8-1.src.rpm
+ /usr/src/redhat/SRPMS/junkbuster-2.9.9-1.src.rpm
</para>
<para>
<para>
<screen>
- rpm -Uvv /usr/src/redhat/RPMS/i686/junkbuster-2.9.8-1.i686.rpm
+ rpm -Uvv /usr/src/redhat/RPMS/i686/junkbuster-2.9.9-1.i686.rpm
</screen>
</para>
<para>
<screen>
+ autoheader [suggested for CVS source]
+ autoconf [suggested for CVS source]
./configure
make suse-dist
</screen>
</para>
<para>
- /usr/src/suse/RPMS/i686/junkbuster-2.9.8-1.i686.rpm
+ /usr/src/packages/RPMS/i686/junkbuster-2.9.9-1.i686.rpm
</para>
<para>
- /usr/src/suse/SRPMS/junkbuster-2.9.8-1.src.rpm
+ /usr/src/packages/SRPMS/junkbuster-2.9.9-1.src.rpm
</para>
<para>
<para>
<screen>
- rpm -Uvv /usr/src/suse/RPMS/i686/junkbuster-2.9.8-1.i686.rpm
+ rpm -Uvv /usr/src/packages/RPMS/i686/junkbuster-2.9.9-1.i686.rpm
</screen>
</para>
<!-- ~~~~~ New section ~~~~~ -->
<sect2 id="installation-win"><title>Windows</title>
-<para>I need help on this. Not a clue here. Also for
-configuration section below.
+<para>Click-click. (I need help on this. Not a clue here. Also for
+configuration section below. HB.)
</para>
</sect2>
<para>
The main configuration file is named <filename>config</filename>
on Linux, Unix, BSD, and OS/2, and <filename>junkbustr.txt</filename> on
- Windows.
+ Windows. On Amiga, it is
+ <filename>AmiTCP:db/junkbuster/config</filename>.
</para>
</listitem>
<listitem>
<para>
The <filename>actionsfile</filename> file is used to define various
- actions relating to images, banners, pop-ups, banners and cookies.
+ <quote>actions</quote> relating to images, banners, pop-ups, access
+ restrictions, banners and cookies. There is a CGI based editor for this
+ file that can be accessed via <ulink
+ url="http://i.j.b./">http://i.j.b./</ulink>. This is the easiest method of
+ configuring actions. (Still under active development.)
</para>
</listitem>
for the changes to take effect.
</para>
+<para>
+ While under development, the configuration content is subject to change.
+ The below documentation may not be accurate by the time you read this.
+ Also, what constitutes a <quote>default</quote> setting, may change, so
+ please check all your configuration files on important issues.
+</para>
<!-- ~~~~~ New section ~~~~~ -->
</para>
<para>
- The <quote><literal>#</literal></quote> indicates a comment. Any part of a
+ A <quote><literal>#</literal></quote> indicates a comment. Any part of a
line following a <quote><literal>#</literal></quote> is ignored, except if
the <quote><literal>#</literal></quote> is preceded by a
<quote><literal>\</literal></quote>.
<para>
There are various aspects of <application>Junkbuster</application> behavior
- that can be adjusted.
+ that can be tuned.
</para>
serve requests from other machines (e.g. on your local network) as well, you
will need to override the default. The syntax is
<quote>listen-address [<ip-address>]:<port></quote>. If you leave
- out the IP adress, <application>junkbuster</application> will bind to all
+ out the IP address, <application>junkbuster</application> will bind to all
interfaces (addresses) on your machine and may become reachable from the
- internet. In that case, consider using access control lists (acl's) (see
- <quote>aclfile</quote> above).
+ Internet. In that case, consider using access control lists (acl's) (see
+ <quote>aclfile</quote> above), or a firewall.
</para>
<para>
<para>
The Windows version of <application>Junkbuster</application> puts an icon in
- the system tray, which allows you to change this option without having to
- edit this file. If you right-click on that icon (or select the
- <quote>Options</quote> menu), one choice is <quote>Enable</quote>. Clicking
- on enable toggles <application>Junkbuster</application> on and off. This is
- useful if you want to temporarily disable
- <application>Junkbuster</application>, e.g., to access a site that requires
- cookies which you normally have blocked.
+ the system tray, which also allows you to change this option. If you
+ right-click on that icon (or select the <quote>Options</quote> menu), one
+ choice is <quote>Enable</quote>. Clicking on enable toggles
+ <application>Junkbuster</application> on and off. This is useful if you want
+ to temporarily disable <application>Junkbuster</application>, e.g., to access
+ a site that requires cookies which you normally have blocked. This can also
+ be toggled via a web browser at the <application>Junkbuster</application>
+ internal address of <ulink url="http://i.j.b./">http://i.j.b./</ulink> on
+ any platform.
</para>
<para>
<quote>toggle 1</quote> means <application>Junkbuster</application> runs
normally, <quote>toggle 0</quote> means that
<application>Junkbuster</application> becomes a non-anonymizing non-blocking
- proxy. Default: 1.
+ proxy. Default: 1 (on).
</para>
<para>
</literal>
</para>
+<para>
+ For content filtering, i.e. the <quote>+filter</quote> and
+ <quote>+deanimate-gif</quote> actions, it is neccessary that
+ <application>Junkbuster</application> buffers the entire document body.
+ This can be potentially dangerous, since a server could just keep sending
+ data indefinitely and wait for your RAM to exhaust. With nasty consequences.
+</para>
+
+<para>
+ The <application>buffer-limit</application> option lets you set the maximum
+ size in Kbytes that each buffer may use. When the documents buffer exceeds
+ this size, it is flushed to the client unfiltered and no further attempt to
+ filter the rest of it is made. Remember that there may multiple threads
+ running, which might require increasing the <quote>buffer-limit</quote>
+ Kbytes <emphasis>each</emphasis>, unless you have enabled
+ <quote>single-threaded</quote> above.
+</para>
+
+<para>
+ <literal>
+ <MSGText>
+ <literallayout>
+ <emphasis>buffer-limit 4069</emphasis>
+ </literallayout>
+ </MSGText>
+ </literal>
+</para>
+
+<para>
+ To enable the web-based actionsfile editor set
+ <application>enable-edit-actions</application> to 1, or 0 to disable. Note
+ that you must have compiled <application>JunkBuster</application> with
+ support for this feature, otherwise this option has no effect. This
+ internal page can be reached at <ulink
+ url="http://i.j.b./">http://i.j.b./</ulink>.
+ </para>
+
+<para>
+ Security note: If this is enabled, anyone who can use the proxy
+ can edit the actions file, and their changes will affect all users.
+ For shared proxies, you probably want to disable this. Default: enabled.
+</para>
+
+<para>
+ <literal>
+ <MSGText>
+ <literallayout>
+ <emphasis>enable-edit-actions 1</emphasis>
+ </literallayout>
+ </MSGText>
+ </literal>
+</para>
+
+<para>
+ Allow <application>JunkBuster</application> to be toggled on and off
+ remotely, using your web browser. Set <quote>enable-remote-toggle</quote>to
+ 1 to enable, and 0 to disable. Note that you must have compiled
+ <application>JunkBuster</application> with support for this feature,
+ otherwise this option has no effect.
+</para>
+
+<para>
+ Security note: If this is enabled, anyone who can use the proxy can toggle
+ it on or off (see <ulink url="http://i.j.b./">http://i.j.b./</ulink>), and
+ their changes will affect all users. For shared proxies, you probably want to
+ disable this. Default: enabled.
+</para>
+
+<para>
+ <literal>
+ <MSGText>
+ <literallayout>
+ <emphasis>enable-remote-toggle 1</emphasis>
+ </literallayout>
+ </MSGText>
+ </literal>
+</para>
+
</sect3>
<!-- ~ End section ~ -->
<title>Forwarding</title>
<para>
- This feature allows routing of HTTP requests via multiple proxies.
+ This feature allows chaining of HTTP requests via multiple proxies.
It can be used to better protect privacy and confidentiality when
accessing specific domains by routing requests to those domains
- to a special purpose filtering proxy such as lpwa.com.
+ to a special purpose filtering proxy such as lpwa.com. Or to use
+ a caching proxy to speed up browsing.
</para>
<para>
<literal>
<MSGText>
<literallayout>
- <emphasis>forward_socks4 .* lpwa.com:8000 firewall.my_company.com:1080</emphasis>
+ <emphasis>forward-socks4 .* lpwa.com:8000 firewall.my_company.com:1080</emphasis>
<emphasis>forward my_company.com .</emphasis>
</literallayout>
</MSGText>
<literal>
<MSGText>
<literallayout>
- <emphasis>forward_socks4a .* . firewall.my_company.com:1080</emphasis>
+ <emphasis>forward-socks4a .* . firewall.my_company.com:1080</emphasis>
</literallayout>
</MSGText>
</literal>
<MSGText>
<literallayout>
# Define junkbuster as parent cache
+ <!-- per feedback from user...
cache_peer 127.0.0.1 8000 parent 0 no-query
-
+ -->
+ cache_peer 127.0.0.1 parent 8000 0 no-query
+
# Define ACL for protocol FTP
acl FTP proto FTP
url="http://i.j.b/show-url-info">http://i.j.b/show-url-info</ulink>.
</para>
+<para>
+ The actions file can be edited with a browser by loading
+ <ulink url="http://i.j.b">http://i.j.b</ulink>, and then select
+ <quote>Edit Actions</quote>.
+</para>
+
<para>
There are four types of lines in this file: comments (begin with a
<quote>#</quote> character), actions, aliases and patterns, all of which are
- explained below.
+ explained below, as well as the configuration file syntax that
+ <application>Junkbuster</application> understands.
+
</para>
</literal>
</para>
</listitem>
-
+
+ <listitem>
+ <para>
+ <quote>+downgrade</quote> will downgrade HTTP/1.1 client requests to
+ HTTP/1.0 and downgrade the responses as well. Use this action for servers
+ that use HTTP/1.1 protocol features that
+ <application>Junkbuster</application> doesn't handle well yet. HTTP/1.1
+ is only partially implemented. Default is not to downgrade requests.
+ </para>
+ <para>
+ <literal>
+ <MSGText>
+ <literallayout>
+ <emphasis>+downgrade</emphasis>
+ </literallayout>
+ </MSGText>
+ </literal>
+ </para>
+ </listitem>
+
<listitem>
<para>
Many sites, like yahoo.com, don't just link to other sites. Instead, they
</para>
</listitem>
+ <listitem>
+ <para>
+ By default (i.e. in the absence of a <quote>+limit-connect</quote>
+ action), <application>Junkbuster</application> will only allow CONNECT
+ requests to port 443, which is the standard port for https as a
+ precaution.
+ </para>
+
+ <para>
+ The CONNECT methods exists in HTTP to allow access to secure websites
+ (https:// URLs) through proxies. It works very simply: the proxy
+ connects to the server on the specified port, and then short-circuits
+ its connections to the client <emphasis>and</emphasis> to the remote proxy.
+ This can be a big security hole, since CONNECT-enabled proxies can
+ be abused as TCP relays very easily.
+ </para>
+
+ <para>
+ If you want to allow CONNECT for more ports than this, or want to forbid
+ CONNECT altogether, you can specify a comma separated list of ports and
+ port ranges (the latter using dashes, with the minimum defaulting to 0 and
+ max to 65K):
+ </para>
+
+ <para>
+ <literal>
+ <MSGText>
+ <literallayout>
+ <emphasis>+limit-connect{443} # This is the default and need no be specified.</emphasis>
+ <emphasis>+limit-connect{80,443} # Ports 80 and 443 are OK.</emphasis>
+ <emphasis>+limit-connect{-3, 7, 20-100, 500-} # Port less than 3, 7, 20 to 100</emphasis>
+ <emphasis> #and above 500 are OK.</emphasis>
+ </literallayout>
+ </MSGText>
+ </literal>
+ </para>
+
+ </listitem>
+
+ <listitem>
+ <para>
+ <quote>+no-compression</quote> prevents the website from compressing the
+ data. Some websites do this, which can be a problem for
+ <application>Junkbuster</application>, since <quote>+filter</quote>,
+ <quote>+no-popup</quote> and <quote>+gif-deanimate</quote> will not work on
+ compressed data. This will slow down connections to those websites,
+ though. Default is <quote>nocompression</quote> is turned on.
+ </para>
+
+ <para>
+ <literal>
+ <MSGText>
+ <literallayout>
+ <emphasis>+nocompression</emphasis>
+ </literallayout>
+ </MSGText>
+ </literal>
+ </para>
+ </listitem>
+
<listitem>
<para>
Prevent the website from reading cookies:
<title>Aliases</title>
<para>
Custom <quote>actions</quote>, known to <application>Junkbuster</application>
- as <quote>aliases</quote>, can be defined by combing other <quote>actions</quote>.
+ as <quote>aliases</quote>, can be defined by combining other <quote>actions</quote>.
These can in turn be invoked just like the built-in <quote>actions</quote>.
Currently, an alias can contain any character except space, tab, <quote>=</quote>,
<quote>{</quote> or <quote>}</quote>. But please use only <quote>a</quote>-
<quote>z</quote>, <quote>0</quote>-<quote>9</quote>, <quote>+</quote>, and
- <quote>-</quote>. Alias names are not case sensitive, and must be defined
- before they are used.
+ <quote>-</quote>. Alias names are not case sensitive, and
+ <emphasis>must be defined before anything</emphasis> else in
+ <filename>actionsfile</filename>! And there can only be one set of
+ <quote>aliases</quote> defined.
</para>
<para>
<literal>
<MSGText>
<literallayout>
- # Aliases
+ # Useful customer aliases we can use later. These must come first!
{{alias}}
-
- # Useful aliases
+no-cookies = +no-cookies-set +no-cookies-read
-no-cookies = -no-cookies-set -no-cookies-read
fragile = -block -no-cookies -filter -fast-redirects -hide-referer -no-popups
{fragile}
.office.microsoft.com
.windowsupdate.microsoft.com
+ .nytimes.com
# Shopping sites - still want to block ads.
{shop}
<!-- ~~~~~ New section ~~~~~ -->
<sect1 id="quickstart"><title>Quickstart to Using Junkbuster</title>
<para>
- Install package, then run and enjoy! Be sure your browser is set to use
- the proxy which is by default at localhost, port 8000. With
- <application>Netscape</application> (and <application>Mozilla</application>),
- this can be set under <literal>Edit -> Preferences -> Advanced ->
- Proxies -> HTTP Proxy</literal>. For <application>Internet
- Explorer</application>: <literal>Internet Properties -> Connections ->
- LAN Setting</literal>. Then, check <quote>Use Proxy</quote> and fill in the
- appropriate info (Address: localhost, Port: 8000).
+ Install package, then run and enjoy! <application>Junbuster</application>
+ accepts only one command line option -- the configuration file to be
+ used. Example Unix startup command:
+</para>
+
+<para>
+ <screen>
+
+ # /usr/sbin/junkbuster /etc/junkbuster/config
+
+ </screen>
+</para>
+
+<para>
+ An init script is provided for SuSE and Redhat.
+</para>
+
+<para>
+For for SuSE: /etc/rc.d/junkbuster start
+</para>
+
+<para>
+For RedHat: /etc/rc.d/init.d/junkbuster start
+</para>
+
+
+<para>
+ If no configuration file is specified on the command line,
+ <application>Junkbuster</application> will look for a file named
+ <filename>config</filename> in the current directory. Except on Amiga where
+ it will look for <filename>AmiTCP:db/junkbuster/config</filename> and Win32
+ where it will try <filename>junkbstr.txt</filename>. If no file is specified
+ on the command line and no default configuration file can be found,
+ <application>Junkbuster</application> will fail to start.
+</para>
+
+<para>
+ Be sure your browser is set to use the proxy which is by default at
+ localhost, port 8000. With <application>Netscape</application> (and
+ <application>Mozilla</application>), this can be set under <literal>Edit
+ -> Preferences -> Advanced -> Proxies -> HTTP Proxy</literal>.
+ For <application>Internet Explorer</application>: <literal>Tools >
+ Internet Properties -> Connections -> LAN Setting</literal>. Then,
+ check <quote>Use Proxy</quote> and fill in the appropriate info (Address:
+ localhost, Port: 8000). Include if HTTPS proxy support too.
</para>
<para>
want to keep an eye out for sites that require cookies, and add these to
<filename>actionsfile</filename> as needed. By default, most of these will
be blocked until you add them to the configuration. If you want the browser
- to handle this, you will need to edit <filename>actionsfile</filename> and
- disable this feature. If you use more than one browser, it would make more
- sense to let <application>Junkbuster</application> handle this. In which
- case, the browser(s) should be set to accept all cookies.
+ to handle this instead, you will need to edit
+ <filename>actionsfile</filename> and disable this feature. If you use more
+ than one browser, it would make more sense to let
+ <application>Junkbuster</application> handle this. In which case, the
+ browser(s) should be set to accept all cookies.
+</para>
+
+<para>
+ If a particular site shows problems loading properly, try adding it
+ to the <literal>{fragile}</literal> section of
+ <filename>actionsfile</filename>. This will turn off most actions for
+ this site.
+</para>
+
+<para>
+ HTTP/1.1 support is not fully implemented. If browsers that
+ support HTTP/1.1 (like <application>Mozilla</application> or recent versions
+ of I.E.) experience problems, you might try to force HTTP/1.0 compatiblity.
+ For Mozilla, look under <literal>Edit -> Preferences -> Debug ->
+ Networking</literal>. Or set the <quote>+downgrade</quote> config option in
+ <filename>actionsfile</filename>.
+</para>
+
+<para>
+ After running <application>Junkbuster</application> for a while, you can
+ start to fine tune the configuration to suit your personal, or site,
+ preferences and requirements. There are many, many aspects that can
+ be customized. <quote>Actions</quote> (from <filename>actionsfile</filename>)
+ can be adjusted by pointing your browser to
+ <ulink url="http://i.j.b./">http://i.j.b./</ulink>,
+ and then follow the link to <quote>edit the actions list</quote>.
+ (This is an internal page and does not require Internet access.)
+</para>
+
+<para>
+ In fact, various aspects of <application>Junkbuster</application>
+ configuration can be viewed from this page, including
+ current configuration parameters, source code version numbers,
+ the browser's request headers, and <quote>actions</quote> that apply
+ to a given URL. In addition to the <filename>actionsfile</filename>
+ editor mentioned above, <application>Junkbuster</application> can also
+ be turned <quote>on</quote> and <quote>off</quote> from this page.
</para>
<para>
If you encounter problems, please verify it is a
<application>Junkbuster</application> bug, by disabling
<application>Junkbuster</application>, and then trying the same page.
- Before reporting it as a bug, see if there is not a configuration
+ Also, try another browser if possible to eliminate browser or site
+ problems. Before reporting it as a bug, see if there is not a configuration
option that is enabled that is causing the page not to load. You can
then add an exception for that page or site. If a bug, please report it to
the developers (see below).
communication (bugs, feature requests, etc.)
-->
Feature requests and other questions should be posted to the <ulink
- url="http://sourceforge.net/tracker/?atid=361118&group_id=11118&func=browse">Feature
+ url="http://sourceforge.net/tracker/?atid=361118&group_id=11118&func=browse">Feature
request page</ulink> at SourceForge. There is also an archive there.
</para>
<!-- ~~~~~ New section ~~~~~ -->
<sect1 id="seealso"><title>See also</title>
-<para>To be filled. What should go here :/
+<para>
+
+ <simplelist>
+ <member>
+ <ulink url="http://sourceforge.net/projects/ijbswa">http://sourceforge.net/projects/ijbswa</ulink>
+ </member>
+ </simplelist>
+ <simplelist>
+ <member>
+ <ulink url="http://ijbswa.sourceforge.net/">http://ijbswa.sourceforge.net/</ulink>
+ </member>
+ </simplelist>
+ <simplelist>
+ <member>
+ <ulink url="http://i.j.b./">http://i.j.b./</ulink>
+ </member>
+ </simplelist>
+ <simplelist>
+ <member>
+ <ulink url="http://www.junkbusters.com/ht/en/cookies.html">http://www.junkbusters.com/ht/en/cookies.html</ulink>
+ </member>
+ </simplelist>
+ <simplelist>
+ <member>
+ <ulink url="http://www.waldherr.org/junkbuster/">http://www.waldherr.org/junkbuster/</ulink>
+ </member>
+ </simplelist>
+ <simplelist>
+ <member>
+ <ulink url="http://privacy.net/analyze/">http://privacy.net/analyze/</ulink>
+ </member>
+ </simplelist>
+ <simplelist>
+ <member>
+ <ulink url="http://www.squid-cache.org/">http://www.squid-cache.org/</ulink>
+ </member>
+ </simplelist>
+
</para>
</sect1>
</para>
<para>
- <literal><emphasis>/.*/banners/.*</emphasis></literal> - A simple example
+ <emphasis><literal>/.*/banners/.*</literal></emphasis> - A simple example
that uses the common combination of <quote>.</quote> and <quote>*</quote> to
denote any character, zero or more times. In other words, any string at all.
So we start with a literal forward slash, then our regular expression pattern
</para>
<para>
- <literal><emphasis>/.*/adv((er)?ts?|ertis(ing|ements?))?/</emphasis></literal> -
+ <emphasis><literal>/.*/adv((er)?ts?|ertis(ing|ements?))?/</literal></emphasis> -
We have several literal forward slashes again (<quote>/</quote>), so we are
building another expression that is a file path statement. We have another
<quote>.*</quote>, so we are matching against any conceivable sub-path, just so
</para>
<para>
- <literal><emphasis>/.*/advert[0-9]+\.(gif|jpe?g)</emphasis></literal> - Again
+ <emphasis><literal>/.*/advert[0-9]+\.(gif|jpe?g)</literal></emphasis> - Again
another path statement with forward slashes. Anything in the square brackets
<quote>[]</quote> can be matched. This is using <quote>0-9</quote> as a
shorthand expression to mean any digit one through nine. It is the same as
</para>
<para>
- <literal><emphasis>s/microsoft(?!.com)/MicroSuck/i</emphasis></literal> - This is
+ <emphasis><literal>s/microsoft(?!.com)/MicroSuck/i</literal></emphasis> - This is
a substitution. <quote>MicroSuck</quote> will replace any occurence of
<quote>microsoft</quote>. The <quote>i</quote> at the end of the expression
means ignore case. The <quote>(?!.com)</quote> means
Temple Place - Suite 330, Boston, MA 02111-1307, USA.
$Log: user-manual.sgml,v $
-<<<<<<< user-manual.sgml
-
-=======
+ Revision 1.21 2001/10/31 21:11:03 hal9
+ Correct 2 minor errors
+
+ Revision 1.18 2001/10/24 18:45:26 hal9
+ *** empty log message ***
+
+ Revision 1.17 2001/10/24 17:10:55 hal9
+ Catching up with Jon's recent work, and a few other things.
+
+ Revision 1.16 2001/10/21 17:19:21 swa
+ wrong url in documentation
+
+ Revision 1.15 2001/10/14 23:46:24 hal9
+ Various minor changes. Fleshed out SEE ALSO section.
+
+ Revision 1.13 2001/10/10 17:28:33 hal9
+ Very minor changes.
+
+ Revision 1.12 2001/09/28 02:57:04 hal9
+ Ditto :/
+
+ Revision 1.11 2001/09/28 02:25:20 hal9
+ Ditto.
+
+ Revision 1.9 2001/09/27 23:50:29 hal9
+ A few changes. A short section on regular expression in appendix.
+
Revision 1.8 2001/09/25 00:34:59 hal9
Some additions, and re-arranging.
-
->>>>>>> 1.8
Revision 1.7 2001/09/24 14:31:36 hal9
Diddling.