chat(): Remove pointless NULL-pointer check
[privoxy.git] / privoxy.1
1 .\" This manpage has been generated by docbook2man-spec.pl
2 .\" (included in the Privoxy source tarball) from a DocBook document.
3 .TH "PRIVOXY" "1" "22 July 2020" "Privoxy 3.0.29 UNRELEASED" ""
4 .SH NAME
5 privoxy \- Privacy Enhancing Proxy
6 .SH SYNOPSIS
7
8 \fBprivoxy\fR [\fB\-\-chroot\fR ] [\fB\-\-config-test\fR ] [\fB\-\-help\fR ] [\fB\-\-no-daemon\fR ] [\fB\-\-pidfile \fIpidfile\fB\fR ] [\fB\-\-pre-chroot-nslookup \fIhostname\fB\fR ] [\fB\-\-user \fIuser[.group]\fB\fR ] [\fB\-\-version\fR ] [\fB\fIconfigfile\fB\fR ]
9
10 .SH "OPTIONS"
11 .PP
12 \fBPrivoxy\fR may be invoked with the following command line
13 options:
14 .TP
15 \fB\-\-chroot\fR
16 Before changing to the user ID given in the \-\-user option, chroot to
17 that user's home directory, i.e. make the kernel pretend to the
18 \fBPrivoxy\fR process that the directory tree starts
19 there. If set up carefully, this can limit the impact of possible
20 vulnerabilities in \fBPrivoxy\fR to the files contained in
21 that hierarchy.
22 .TP
23 \fB\-\-config-test\fR
24 Exit after loading the configuration files before binding to
25 the listen address. The exit code signals whether or not the
26 configuration files have been successfully loaded.
27
28 If the exit code is 1, at least one of the configuration files
29 is invalid, if it is 0, all the configuration files have been
30 successfully loaded (but may still contain errors that can
31 currently only be detected at run time).
32
33 This option doesn't affect the log setting, combination with
34 "--no-daemon" is recommended if a configured log file shouldn't
35 be used.
36 .TP
37 \fB\-\-help\fR
38 Print brief usage info and exit.
39 .TP
40 \fB\-\-no-daemon\fR
41 Don't  become  a daemon, i.e. don't fork and become process group
42 leader, don't detach from controlling tty, and do all logging there.
43 .TP
44 \fB\-\-pidfile \fIpidfile\fB\fR
45 On startup, write the process ID to \fIpidfile\fR.
46 Delete the \fIpidfile\fR on exit.
47 Failure to create or delete the \fIpidfile\fR
48 is non-fatal. If no \fB\-\-pidfile\fR option is given, no PID file will be used.
49 .TP
50 \fB\-\-pre-chroot-nslookup \fIhostname\fB\fR
51 Initialize the resolver library using \fIhostname\fR
52 before chroot'ing. On some systems this reduces the number of files
53 that must be copied into the chroot tree.
54 .TP
55 \fB\-\-user \fIuser[.group]\fB\fR
56 After (optionally) writing the PID file, assume the user ID of
57 \fIuser\fR and the GID of
58 \fIgroup\fR, or, if the optional
59 \fIgroup\fR was not given, the default group of
60 \fIuser\fR. Exit if the privileges are not
61 sufficient to do so.
62 .TP
63 \fB\-\-version\fR
64 Print version info and exit.
65 .PP
66 If the \fIconfigfile\fR is not specified on  the  command  line,
67 \fBPrivoxy\fR  will  look for a file named
68 \fIconfig\fR in the current directory. If no
69 \fIconfigfile\fR is found, \fBPrivoxy\fR will
70 fail to start.
71 .SH "DESCRIPTION"
72 .PP
73 Privoxy is a non-caching web proxy with advanced filtering capabilities
74 for enhancing privacy, modifying web page data and HTTP headers, controlling
75 access, and removing ads and other obnoxious Internet junk. Privoxy has a
76 flexible configuration and can be customized to suit individual needs and tastes.
77 It has application for both stand-alone systems and multi-user networks.
78 .PP
79 Privoxy is Free Software and licensed under the GNU GPLv2 or later.
80 .PP
81 Privoxy is an associated project of Software in the Public Interest (SPI).
82 .PP
83 Helping hands and donations are welcome:
84 .PP
85 .TP 0.2i
86 \(bu
87 https://www.privoxy.org/faq/general.html#PARTICIPATE
88 .TP 0.2i
89 \(bu
90 https://www.privoxy.org/faq/general.html#DONATE
91 .SH "INSTALLATION AND USAGE"
92 .PP
93 Browsers can either be individually configured to use
94 \fBPrivoxy\fR as a HTTP proxy (recommended),
95 or \fBPrivoxy\fR can be combined with a packet
96 filter to build an intercepting proxy
97 (see \fIconfig\fR).  The default setting is  for
98 localhost,  on port  8118 (configurable in the main config file).  To set the
99 HTTP proxy in Firefox, go through: \fBTools\fR;
100 \fBOptions\fR; \fBGeneral\fR;
101 \fBConnection Settings\fR;
102 \fBManual Proxy Configuration\fR.
103 .PP
104 For Internet Explorer, go through: \fBTools\fR;
105 \fBInternet Properties\fR; \fBConnections\fR;
106 \fBLAN Settings\fR.
107 .PP
108 The Secure (SSL) Proxy should also be set to the same values, otherwise
109 https: URLs will not be proxied. Note: \fBPrivoxy\fR can only
110 proxy HTTP and HTTPS traffic. Do not try it with FTP or other protocols.
111 HTTPS presents some limitations, and not all features will work with HTTPS
112 connections.
113 .PP
114 For other browsers, check the documentation.
115 .SH "CONFIGURATION"
116 .PP
117 \fBPrivoxy\fR can be configured with the various configuration
118 files. The default configuration files are: \fIconfig\fR,
119 \fIdefault.filter\fR, \fIdefault.action\fR and
120 \fIdefault.action\fR. \fIuser.action\fR should
121 be used for locally defined exceptions to the default rules in
122 \fImatch-all.action\fR and \fIdefault.action\fR,
123 and \fIuser.filter\fR for locally defined filters. These are
124 well commented.  On Unix and Unix-like systems, these are located in
125 \fI/etc/privoxy/\fR by default.
126 .PP
127 \fBPrivoxy\fR uses the concept of \fBactions\fR
128 in order to manipulate the data stream between the browser and remote sites.
129 There are various actions available with specific functions for such things
130 as blocking web sites, managing cookies, etc. These actions can be invoked
131 individually or combined, and used against individual URLs, or groups of URLs
132 that can be defined using wildcards and regular expressions. The result is
133 that the user has greatly enhanced control and freedom.
134 .PP
135 The actions list (ad blocks, etc) can also be configured with your
136 web browser at http://config.privoxy.org/
137 (assuming the configuration allows it).
138 \fBPrivoxy's\fR configuration parameters  can also  be viewed at
139 the same page. In addition, \fBPrivoxy\fR can be toggled on/off.
140 This is an internal page, and does not require Internet access.
141 .PP
142 See the \fIUser Manual\fR for a detailed
143 explanation of installation, general usage, all configuration options, new
144 features and notes on upgrading.
145 .SH "FILES"
146
147 .nf
148  \fI/usr/sbin/privoxy\fR
149  \fI/etc/privoxy/config\fR
150  \fI/etc/privoxy/match-all.action\fR
151  \fI/etc/privoxy/default.action\fR
152  \fI/etc/privoxy/user.action\fR
153  \fI/etc/privoxy/default.filter\fR
154  \fI/etc/privoxy/user.filter\fR
155  \fI/etc/privoxy/trust\fR
156  \fI/etc/privoxy/templates/*\fR
157  \fI/var/log/privoxy/logfile\fR
158 .fi
159 .PP
160 Various other files should be included, but may vary depending on platform
161 and build configuration. Additional documentation should be included in the local
162 documentation directory.
163 .SH "SIGNALS"
164 .PP
165 \fBPrivoxy\fR terminates on the \fBSIGINT\fR
166 and \fBSIGTERM\fR signals. Log
167 rotation scripts may cause a re-opening of the logfile by sending a
168 \fBSIGHUP\fR to \fBPrivoxy\fR. Note that unlike
169 other daemons,  \fBPrivoxy\fR does not need to be made aware of
170 config file changes by \fBSIGHUP\fR -- it will detect them
171 automatically. Signals other than the ones listed above aren't explicitly
172 handled and result in the default action defined by the operating system.
173 .SH "NOTES"
174 .PP
175 This is a UNRELEASED version of \fBPrivoxy\fR. Not
176 all features are well tested.
177 .PP
178 Please see the \fIUser Manual\fR on how to contact the
179 developers, for feature requests, reporting problems, and other questions.
180 .SH "SEE ALSO"
181 .PP
182 Other references and sites of interest to \fBPrivoxy\fR
183 users:
184
185 https://www.privoxy.org/,
186 the \fBPrivoxy\fR Home page.
187
188 https://www.privoxy.org/faq/,
189 the \fBPrivoxy\fR FAQ.
190
191 https://www.privoxy.org/developer-manual/,
192 the \fBPrivoxy\fR developer manual.
193
194 https://sourceforge.net/projects/ijbswa/,
195 the Project Page for \fBPrivoxy\fR on
196 SourceForge.
197
198 http://config.privoxy.org/,
199 the web-based user interface. \fBPrivoxy\fR must be
200 running for this to work. Shortcut: http://p.p/
201
202 https://sourceforge.net/tracker/?group_id=11118&atid=460288, to submit ``misses'' and other
203 configuration related suggestions to the developers.
204 .SH "DEVELOPMENT TEAM"
205
206 .nf
207  Fabian Keil, lead developer
208  David Schmidt
209  Lee Rian
210  Roland Rosenfeld
211  Ian Silvester
212 .fi
213 .SH "COPYRIGHT AND LICENSE"
214 .SS "COPYRIGHT"
215 .PP
216 Copyright (C) 2001-2020 by Privoxy Developers <privoxy-devel@lists.privoxy.org>
217 .PP
218 Some source code is based on code Copyright (C) 1997 by Anonymous Coders
219 and Junkbusters, Inc. and licensed under the \fIGNU General Public
220 License\fR.
221 .SS "LICENSE"
222 .PP
223 \fBPrivoxy\fR is free software; you can
224 redistribute and/or modify its source code under the terms
225 of the \fIGNU General Public License\fR
226 as published by the Free Software Foundation, either version 2
227 of the license, or (at your option) any later version.
228 .PP
229 The same is true for \fBPrivoxy\fR binaries
230 unless they are linked with
231 mbed TLS in which
232 case you can redistribute them and/or modify them under the terms
233 of the \fIGNU General Public License\fR
234 as published by the Free Software Foundation, either version 3
235 of the license, or (at your option) any later version.
236 .PP
237 \fBPrivoxy\fR is distributed in the hope that
238 it will be useful, but WITHOUT ANY WARRANTY; without even the implied
239 warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
240 See the  \fIlicense\fR for details.