1 # $Id: junkbuster-rh.spec,v 1.26 2002/01/09 18:21:10 hal9 Exp $
3 # Written by and Copyright (C) 2001 the SourceForge
4 # IJBSWA team. http://ijbswa.sourceforge.net
6 # Based on the Internet Junkbuster originally written
7 # by and Copyright (C) 1997 Anonymous Coders and
8 # Junkbusters Corporation. http://www.junkbusters.com
10 # This program is free software; you can redistribute it
11 # and/or modify it under the terms of the GNU General
12 # Public License as published by the Free Software
13 # Foundation; either version 2 of the License, or (at
14 # your option) any later version.
16 # This program is distributed in the hope that it will
17 # be useful, but WITHOUT ANY WARRANTY; without even the
18 # implied warranty of MERCHANTABILITY or FITNESS FOR A
19 # PARTICULAR PURPOSE. See the GNU General Public
20 # License for more details.
22 # The GNU General Public License should be included with
23 # this file. If not, you can view it at
24 # http://www.gnu.org/copyleft/gpl.html
25 # or write to the Free Software Foundation, Inc., 59
26 # Temple Place - Suite 330, Boston, MA 02111-1307, USA.
28 # $Log: junkbuster-rh.spec,v $
29 # Revision 1.26 2002/01/09 18:21:10 hal9
30 # A few minor updates.
32 # Revision 1.25 2001/12/28 01:45:36 steudten
33 # Add paranoia check and BuildReq: gzip
35 # Revision 1.24 2001/12/01 21:43:14 hal9
36 # Allowed for new ijb.action file.
38 # Revision 1.23 2001/11/06 12:09:03 steudten
39 # Compress doc files. Install README and AUTHORS at last as document.
41 # Revision 1.22 2001/11/05 21:37:34 steudten
42 # Fix to include the actual version for name.
43 # Let the 'real' packager be included - sorry stefan.
45 # Revision 1.21 2001/10/31 19:27:27 swa
46 # consistent description. new name for suse since
47 # we had troubles with rpms of identical names
50 # Revision 1.20 2001/10/24 15:45:49 hal9
51 # To keep Thomas happy (aka correcting my mistakes)
53 # Revision 1.19 2001/10/15 03:23:59 hal9
56 # Revision 1.17 2001/10/10 18:59:28 hal9
57 # Minor change for init script.
59 # Revision 1.16 2001/09/24 20:56:23 hal9
62 # Revision 1.13 2001/09/10 17:44:43 swa
63 # integrate three pieces of documentation. needs work.
64 # will not build cleanly under redhat.
66 # Revision 1.12 2001/09/10 16:25:04 swa
67 # copy all templates. version updated.
69 # Revision 1.11 2001/07/03 11:00:25 sarantis
70 # replaced permissionsfile with actionsfile
72 # Revision 1.10 2001/07/03 09:34:44 sarantis
73 # bumped up version number.
75 # Revision 1.9 2001/06/12 18:15:29 swa
76 # the % in front of configure (see tag below) confused
77 # the rpm build process on 7.1.
79 # Revision 1.8 2001/06/12 17:15:56 swa
80 # fixes, because a clean build on rh6.1 was impossible.
81 # GZIP confuses make, % configure confuses rpm, etc.
83 # Revision 1.7 2001/06/11 12:17:26 sarantis
86 # Revision 1.6 2001/06/11 11:28:25 sarantis
87 # Further optimizations and adaptations in the spec file.
89 # Revision 1.5 2001/06/09 09:14:11 swa
90 # shamelessly adapted RPM stuff from the newest rpm that
91 # RedHat provided for the JB.
93 # Revision 1.4 2001/06/08 20:54:18 swa
94 # type with status file. remove forward et. al from file list.
96 # Revision 1.3 2001/06/07 17:28:10 swa
99 # Revision 1.2 2001/06/04 18:31:58 swa
100 # files are now prefixed with either `confdir' or `logdir'.
101 # `make redhat-dist' replaces both entries confdir and logdir
104 # Revision 1.1 2001/06/04 10:44:57 swa
105 # `make redhatr-dist' now works. Except for the paths
106 # in the config file.
110 Summary: The Internet Junkbuster
111 Vendor: http://ijbswa.sourceforge.net
115 Source0: http://www.waldherr.org/junkbuster/ijbswa-%{version}.tar.gz
117 BuildRoot: %{_tmppath}/%{name}-%{version}-root
118 Group: Networking/Utilities
119 URL: http://ijbswa.sourceforge.net/
120 Obsoletes: junkbuster-raw junkbuster-blank
121 Prereq: /usr/sbin/useradd , /sbin/chkconfig , /sbin/service
122 BuildRequires: perl gzip
123 Conflicts: junkbuster-raw junkbuster-blank
126 Internet Junkbuster is a web proxy with advanced filtering
127 capabilities for protecting privacy, filtering web page content,
128 managing cookies, controlling access, and removing ads, banners,
129 pop-ups and other obnoxious Internet Junk. Junkbuster has a very
130 flexible configuration and can be customized to suit individual needs
131 and tastes. Internet Junkbuster has application for both stand-alone
132 systems and multi-user networks.
134 %define ijbconf %{_sysconfdir}/junkbuster
145 /usr/sbin/useradd -d /etc/junkbuster -r junkbuster -s "/bin/false" > /dev/null 2>&1 || /bin/true
148 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
149 mkdir -p ${RPM_BUILD_ROOT}%{_sbindir} \
150 ${RPM_BUILD_ROOT}%{_mandir}/man8 \
151 ${RPM_BUILD_ROOT}/var/log/junkbuster \
152 ${RPM_BUILD_ROOT}%{ijbconf}/templates \
153 ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d \
154 ${RPM_BUILD_ROOT}%{_sysconfdir}/rc.d/init.d
156 gzip README AUTHORS ChangeLog junkbuster.1 || /bin/true
157 install -s -m 744 junkbuster $RPM_BUILD_ROOT%{_sbindir}/junkbuster
158 cp -f junkbuster.1.gz $RPM_BUILD_ROOT%{_mandir}/man8/junkbuster.8.gz
159 cp -f *.action $RPM_BUILD_ROOT%{ijbconf}/
160 cp -f re_filterfile $RPM_BUILD_ROOT%{ijbconf}/re_filterfile
161 cp -f trust $RPM_BUILD_ROOT%{ijbconf}/trust
162 cp -f templates/* $RPM_BUILD_ROOT%{ijbconf}/templates/
163 cp -f junkbuster.logrotate $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/junkbuster
164 install -m 755 junkbuster.init $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/junkbuster
165 install -m 711 -d $RPM_BUILD_ROOT/var/log/junkbuster
167 # verify all file locations, etc. in the config file
168 # don't start with ^ or commented lines are not replaced
170 sed 's/^confdir.*/confdir \/etc\/junkbuster/g' | \
171 # sed 's/^permissionsfile.*/permissionsfile \/etc\/junkbuster\/permissionsfile/g' | \
172 # sed 's/^re_filterfile.*/re_filterfile \/etc\/junkbuster\/re_filterfile/g' | \
173 # sed 's/^logfile.*/logfile \/var\/log\/junkbuster\/logfile/g' | \
174 # sed 's/^jarfile.*/jarfile \/var\/log\/junkbuster\/jarfile/g' | \
175 # sed 's/^forward.*/forward \/etc\/junkbuster\/forward/g' | \
176 # sed 's/^aclfile.*/aclfile \/etc\/junkbuster\/aclfile/g' > \
177 sed 's/^logdir.*/logdir \/var\/log\/junkbuster/g' > \
178 $RPM_BUILD_ROOT%{ijbconf}/config
179 perl -pe 's/{-no-cookies}/{-no-cookies}\n\.redhat.com/' ijb.action >\
180 $RPM_BUILD_ROOT%{ijbconf}/ijb.action
183 # for upgrade from 2.0.x
184 [ -f /var/log/junkbuster/junkbuster ] &&\
185 mv -f /var/log/junkbuster/junkbuster /var/log/junkbuster/logfile || /bin/true
186 chown -R junkbuster:junkbuster /var/log/junkbuster 2>/dev/null
187 chown -R junkbuster:junkbuster /etc/junkbuster 2>/dev/null
188 if [ "$1" = "1" ]; then
189 /sbin/chkconfig --add junkbuster
190 /sbin/service junkbuster condrestart > /dev/null 2>&1
192 # 01/09/02 HB, getting rid of any user=junkbust
193 grep junkbust: /etc/passwd >/dev/null && userdel junkbust || /bin/true
196 if [ "$1" = "0" ]; then
197 /sbin/service junkbuster stop > /dev/null 2>&1 ||:
198 /sbin/chkconfig --del junkbuster
202 #if [ "$1" -ge "1" ]; then
203 # /sbin/service junkbuster condrestart > /dev/null 2>&1
207 [ "$RPM_BUILD_ROOT" != "/" ] && rm -rf $RPM_BUILD_ROOT
210 %defattr(-,root,root)
211 %doc README.gz AUTHORS.gz ChangeLog.gz
212 %doc doc/webserver/developer-manual doc/webserver/user-manual
213 %doc doc/webserver/user-manual
214 #%doc junkbuster.weekly junkbuster.monthly AUTHORS
217 %attr(0744,junkbuster,junkbuster) %dir /var/log/junkbuster
218 %config %{_sysconfdir}/logrotate.d/junkbuster
219 %attr(0744,junkbuster,junkbuster)/usr/sbin/junkbuster
221 %config %{_sysconfdir}/rc.d/init.d/junkbuster
225 * Wed Jan 09 2002 Hal Burgiss <hal@foobox.net>
226 - Removed UID 73. Included user-manual and developer-manual in docs.
227 Include other actions files. Default shell is now /bin/false.
228 Userdel user=junkbust. ChangeLog was not zipped. Removed
229 RPM_OPT_FLAGS kludge.
231 * Fri Dec 28 2001 Thomas Steudten <thomas@steudten.ch>
232 - add paranoia check for 'rm -rf $RPM_BUILD_ROOT'
233 - add gzip to 'BuildRequires'
235 * Sat Dec 1 2001 Hal Burgiss <hal@foobox.net>
236 - actionsfile is now ijb.action.
238 * Tue Nov 6 2001 Thomas Steudten <thomas@steudten.ch>
240 - Add more documents for installation
241 - Add version string to name and source
243 * Wed Oct 24 2001 Hal Burigss <hal@foobox.net>
244 - Back to user 'junkbuster' and fix configure macro.
246 * Wed Oct 10 2001 Hal Burigss <hal@foobox.net>
247 - More changes for user 'junkbust'. Init script had 'junkbuster'.
249 * Sun Sep 23 2001 Hal Burgiss <hal@foobox.net>
250 - Change of $RPM_OPT_FLAGS handling. Added new HTML doc files.
251 - Changed owner of /etc/junkbuster to shut up PAM/xauth log noise.
253 * Thu Sep 13 2001 Hal Burgiss <hal@foobox.net>
254 - Added $RPM_OPT_FLAGS support, renaming of old logfile, and
255 - made sure no default shell exists for user junkbust.
257 * Sun Jun 3 2001 Stefan Waldherr <stefan@waldherr.org>
260 * Mon Sep 25 2000 Stefan Waldherr <stefan@waldherr.org>
261 - CLF Logging patch by davep@cyw.uklinux.net
262 - Hal DeVore <haldevore@earthling.net> fix akamaitech in blocklist
264 * Sun Sep 17 2000 Stefan Waldherr <stefan@waldherr.org>
265 - Steve Kemp skx@tardis.ed.ac.uk's javascript popup patch.
266 - Markus Breitenbach breitenb@rbg.informatik.tu-darmstadt.de supplied
267 numerous fixes and enhancements for Steve's patch.
268 - adamlock@netscape.com (Adam Lock) in the windows version:
269 - Taskbar activity spinner always spins even when logging is
270 turned off (which is the default) - people who don't
271 like the spinner can turn it off from a menu option.
272 - Taskbar popup menu has a options submenu - people can now
273 open the settings files for cookies, blockers etc.
274 without opening the JB window.
275 - Logging functionality works again
276 - Buffer overflow is fixed - new code uses a bigger buffer
277 and snprintf so it shouldn't overflow anymore.
278 - Fixed userid swa, group learning problem while installing.
280 - Added patch by Benjamin Low <ben@snrc.uow.edu.au> that prevents JB to
281 core dump when there is no log file.
282 - Tweaked SuSE startup with the help of mohataj@gmx.net and Doc.B@gmx.de.
283 - Fixed man page to include imagefile and popupfile.
284 - Sanity check for the statistics function added.
285 - "Patrick D'Cruze" <pdcruze@orac.iinet.net.au>: It seems Microsoft
286 are transitioning Hotmail from FreeBSD/Apache to Windows 2000/IIS.
287 With IIS/5, it appears to omit the trailing \r\n from http header
288 only messages. eg, when I visit http://www.hotmail.com, IIS/5
289 responds with a HTTP 302 redirect header. However, this header
290 message is missing the trailing \r\n. IIS/5 then closes the
291 connection. Junkbuster, unfortunately, discards the header becomes
292 it thinks it is incomplete - and it is. MS have transmitted an
294 - Added bug reports and patch submission forms in the docs.
296 * Mon Mar 20 2000 Stefan Waldherr <stefan@waldherr.org>
297 Andrew <anw@tirana.freewire.co.uk> extended the JB:
298 Display of statistics of the total number of requests and the number
299 of requests filtered by junkbuster, also the percentage of requests
300 filtered. Suppression of the listing of files on the proxy-args page.
301 All stuff optional and configurable.
303 * Sun Sep 12 1999 Stefan Waldherr <stefan@waldherr.org>
304 Jan Willamowius (jan@janhh.shnet.org) fixed a bug in the
305 code which prevented the JB from handling URLs of the form
306 user:password@www.foo.com. Fixed.
308 * Mon Aug 2 1999 Stefan Waldherr <stefan@waldherr.org>
309 Blank images are no longer cached, thanks to a hint from Markus
310 Breitenbach <breitenb@rbg.informatik.tu-darmstadt.de>. The user
311 agent is NO longer set by the Junkbuster. Sadly, many sites depend
312 on the correct browser version nowadays. Incorporated many
313 suggestions from Jan "Yenya" Kasprzak <kas@fi.muni.cz> for the
314 spec file. Fixed logging problem and since runlevel 2 does not
315 use networking, I replaced /etc/rc.d/rc2.d/S84junkbuster with
316 /etc/rc.d/rc2.d/K09junkbuster thanks to Shaw Walker
317 <walker@netgate.net>. You should now be able to build this RPM as
318 a non-root user (mathias@weidner.sem.lipsia.de).
320 * Sun Jan 31 1999 Stefan Waldherr <stefan@waldherr.org>
321 /var/log/junkbuster set to nobody. Added /etc/junkbuster/imagelist
322 to allow more sophisticated matching of blocked images. Logrotate
323 logfile. Added files for auto-updating the blocklist et al.
325 * Wed Dec 16 1998 Stefan Waldherr <stefan@waldherr.org>
326 Configure blank version via config file. No separate blank
327 version anymore. Added Roland's <roland@spinnaker.rhein.de>
328 patch to show a logo instead of a blank area. Added a suggestion
329 from Alex <alex@cocoa.demon.co.uk>: /var/lock/subsys/junkbuster.
330 More regexps in the blocklist. Prepared the forwardfile for
331 squid. Extended image regexp with help from gabriel
332 <somlo@CS.ColoState.EDU>.
334 * Thu Nov 19 1998 Stefan Waldherr <stefan@waldherr.org>
335 All RPMs now identify themselves in the show-proxy-args page.
336 Released Windoze version. Run junkbuster as nobody instead of
339 * Fri Oct 30 1998 Stefan Waldherr <stefan@waldherr.org>
340 Newest version. First release (hence the little version number
341 mixture -- 2.0.2-0 instead of 2.0-7). This version tightens
342 security over 2.0.1; some multi-user sites will need to change
343 the listen-address in the configuration file. The blank version of
344 the Internet Junkbuster has a more sophisticated way of replacing
345 images. All RPMs identify themselves in the show-proxy-args page.
347 * Thu Sep 23 1998 Stefan Waldherr <stefan@waldherr.org>
348 Modified the blocking feature, so that only GIFs and JPEGs are
349 blocked and replaced but not HTML pages. Thanks to
350 "Gerd Flender" <plgerd@informatik.uni-siegen.de> for this nice
351 idea. Added numerous stuff to the blocklist. Keep patches in
352 seperate files and no longer in diffs (easier to maintain).
354 * Tue Jun 16 1998 Stefan Waldherr <swa@cs.cmu.edu>
355 Moved config files to /etc/junkbuster directory, moved man page,
356 added BuildRoot directive (Thanks to Alexey Nogin <ayn2@cornell.edu>)
357 Made new version junkbuster-raw (which is only a stripped version of
358 the junkuster rpm, i.e. without my blocklist, etc.)
360 * Tue Jun 16 1998 (2.0-1)
361 Uhm, not that much. Just a new junkbuster version that
362 fixes a couple of bugs ... and of course a bigger
363 blocklist with the unique Now-less-ads-than-ever(SM)
365 Oh, one thing: I changed the default user agent to Linux -- no
366 need anymore to support Apple.
368 * Tue Jun 16 1998 (2.0-0)
369 Now-less-ads-than-ever (SM)
370 compiled with gcc instead of cc
371 compiled with -O3, thus it should be a little faster
372 show-proxy-args now works
373 /etc/junkbuster.init wasn't necessary
375 * Tue Jun 16 1998 (1.4)
376 some more config files were put into /etc
377 The junkbuster-blank rpm returns a 1x1 pixel image, that gets
378 displayed by Netscape instead of the blocked image.
379 Read http://www.waldherr.org/junkbuster/ for
382 * Tue Jun 16 1998 (1.3)
383 The program has been moved to /usr/sbin (from /usr/local/bin)
384 Init- and stopscripts (/etc/rc.d/rc*) have been added so
385 that the junkbuster starts automatically during bootup.
386 The /etc/blocklist file is much more sophisticated. Theoretically
387 one should e.g. browse all major US and German newspapers without
388 seeing one annoying ad.
389 junkbuster.init was modified. It now starts junkbuster with an
390 additional "-r @" flag.