1 # $Id: junkbuster-rh.spec,v 1.17 2001/10/10 18:59:28 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.17 2001/10/10 18:59:28 hal9
30 # Minor change for init script.
32 # Revision 1.16 2001/09/24 20:56:23 hal9
35 # Revision 1.13 2001/09/10 17:44:43 swa
36 # integrate three pieces of documentation. needs work.
37 # will not build cleanly under redhat.
39 # Revision 1.12 2001/09/10 16:25:04 swa
40 # copy all templates. version updated.
42 # Revision 1.11 2001/07/03 11:00:25 sarantis
43 # replaced permissionsfile with actionsfile
45 # Revision 1.10 2001/07/03 09:34:44 sarantis
46 # bumped up version number.
48 # Revision 1.9 2001/06/12 18:15:29 swa
49 # the % in front of configure (see tag below) confused
50 # the rpm build process on 7.1.
52 # Revision 1.8 2001/06/12 17:15:56 swa
53 # fixes, because a clean build on rh6.1 was impossible.
54 # GZIP confuses make, % configure confuses rpm, etc.
56 # Revision 1.7 2001/06/11 12:17:26 sarantis
59 # Revision 1.6 2001/06/11 11:28:25 sarantis
60 # Further optimizations and adaptations in the spec file.
62 # Revision 1.5 2001/06/09 09:14:11 swa
63 # shamelessly adapted RPM stuff from the newest rpm that
64 # RedHat provided for the JB.
66 # Revision 1.4 2001/06/08 20:54:18 swa
67 # type with status file. remove forward et. al from file list.
69 # Revision 1.3 2001/06/07 17:28:10 swa
72 # Revision 1.2 2001/06/04 18:31:58 swa
73 # files are now prefixed with either `confdir' or `logdir'.
74 # `make redhat-dist' replaces both entries confdir and logdir
77 # Revision 1.1 2001/06/04 10:44:57 swa
78 # `make redhatr-dist' now works. Except for the paths
83 Summary: The Internet Junkbuster
84 Vendor: http://ijbswa.sourceforge.net
88 Source0: http://www.waldherr.org/junkbuster/ijbswa.tar.gz
90 BuildRoot: %{_tmppath}/%{name}-root
91 Group: Networking/Utilities
92 URL: http://ijbswa.sourceforge.net/
93 Packager: Stefan Waldherr <stefan@waldherr.org>
94 Obsoletes: junkbuster-raw junkbuster-blank
95 Prereq: /usr/sbin/useradd , /sbin/chkconfig , /sbin/service
97 Conflicts: junkbuster-raw junkbuster-blank
100 The Internet Junkbuster stops your browser from displaying the
101 advertisement images that pervade many commercial web pages. Since
102 your browser has to download fewer images, surfing the web should be
105 %define ijbconf %{_sysconfdir}/junkbuster
111 OPT_FLAGS="$RPM_OPT_FLAGS -Ipcre -Wall"
113 make "CFLAGS=$OPT_FLAGS"
117 /usr/sbin/useradd -d /etc/junkbuster -u 73 -r junkbust -s "" > /dev/null 2>&1 || /bin/true
120 rm -rf $RPM_BUILD_ROOT
121 mkdir -p ${RPM_BUILD_ROOT}%{_sbindir} \
122 ${RPM_BUILD_ROOT}%{_mandir}/man8 \
123 ${RPM_BUILD_ROOT}/var/log/junkbuster \
124 ${RPM_BUILD_ROOT}%{ijbconf}/templates \
125 ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d \
126 ${RPM_BUILD_ROOT}%{_sysconfdir}/rc.d/init.d
128 install -s -m 744 junkbuster $RPM_BUILD_ROOT%{_sbindir}/junkbuster
130 cp -f junkbuster.1 $RPM_BUILD_ROOT%{_mandir}/man8/junkbuster.8
131 cp -f actionsfile $RPM_BUILD_ROOT%{ijbconf}/actionsfile
132 cp -f re_filterfile $RPM_BUILD_ROOT%{ijbconf}/re_filterfile
133 cp -f trust $RPM_BUILD_ROOT%{ijbconf}/trust
134 cp -f templates/* $RPM_BUILD_ROOT%{ijbconf}/templates/
135 cp -f junkbuster.logrotate $RPM_BUILD_ROOT%{_sysconfdir}/logrotate.d/junkbuster
136 install -m 755 junkbuster.init $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/junkbuster
137 install -m 744 -d $RPM_BUILD_ROOT/var/log/junkbuster
139 # verify all file locations, etc. in the config file
140 # don't start with ^ or commented lines are not replaced
142 sed 's/^confdir.*/confdir \/etc\/junkbuster/g' | \
143 # sed 's/^permissionsfile.*/permissionsfile \/etc\/junkbuster\/permissionsfile/g' | \
144 # sed 's/^re_filterfile.*/re_filterfile \/etc\/junkbuster\/re_filterfile/g' | \
145 # sed 's/^logfile.*/logfile \/var\/log\/junkbuster\/logfile/g' | \
146 # sed 's/^jarfile.*/jarfile \/var\/log\/junkbuster\/jarfile/g' | \
147 # sed 's/^forward.*/forward \/etc\/junkbuster\/forward/g' | \
148 # sed 's/^aclfile.*/aclfile \/etc\/junkbuster\/aclfile/g' > \
149 sed 's/^logdir.*/logdir \/var\/log\/junkbuster/g' > \
150 $RPM_BUILD_ROOT%{ijbconf}/config
151 perl -pe 's/{-no-cookies}/{-no-cookies}\n\.redhat.com/' actionsfile >\
152 $RPM_BUILD_ROOT%{ijbconf}/actionsfile
153 perl -pi -e 's/JB_USER=\"junkbuster\"/JB_USER=\"junkbust\"/' \
154 $RPM_BUILD_ROOT%{_sysconfdir}/rc.d/init.d/junkbuster
157 if [ "$1" = "1" ]; then
158 /sbin/chkconfig --add junkbuster
159 /sbin/service junkbuster condrestart > /dev/null 2>&1
161 # for upgrade from 2.0.x
162 chown junkbust:junkbust /var/log/junkbuster/* 2>/dev/null
163 chown junkbust:junkbust /etc/junkbuster 2>/dev/null
164 [ -f /var/log/junkbuster/junkbuster ] &&\
165 mv -f /var/log/junkbuster/junkbuster /var/log/junkbuster/logfile || /bin/true
168 if [ "$1" = "0" ]; then
169 /sbin/service junkbuster stop > /dev/null 2>&1 ||:
170 /sbin/chkconfig --del junkbuster
174 #if [ "$1" -ge "1" ]; then
175 # /sbin/service junkbuster condrestart > /dev/null 2>&1
179 rm -rf $RPM_BUILD_ROOT
182 %defattr(-,root,root)
183 %doc doc/webserver/developer-manual doc/webserver/user-manual README
184 %doc junkbuster.weekly junkbuster.monthly AUTHORS
187 %attr(0744,junkbust,junkbust) %dir /var/log/junkbuster
188 %config %{_sysconfdir}/logrotate.d/junkbuster
189 %attr(0744,junkbust,junkbust)/usr/sbin/junkbuster
191 %config %{_sysconfdir}/rc.d/init.d/junkbuster
195 * Wed Oct 10 2001 Hal Burigss <hal@foobox.net>
196 - More changes for user 'junkbust'. Init script had 'junkbuster'.
198 * Sun Sep 23 2001 Hal Burgiss <hal@foobox.net>
199 - Change of $RPM_OPT_FLAGS handling. Added new HTML doc files.
200 - Changed owner of /etc/junkbuster to shut up PAM/xauth log noise.
202 * Thu Sep 13 2001 Hal Burgiss <hal@foobox.net>
203 - Added $RPM_OPT_FLAGS support, renaming of old logfile, and
204 - made sure no default shell exists for user junkbust.
206 * Sun Jun 3 2001 Stefan Waldherr <stefan@waldherr.org>
209 * Mon Sep 25 2000 Stefan Waldherr <stefan@waldherr.org>
210 - CLF Logging patch by davep@cyw.uklinux.net
211 - Hal DeVore <haldevore@earthling.net> fix akamaitech in blocklist
213 * Sun Sep 17 2000 Stefan Waldherr <stefan@waldherr.org>
214 - Steve Kemp skx@tardis.ed.ac.uk's javascript popup patch.
215 - Markus Breitenbach breitenb@rbg.informatik.tu-darmstadt.de supplied
216 numerous fixes and enhancements for Steve's patch.
217 - adamlock@netscape.com (Adam Lock) in the windows version:
218 - Taskbar activity spinner always spins even when logging is
219 turned off (which is the default) - people who don't
220 like the spinner can turn it off from a menu option.
221 - Taskbar popup menu has a options submenu - people can now
222 open the settings files for cookies, blockers etc.
223 without opening the JB window.
224 - Logging functionality works again
225 - Buffer overflow is fixed - new code uses a bigger buffer
226 and snprintf so it shouldn't overflow anymore.
227 - Fixed userid swa, group learning problem while installing.
229 - Added patch by Benjamin Low <ben@snrc.uow.edu.au> that prevents JB to
230 core dump when there is no log file.
231 - Tweaked SuSE startup with the help of mohataj@gmx.net and Doc.B@gmx.de.
232 - Fixed man page to include imagefile and popupfile.
233 - Sanity check for the statistics function added.
234 - "Patrick D'Cruze" <pdcruze@orac.iinet.net.au>: It seems Microsoft
235 are transitioning Hotmail from FreeBSD/Apache to Windows 2000/IIS.
236 With IIS/5, it appears to omit the trailing \r\n from http header
237 only messages. eg, when I visit http://www.hotmail.com, IIS/5
238 responds with a HTTP 302 redirect header. However, this header
239 message is missing the trailing \r\n. IIS/5 then closes the
240 connection. Junkbuster, unfortunately, discards the header becomes
241 it thinks it is incomplete - and it is. MS have transmitted an
243 - Added bug reports and patch submission forms in the docs.
245 * Mon Mar 20 2000 Stefan Waldherr <stefan@waldherr.org>
246 Andrew <anw@tirana.freewire.co.uk> extended the JB:
247 Display of statistics of the total number of requests and the number
248 of requests filtered by junkbuster, also the percentage of requests
249 filtered. Suppression of the listing of files on the proxy-args page.
250 All stuff optional and configurable.
252 * Sun Sep 12 1999 Stefan Waldherr <stefan@waldherr.org>
253 Jan Willamowius (jan@janhh.shnet.org) fixed a bug in the
254 code which prevented the JB from handling URLs of the form
255 user:password@www.foo.com. Fixed.
257 * Mon Aug 2 1999 Stefan Waldherr <stefan@waldherr.org>
258 Blank images are no longer cached, thanks to a hint from Markus
259 Breitenbach <breitenb@rbg.informatik.tu-darmstadt.de>. The user
260 agent is NO longer set by the Junkbuster. Sadly, many sites depend
261 on the correct browser version nowadays. Incorporated many
262 suggestions from Jan "Yenya" Kasprzak <kas@fi.muni.cz> for the
263 spec file. Fixed logging problem and since runlevel 2 does not
264 use networking, I replaced /etc/rc.d/rc2.d/S84junkbuster with
265 /etc/rc.d/rc2.d/K09junkbuster thanks to Shaw Walker
266 <walker@netgate.net>. You should now be able to build this RPM as
267 a non-root user (mathias@weidner.sem.lipsia.de).
269 * Sun Jan 31 1999 Stefan Waldherr <stefan@waldherr.org>
270 /var/log/junkbuster set to nobody. Added /etc/junkbuster/imagelist
271 to allow more sophisticated matching of blocked images. Logrotate
272 logfile. Added files for auto-updating the blocklist et al.
274 * Wed Dec 16 1998 Stefan Waldherr <stefan@waldherr.org>
275 Configure blank version via config file. No separate blank
276 version anymore. Added Roland's <roland@spinnaker.rhein.de>
277 patch to show a logo instead of a blank area. Added a suggestion
278 from Alex <alex@cocoa.demon.co.uk>: /var/lock/subsys/junkbuster.
279 More regexps in the blocklist. Prepared the forwardfile for
280 squid. Extended image regexp with help from gabriel
281 <somlo@CS.ColoState.EDU>.
283 * Thu Nov 19 1998 Stefan Waldherr <stefan@waldherr.org>
284 All RPMs now identify themselves in the show-proxy-args page.
285 Released Windoze version. Run junkbuster as nobody instead of
288 * Fri Oct 30 1998 Stefan Waldherr <stefan@waldherr.org>
289 Newest version. First release (hence the little version number
290 mixture -- 2.0.2-0 instead of 2.0-7). This version tightens
291 security over 2.0.1; some multi-user sites will need to change
292 the listen-address in the configuration file. The blank version of
293 the Internet Junkbuster has a more sophisticated way of replacing
294 images. All RPMs identify themselves in the show-proxy-args page.
296 * Thu Sep 23 1998 Stefan Waldherr <stefan@waldherr.org>
297 Modified the blocking feature, so that only GIFs and JPEGs are
298 blocked and replaced but not HTML pages. Thanks to
299 "Gerd Flender" <plgerd@informatik.uni-siegen.de> for this nice
300 idea. Added numerous stuff to the blocklist. Keep patches in
301 seperate files and no longer in diffs (easier to maintain).
303 * Tue Jun 16 1998 Stefan Waldherr <swa@cs.cmu.edu>
304 Moved config files to /etc/junkbuster directory, moved man page,
305 added BuildRoot directive (Thanks to Alexey Nogin <ayn2@cornell.edu>)
306 Made new version junkbuster-raw (which is only a stripped version of
307 the junkuster rpm, i.e. without my blocklist, etc.)
309 * Tue Jun 16 1998 (2.0-1)
310 Uhm, not that much. Just a new junkbuster version that
311 fixes a couple of bugs ... and of course a bigger
312 blocklist with the unique Now-less-ads-than-ever(SM)
314 Oh, one thing: I changed the default user agent to Linux -- no
315 need anymore to support Apple.
317 * Tue Jun 16 1998 (2.0-0)
318 Now-less-ads-than-ever (SM)
319 compiled with gcc instead of cc
320 compiled with -O3, thus it should be a little faster
321 show-proxy-args now works
322 /etc/junkbuster.init wasn't necessary
324 * Tue Jun 16 1998 (1.4)
325 some more config files were put into /etc
326 The junkbuster-blank rpm returns a 1x1 pixel image, that gets
327 displayed by Netscape instead of the blocked image.
328 Read http://www.waldherr.org/junkbuster/ for
331 * Tue Jun 16 1998 (1.3)
332 The program has been moved to /usr/sbin (from /usr/local/bin)
333 Init- and stopscripts (/etc/rc.d/rc*) have been added so
334 that the junkbuster starts automatically during bootup.
335 The /etc/blocklist file is much more sophisticated. Theoretically
336 one should e.g. browse all major US and German newspapers without
337 seeing one annoying ad.
338 junkbuster.init was modified. It now starts junkbuster with an
339 additional "-r @" flag.