Privoxy Developer Manual
-Copyright © 2001, 2002 by Privoxy Developers
+Copyright © 2001-2006 by Privoxy Developers
-$Id: developer-manual.sgml,v 2.3 2002/09/05 02:27:59 hal9 Exp $
+$Id: developer-manual.sgml,v 2.11 2006/09/26 02:36:29 hal9 Exp $
The developer manual provides guidance on coding, testing, packaging,
documentation and other issues of importance to those involved with Privoxy
join the team.
Please note that this document is constantly evolving. This copy represents the
-state at the release of version 3.1.1. You can find the latest version of the
+state at the release of version 3.0.6. You can find the latest version of the
this manual at http://www.privoxy.org/developer-manual/. Please see the Contact
section on how to contact the developers.
8. Contacting the developers, Bug Reporting and Feature Requests
8.1. Get Support
- 8.2. Report Bugs
+ 8.2. Reporting Problems
+
+ 8.2.1. Reporting Ads or Other Configuration Problems
+ 8.2.2. Reporting Bugs
+
8.3. Request New Features
- 8.4. Report Ads or Other Actions-Related Problems
- 8.5. Other
+ 8.4. Other
9. Privoxy Copyright, License and History
1.1. Quickstart to Privoxy Development
-You'll need an account on Sourceforge to support our development. Mail your ID
-to the list and wait until a project manager has added you.
+The first step is to join the developer's mailing list. You can submit your
+ideas, or even better patches. Patches are best submitted to the Sourceforge
+tracker set up for this purpose, but can be sent to the list for review too.
You will also need to have a cvs package installed, which will entail having
ssh installed as well (which seems to be a requirement of SourceForge), in
order to access the cvs repository. Having the GNU build tools is also going to
be important (particularly, autoconf and gmake).
-For the time being (read, this section is under construction), please refer to
-the extensive comments in the source code.
+For the time being (read, this section is under construction), you can also
+refer to the extensive comments in the source code. In fact, reading the code
+is recommended in any case.
-------------------------------------------------------------------------------
2. The CVS Repository
-If you intend to help us with programming, documentation or packaging you will
-need write access to our holy grail, the CVS repository. Please read this
-chapter completely before accessing via CVS.
+If you become part of the active development team, you will eventually need
+write access to our holy grail, the CVS repository. One of the team members
+will need to set this up for you. Please read this chapter completely before
+accessing via CVS.
-------------------------------------------------------------------------------
The project's CVS repository is hosted on SourceForge. Please refer to the
chapters 6 and 7 in SF's site documentation for the technical access details
for your operating system. For historical reasons, the CVS server is called
-cvs.ijbswa.sourceforge.net, the repository is called ijbswa, and the source
+ijbswa.cvs.sourceforge.net, the repository is called ijbswa, and the source
tree module is called current.
-------------------------------------------------------------------------------
Within the CVS repository, there are modules and branches. As mentioned, the
sources are in the current "module". Other modules are present for platform
specific issues. There is a webview of the CVS hierarchy at http://
-cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ijbswa/, which might help with
-visualizing how these pieces fit together.
+ijbswa.cvs.sourceforge.net/ijbswa/, which might help with visualizing how these
+pieces fit together.
Branches are used to fork a sub-development path from the main trunk. Within
the current module where the sources are, there is always at least one "branch"
from the main trunk devoted to a stable release series. The main trunk is where
-active development takes place for the next stable series (e.g. 3.2.x). And for
-testing bugfixes for the stable series. Just prior to each stable series (e.g.
-3.0.x), a branch is created just for stable series releases (e.g. 3.0.0 ->
-3.0.1 -> 3.0.2, etc). Once the initial stable release of any stable branch has
-taken place, this branch is only used for bugfixes, which have had prior
-testing before being committed to CVS. (See Version Numbers below for details
-on versioning.)
+active development takes place for the next stable series (e.g. 3.2.x). So just
+prior to each stable series (e.g. 3.0.x), a branch is created just for stable
+series releases (e.g. 3.0.0 -> 3.0.1 -> 3.0.2, etc). Once the initial stable
+release of any stable branch has taken place, this branch is only used for
+bugfixes, which have had prior testing before being committed to CVS. (See
+Version Numbers below for details on versioning.)
+
+At one time there were two distinct branches: stable and unstable. The more
+drastic changes were to be in the unstable branch. These branches have now been
+merged to minimize time and effort of maintaining two branches.
-------------------------------------------------------------------------------
Basic Guidelines, for all branches:
- * Never (read: never, ever) be tempted to commit that small change without
- testing it thoroughly first. When we're close to a public release, ask a
- fellow developer to review your changes.
+ * Please don't commit even a small change without testing it thoroughly
+ first. When we're close to a public release, ask a fellow developer to
+ review your changes.
* Your commit message should give a concise overview of what you changed (no
big details) and why you changed it Just check previous messages for good
* Note that near a major public release, we get more cautious. There is
always the possibility to submit a patch to the patch tracker instead.
-Stable branches are handled with decidedly more care, especially after the
-initial *.*.0 release, and we are just in bugfix mode. In addition to the
-above, the below applies only to the stable branch (currently the
-v_3_0_branchpoint branch):
-
- * Do not commit anything into the stable branch, unless immediately before a
- new release! There needs to be testing done before it hits CVS, and to
- ensure that all changes are appropriate just to fix whatever the problem
- is.
-
- * Where possible, bugfixes and changes should be tested in the main
- development trunk first. There may be occasions where this is not feasible,
- though.
-
- * Alternately, proposed changes can be submitted as patches to the patch
- tracker on Sourceforge first: http://sourceforge.net/tracker/?group_id=
- 11118&atid=311118. Then ask for peer review.
-
- * Do not commit anything unless your proposed changes have been well tested
- first, by other members of the project, and have prior approval of the
- project leaders or consensus of the devel list.
-
- * Do not even think about anything except bugfixes. No new features!
-
-------------------------------------------------------------------------------
3. Documentation Guidelines
modular stylesheets (or comparable alternatives), and either jade or openjade
(recommended) installed in order to build docs from source. Currently there is
user-manual, FAQ, and, of course this, the developer-manual in this format. The
-README, AUTHORS privoxy.1 (man page), and config files are also now maintained
-as Docbook SGML. These files, when built, in the top-level source directory are
-generated files! Also, the Privoxy index.html (and a variation on this file,
-privoxy-index.html, meant for inclusion with doc packages), are maintained as
-SGML as well. DO NOT edit these directly. Edit the SGML source, or contact
-someone involved in the documentation (at present Hal).
+README, AUTHORS, INSTALL, privoxy.1 (man page), and config files are also now
+maintained as Docbook SGML. These files, when built, in the top-level source
+directory are generated files! Also, the Privoxy index.html (and a variation on
+this file, privoxy-index.html, meant for inclusion with doc packages), are
+maintained as SGML as well. DO NOT edit these directly. Edit the SGML source,
+or contact someone involved in the documentation.
config requires some special handling. The reason it is maintained this way is
so that the extensive comments in the file mirror those in user-manual. But the
errors and mis-formatting. Once satisfied that it is correct, then it should be
hand copied to config.
-Other, less formal documents (e.g. LICENSE, INSTALL) are maintained as plain
-text files in the top-level source directory. At least for the time being.
+Other, less formal documents (e.g. LICENSE) are maintained as plain text files
+in the top-level source directory.
Packagers are encouraged to include this documentation. For those without the
ability to build the docs locally, text versions of each are kept in CVS. HTML
-versions are also now being kept in CVS under doc/webserver/*.
+versions are also being kept in CVS under doc/webserver/*. And PDF version are
+kept in doc/pdf/*.
Formal documents are built with the Makefile targets of make dok, or
alternately make redhat-dok. If you have problems, try both. The build process
instance.
* Our documents are available in differing formats. Right now, they are just
- plain text, TML, and PDF, but others are always a future possibility. Be
+ plain text, HTML, and PDF, but others are always a future possibility. Be
careful with URLs (<ulink>), and avoid this mistake:
My favorite site is <ulink url="http://example.com">here</ulink>.
* Commonly used "internal entities":
- p-version: the Privoxy version string, e.g. "3.1.1".
+ p-version: the Privoxy version string, e.g. "3.0.6".
p-status: the project status, either "alpha", "beta", or "stable".
p-not-stable: use to conditionally include text in "not stable" releases
(e.g. "beta").
Example for file comments:
-const char FILENAME_rcs[] = "$Id: developer-manual.sgml,v 2.3 2002/09/05 02:27:59 hal9 Exp $";
-/*********************************************************************
- *
- * File : $Source$
- *
- * Purpose : (Fill me in with a good description!)
- *
- * Copyright : Written by and Copyright (C) 2001 the SourceForge
- * Privoxy team. http://www.privoxy.org/
- *
- * Based on the Internet Junkbuster originally written
- * by and Copyright (C) 1997 Anonymous Coders and
- * Junkbusters Corporation. http://www.junkbusters.com
- *
- * This program is free software; you can redistribute it
- * and/or modify it under the terms of the GNU General
- * Public License as published by the Free Software
- * Foundation; either version 2 of the License, or (at
- * your option) any later version.
- *
- * This program is distributed in the hope that it will
- * be useful, but WITHOUT ANY WARRANTY; without even the
- * implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE. See the GNU General Public
- * License for more details.
- *
- * The GNU General Public License should be included with
- * this file. If not, you can view it at
- * http://www.gnu.org/copyleft/gpl.html
- * or write to the Free Software Foundation, Inc., 59
- * Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *
- * Revisions :
- * $Log$
- *
- *********************************************************************/
-
-
-#include "config.h"
-
- ...necessary include files for us to do our work...
-
-const char FILENAME_h_rcs[] = FILENAME_H_VERSION;
+const char FILENAME_rcs[] = "$Id: developer-manual.sgml,v 2.11 2006/09/26 02:36:29 hal9 Exp $";
+/*********************************************************************
+ *
+ * File : $Source$
+ *
+ * Purpose : (Fill me in with a good description!)
+ *
+ * Copyright : Written by and Copyright (C) 2001-2006 the SourceForge
+ * Privoxy team. http://www.privoxy.org/
+ *
+ * Based on the Internet Junkbuster originally written
+ * by and Copyright (C) 1997 Anonymous Coders and
+ * Junkbusters Corporation. http://www.junkbusters.com
+ *
+ * This program is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU General
+ * Public License as published by the Free Software
+ * Foundation; either version 2 of the License, or (at
+ * your option) any later version.
+ *
+ * This program is distributed in the hope that it will
+ * be useful, but WITHOUT ANY WARRANTY; without even the
+ * implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU General Public
+ * License for more details.
+ *
+ * The GNU General Public License should be included with
+ * this file. If not, you can view it at
+ * http://www.gnu.org/copyleft/gpl.html
+ * or write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 ,
+ * USA
+ *
+ * Revisions :
+ * $Log$
+ *
+ *********************************************************************/
+
+
+#include "config.h"
+
+ ...necessary include files for us to do our work...
+
+const char FILENAME_h_rcs[] = FILENAME_H_VERSION;
Note: This declares the rcs variables that should be added to the
"show-proxy-args" page. If this is a brand new creation by you, you are free to
Example for file header comments:
-#ifndef _FILENAME_H
-#define _FILENAME_H
-#define FILENAME_H_VERSION "$Id: developer-manual.sgml,v 2.3 2002/09/05 02:27:59 hal9 Exp $"
-/*********************************************************************
- *
- * File : $Source$
- *
- * Purpose : (Fill me in with a good description!)
- *
- * Copyright : Written by and Copyright (C) 2001 the SourceForge
- * Privoxy team. http://www.privoxy.org/
- *
- * Based on the Internet Junkbuster originally written
- * by and Copyright (C) 1997 Anonymous Coders and
- * Junkbusters Corporation. http://www.junkbusters.com
- *
- * This program is free software; you can redistribute it
- * and/or modify it under the terms of the GNU General
- * Public License as published by the Free Software
- * Foundation; either version 2 of the License, or (at
- * your option) any later version.
- *
- * This program is distributed in the hope that it will
- * be useful, but WITHOUT ANY WARRANTY; without even the
- * implied warranty of MERCHANTABILITY or FITNESS FOR A
- * PARTICULAR PURPOSE. See the GNU General Public
- * License for more details.
- *
- * The GNU General Public License should be included with
- * this file. If not, you can view it at
- * http://www.gnu.org/copyleft/gpl.html
- * or write to the Free Software Foundation, Inc., 59
- * Temple Place - Suite 330, Boston, MA 02111-1307, USA.
- *
- * Revisions :
- * $Log$
- *
- *********************************************************************/
-
-
-#include "project.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
- ... function headers here ...
-
-
-/* Revision control strings from this header and associated .c file */
-extern const char FILENAME_rcs[];
-extern const char FILENAME_h_rcs[];
-
-
-#ifdef __cplusplus
-} /* extern "C" */
-#endif
-
-#endif /* ndef _FILENAME_H */
-
-/*
- Local Variables:
- tab-width: 3
- end:
-*/
+#ifndef _FILENAME_H
+#define _FILENAME_H
+#define FILENAME_H_VERSION "$Id: developer-manual.sgml,v 2.11 2006/09/26 02:36:29 hal9 Exp $"
+/*********************************************************************
+ *
+ * File : $Source$
+ *
+ * Purpose : (Fill me in with a good description!)
+ *
+ * Copyright : Written by and Copyright (C) 2001-2006 the SourceForge
+ * Privoxy team. http://www.privoxy.org/
+ *
+ * Based on the Internet Junkbuster originally written
+ * by and Copyright (C) 1997 Anonymous Coders and
+ * Junkbusters Corporation. http://www.junkbusters.com
+ *
+ * This program is free software; you can redistribute it
+ * and/or modify it under the terms of the GNU General
+ * Public License as published by the Free Software
+ * Foundation; either version 2 of the License, or (at
+ * your option) any later version.
+ *
+ * This program is distributed in the hope that it will
+ * be useful, but WITHOUT ANY WARRANTY; without even the
+ * implied warranty of MERCHANTABILITY or FITNESS FOR A
+ * PARTICULAR PURPOSE. See the GNU General Public
+ * License for more details.
+ *
+ * The GNU General Public License should be included with
+ * this file. If not, you can view it at
+ * http://www.gnu.org/copyleft/gpl.html
+ * or write to the Free Software Foundation, Inc.,
+ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 ,
+ * USA
+ *
+ * Revisions :
+ * $Log$
+ *
+ *********************************************************************/
+
+
+#include "project.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+ ... function headers here ...
+
+
+/* Revision control strings from this header and associated .c file */
+extern const char FILENAME_rcs[];
+extern const char FILENAME_h_rcs[];
+
+
+#ifdef __cplusplus
+} /* extern "C" */
+#endif
+
+#endif /* ndef _FILENAME_H */
+
+/*
+ Local Variables:
+ tab-width: 3
+ end:
+*/
Example for function comments:
distinguished from released versions. The point version is reset to zero
when the minor changes.
+ Stable branches work a little differently, since there should be little to
+ no development happening in such branches. Remember, only bugfixes, which
+ presumably should have had some testing before being committed. Stable
+ branches will then have their version reported as 0.0.0, during that period
+ between releases when changes are being added. This is to denote that this
+ code is not for release. Then as the release nears, the version is bumped
+ according: e.g. 3.0.1 -> 0.0.0 -> 3.0.2.
+
In summary, the main CVS trunk is the development branch where new features are
being worked on for the next stable series. This should almost always be where
the most activity takes place. There is always at least one stable branch from
the trunk, e.g now it is 3.0, which is only used to release stable versions.
-Once the initial .0 release of the stable branch has been done, then as a rule,
-only bugfixes that have had prior testing should be committed to the stable
-branch. At that point, it is mostly "hands off". Once there are enough bugfixes
-to justify a new release, the version of this branch is again incremented
-Example: 3.0.0 -> 3.0.1 -> 3.0.2, etc are all stable releases from within the
-stable branch. 3.1.x is currently the main trunk, and where work on 3.2.x is
-taking place. If any questions, please post to the devel list before committing
-to a stable branch!
+Once the initial *.0 release of the stable branch has been done, then as a
+rule, only bugfixes that have had prior testing should be committed to the
+stable branch. Once there are enough bugfixes to justify a new release, the
+version of this branch is again incremented Example: 3.0.0 -> 3.0.1 -> 3.0.2,
+etc are all stable releases from within the stable branch. 3.1.x is currently
+the main trunk, and where work on 3.2.x is taking place. If any questions,
+please post to the devel list before committing to a stable branch!
+
+Developers should remember too that if they commit a bugfix to the stable
+branch, this will more than likely require a separate submission to the main
+trunk, since these are separate development trees within CVS. If you are
+working on both, then this would require at least two separate check outs (i.e
+main trunk, and the stable release branch, which is v_3_0_branch at the
+moment).
-------------------------------------------------------------------------------
mkdir dist # delete or choose different name if it already exists
cd dist
- cvs -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa login
- cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa export -r v_X_Y_Z current
+ cvs -d:pserver:anonymous@ijbswa.cvs.sourceforge.net:/cvsroot/ijbswa login
+ cvs -z3 -d:pserver:anonymous@ijbswa.cvs.sourceforge.net:/cvsroot/ijbswa export -r v_X_Y_Z current
Do NOT change a single bit, including, but not limited to version information
after export from CVS. This is to make sure that all release packages, and with
them, all future bug reports, are based on exactly the same code.
++-----------------------------------------------------------------------------+
+| Warning |
+|-----------------------------------------------------------------------------|
+|Every significant release of Privoxy has included at least one package that |
+|either had incorrect versions of files, missing files, or incidental |
+|leftovers from a previous build process that gave unknown numbers of users |
+|headaches to try to figure out what was wrong. PLEASE, make sure you are |
+|using pristene sources, and are following the prescribed process! |
++-----------------------------------------------------------------------------+
+
Please find additional instructions for the source tarball and the individual
platform dependent binary packages below. And details on the Sourceforge
release process below that.
directory with privoxy-index.html, (i.e. one level up from the manual
directories).
- * user.action is designed for local preferences. Make sure this does not get
- overwritten!
+ * user.action and user.filter are designed for local preferences. Make sure
+ these do not get overwritten! config should not be overwritten either. This
+ has especially important configuration data in it. trust should be left in
+ tact as well.
- * Other configuration files should be installed as the new defaults, but all
+ * Other configuration files (default.action, default.filter and
+ standard.action) should be installed as the new defaults, but all
previously installed configuration files should be preserved as backups.
- This is just good manners :-)
+ This is just good manners :-) These files are likely to change between
+ releases and contain important new features and bug fixes.
* Please check platform specific notes in this doc, if you haven't done
"Privoxy" packaging before for other platform specific issues. Conversely,
directory. (See "Building and releasing packages" above). Then get the OS/2
Setup module:
- cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa co os2setup
+ cvs -z3 -d:pserver:anonymous@ijbswa.cvs.sourceforge.net:/cvsroot/ijbswa co os2setup
You will need a mix of development tools. The main compilation takes place with
IBM Visual Age C++. Some ancillary work takes place with GNU tools, available
directory. (See "Building and releasing packages" above). Then get the Windows
setup module:
- cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa co winsetup
+ cvs -z3 -d:pserver:anonymous@ijbswa.cvs.sourceforge.net:/cvsroot/ijbswa co winsetup
Then you can build the package. This is fully automated, and is controlled by
winsetup/GNUmakefile. All you need to do is:
directory. (See "Building and releasing packages" above). Then add a log entry
to debian/changelog, if it is not already there, for example by running:
- debchange -v 3.1.1-alpha-1 "New upstream version"
+ debchange -v 3.0.6-stable-1 "New upstream version"
Then, run:
dpkg-buildpackage -rfakeroot -us -uc -b
-This will create ../privoxy_3.1.1-alpha-1_i386.deb which can be uploaded. To
+This will create ../privoxy_3.0.6-stable-1_i386.deb which can be uploaded. To
upload the package to Sourceforge, simply issue
make debian-upload
directory. (See "Building and releasing packages" above). Then get the Mac OSX
setup module:
- cvs -z3 -d:pserver:anonymous@cvs.ijbswa.sourceforge.net:/cvsroot/ijbswa co osxsetup
+ cvs -z3 -d:pserver:anonymous@ijbswa.cvs.sourceforge.net:/cvsroot/ijbswa co osxsetup
Then run:
group_id=11118, making sure you are logged in. Find your target platform in the
second column, and click Add Release. You will then need to create a new
release for your package, using the format of $VERSION ($CODE_STATUS), e.g.
-3.1.1 (beta).
+3.0.6 (beta).
Now just follow the prompts. Be sure to add any appropriate Release notes. You
should see your freshly uploaded packages in "Step 2. Add Files To This
an email to the announce mailing list, Subject: "Version X.Y.Z available for
download". Be sure to include the download location, the release notes and the
Changelog. Also, post an updated News item on the project page Sourceforge, and
-update the Home page and docs linked from the Home page (see below).
+update the Home page and docs linked from the Home page (see below). Other news
+sites and release oriented sites, such as Freshmeat, should also be notified.
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-8.2. Report Bugs
+8.2. Reporting Problems
+
+"Problems" for our purposes, come in two forms:
+
+ * Configuration issues, such as ads that slip through, or sites that don't
+ function properly due to one Privoxy "action" or another being turned "on".
+
+ * "Bugs" in the programming code that makes up Privoxy, such as that might
+ cause a crash.
+
+-------------------------------------------------------------------------------
+
+8.2.1. Reporting Ads or Other Configuration Problems
+
+Please send feedback on ads that slipped through, innocent images that were
+blocked, sites that don't work properly, and other configuration related
+problem of default.action file, to http://sourceforge.net/tracker/?group_id=
+11118&atid=460288, the Actions File Tracker.
+
+New, improved default.action files may occasionally be made available based on
+your feedback. These will be announced on the ijbswa-announce list and
+available from our the files section of our project page.
+
+-------------------------------------------------------------------------------
+
+8.2.2. Reporting Bugs
Please report all bugs only through our bug tracker: http://sourceforge.net/
tracker/?group_id=11118&atid=111118.
Before doing so, please make sure that the bug has not already been submitted
-and observe the additional hints at the top of the submit form.
+and observe the additional hints at the top of the submit form. If already
+submitted, please feel free to add any info to the original report that might
+help to solve the issue.
Please try to verify that it is a Privoxy bug, and not a browser or site bug
-first. If unsure, try toggling off Privoxy, and see if the problem persists.
-The appendix of the user manual also has helpful information on action
-debugging. If you are using your own custom configuration, please try the stock
-configs to see if the problem is configuration related.
+first. If unsure, try toggling off Privoxy, and see if the problem persists. If
+you are using your own custom configuration, please try the stock configs to
+see if the problem is configuration related.
+
+If not using the latest version, the bug may have been found and fixed in the
+meantime. We would appreciate if you could take the time to upgrade to the
+latest version (or even the latest CVS snapshot) and verify your bug.
-If not using the latest version, chances are that the bug has been found and
-fixed in the meantime. We would appreciate if you could take the time to
-upgrade to the latest version (or even the latest CVS snapshot) and verify your
-bug, but this is not required for reporting.
+Please be sure to provide the following information:
+
+ * The exact Privoxy version of the proxy software (if you got the source from
+ CVS, please also provide the source code revisions as shown in http://
+ config.privoxy.org/show-version).
+
+ * The operating system and versions you run Privoxy on, (e.g. Windows XP
+ SP2), if you are using a Unix flavor, sending the output of "uname -a"
+ should do.
+
+ * The name, platform, and version of the browser you were using (e.g.
+ Internet Explorer v5.5 for Mac).
+
+ * The URL where the problem occurred, or some way for us to duplicate the
+ problem (e.g. http://somesite.example.com/?somethingelse=123).
+
+ * Whether your version of Privoxy is one supplied by the developers of
+ Privoxy via SourceForge, or somewhere else.
+
+ * Whether you are using Privoxy in tandem with another proxy such as Tor. If
+ so, please try disabling the other proxy.
+
+ * Whether you are using a personal firewall product. If so, does Privoxy work
+ without it?
+
+ * Any other pertinent information to help identify the problem such as config
+ or log file excerpts (yes, you should have log file entries for each action
+ taken).
+
+ * Please provide your SF login, or email address, in case we need to contact
+ you.
+
+The appendix of the Privoxy User Manual also has helpful information on
+understanding actions, and action debugging.
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-8.4. Report Ads or Other Actions-Related Problems
-
-Please send feedback on ads that slipped through, innocent images that were
-blocked, and any other problems relating to the default.action file through our
-actions feedback mechanism located at http://www.privoxy.org/actions/. On this
-page, you will also find a bookmark which will take you back there from any
-troubled site and even pre-fill the form!
-
-New, improved default.action files will occasionally be made available based on
-your feedback. These will be announced on the ijbswa-announce list and
-available from our the files section of our project page.
-
--------------------------------------------------------------------------------
-
-8.5. Other
+8.4. Other
For any other issues, feel free to use the mailing lists. Technically
interested users and people who wish to contribute to the project are also
9. Privoxy Copyright, License and History
-Copyright © 2001, 2002 by Privoxy Developers <developers@privoxy.org>
+Copyright © 2001 - 2006 by Privoxy Developers <
+ijbswa-developers@lists.sourceforge.net>
Some source code is based on code Copyright © 1997 by Anonymous Coders and
Junkbusters, Inc. and licensed under the GNU General Public License.
This program is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. See the GNU General Public License for more details, which
-is available from the Free Software Foundation, Inc, 59 Temple Place - Suite
-330, Boston, MA 02111-1307, USA.
+is available from the Free Software Foundation, Inc, 51 Franklin Street, Fifth
+Floor, Boston, MA 02110-1301, USA
You should have received a copy of the GNU General Public License along with
this program; if not, write to the
Free Software
- Foundation, Inc. 59 Temple Place - Suite 330
- Boston, MA 02111-1307
+ Foundation, Inc. 51 Franklin Street, Fifth Floor
+ Boston, MA 02110-1301
USA
-------------------------------------------------------------------------------
9.2. History
-In the beginning, there was the Internet Junkbuster, by Anonymous Coders and
-Junkbusters Corporation. It saved many users a lot of pain in the early days of
-web advertising and user tracking.
+A long time ago, there was the Internet Junkbuster, by Anonymous Coders and
+Junkbusters Corporation. This saved many users a lot of pain in the early days
+of web advertising and user tracking.
But the web, its protocols and standards, and with it, the techniques for
-forcing users to consume ads, give up autonomy over their browsing, and for
-spying on them, kept evolving. Unfortunately, the Internet Junkbuster did not.
-Version 2.0.2, published in 1998, was (and is) the last official release
-available from Junkbusters Corporation. Fortunately, it had been released under
-the GNU GPL, which allowed further development by others.
+forcing ads on users, give up autonomy over their browsing, and for tracking
+them, keeps evolving. Unfortunately, the Internet Junkbuster did not. Version
+2.0.2, published in 1998, was (and is) the last official release available from
+Junkbusters Corporation. Fortunately, it had been released under the GNU GPL,
+which allowed further development by others.
So Stefan Waldherr started maintaining an improved version of the software, to
which eventually a number of people contributed patches. It could already
inside out, upside down, and then reassembled it, adding many new features
along the way.
-The result of this is Privoxy, whose first stable release, 3.0, was released
+The result of this is Privoxy, whose first stable version, 3.0, was released
August, 2002.
-------------------------------------------------------------------------------
http://config.privoxy.org/, the web-based user interface. Privoxy must be
running for this to work. Shortcut: http://p.p/
-http://www.privoxy.org/actions/, to submit "misses" to the developers.
-
-http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ijbswa/contrib/, cool and fun
-ideas from Privoxy users.
+http://sourceforge.net/tracker/?group_id=11118&atid=460288, to submit "misses"
+and other configuration related suggestions to the developers.
http://www.junkbusters.com/ht/en/cookies.html, an explanation how cookies are
used to track web users.
http://www.junkbusters.com/ijb.html, the original Internet Junkbuster.
-http://www.waldherr.org/junkbuster/, Stefan Waldherr's version of Junkbuster,
-from which Privoxy was derived.
-
-http://privacy.net/analyze/, a useful site to check what information about you
-is leaked while you browse the web.
+http://privacy.net/, a useful site to check what information about you is
+leaked while you browse the web.
http://www.squid-cache.org/, a very popular caching proxy, which is often used
together with Privoxy.
+http://tor.eff.org/, Tor can help anonymize web browsing, web publishing,
+instant messaging, IRC, SSH, and other applications.
+
http://www.privoxy.org/developer-manual/, the Privoxy developer manual.