Summary: The Squid proxy caching server. Name: squid Version: 2.3.STABLE2 Release: 3mdk Copyright: GPL Group: System/Servers Source: http://www.squid-cache.org/Squid/v2/squid-%{version}-src.tar.bz2 Source1: http://www.squid-cache.org/Squid/FAQ/FAQ.sgml Source2: squid.init Source3: squid.logrotate Patch0: squid-2.1-make.patch.bz2 Patch1: squid-2.3-config.patch.bz2 Patch2: squid-perlpath.patch.bz2 Patch10: squid-2.3.stable2-USE_DNSSERVER.patch.bz2 Patch11: squid-2.3.stable2-USE_DNSSERVER_part2.patch.bz2 Patch12: squid-2.3.stable2-EOF_in_cf.data.pre.patch.bz2 Patch13: squid-2.3.stable2-getMyHostname.patch.bz2 Patch14: squid-2.3.stable2-hostname_whitespace.patch.bz2 Patch15: squid-2.3.stable2-netdb_exchange_loop.patch.bz2 Patch16: squid-2.3.stable2-redirected_username_logging.patch.bz2 Patch17: squid-2.3.stable2-getpwnam_return_value.patch.bz2 Patch18: squid-2.3.stable2-mimeGetIconURL_returns_NULL.patch.bz2 Patch19: squid-2.3.stable2-snmp-problems.patch.bz2 BuildRoot: %{_tmppath}/%{name}-root Prereq: /sbin/chkconfig logrotate shadow-utils BuildPrereq: jade sgml-tools Obsoletes: squid-novm %description Squid is a high-performance proxy caching server for Web clients, supporting FTP, gopher, and HTTP data objects. Unlike traditional caching software, Squid handles all requests in a single, non-blocking, I/O-driven process. Squid keeps meta data and especially hot objects cached in RAM, caches DNS lookups, supports non-blocking DNS lookups, and implements negative caching of failed requests. Squid consists of a main server program squid, a Domain Name System lookup program (dnsserver), a program for retrieving FTP data (ftpget), and some management and client tools. Install squid if you need a proxy caching server. %prep %setup -q %patch0 -p1 -b .make %patch1 -p1 -b .config %patch2 -p1 cd src %patch10 -p0 -b .dnsserver %patch11 -p0 -b .dnsserver2 %patch12 -p0 -b .eof %patch13 -p0 -b .hostname %patch14 -p0 -b .whitespace %patch15 -p0 -b .netdb %patch17 -p1 -b .getpwnam %patch18 -p1 -b .mimeGetIconURL %patch19 -p1 -b .snmp %patch16 -p0 -b .username cd .. %build CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=/usr \ --exec_prefix=/usr --bindir=/usr/sbin --libexecdir=/usr/lib/squid \ --localstatedir=/var --sysconfdir=/etc/squid \ --enable-poll --enable-snmp --enable-heap-replacement # --enable-icmp # Some versions of autoconf fail to detect sys/resource.h correctly; # apparently because it generates a compiler warning. if [ -e /usr/include/sys/resource.h ]; then cat >>include/autoconf.h <<EOF #ifndef HAVE_SYS_RESOURCE_H #define HAVE_SYS_RESOURCE_H 1 #define HAVE_STRUCT_RUSAGE 1 #endif EOF fi make -f makefile mkdir faq cp $RPM_SOURCE_DIR/FAQ.sgml faq cd faq sgml2html FAQ.sgml %install rm -rf $RPM_BUILD_ROOT make install \ prefix=$RPM_BUILD_ROOT/usr \ sysconfdir=$RPM_BUILD_ROOT/etc/squid \ localstatedir=$RPM_BUILD_ROOT/var \ bindir=$RPM_BUILD_ROOT/usr/sbin \ libexecdir=$RPM_BUILD_ROOT/usr/lib/squid #install -m 4750 src/pinger $RPM_BUILD_ROOT/usr/lib/squid cd errors rm -rf $RPM_BUILD_ROOT/etc/squid/errors mkdir -p $RPM_BUILD_ROOT/usr/lib/squid/errors for i in *; do if [ -d $i ]; then mkdir -p $RPM_BUILD_ROOT/usr/lib/squid/errors/$i install -m 644 $i/* $RPM_BUILD_ROOT/usr/lib/squid/errors/$i fi done ln -s /usr/lib/squid/errors/English $RPM_BUILD_ROOT/etc/squid/errors mkdir -p $RPM_BUILD_ROOT/etc/rc.d/init.d mkdir -p $RPM_BUILD_ROOT/etc/logrotate.d install -m 755 $RPM_SOURCE_DIR/squid.init $RPM_BUILD_ROOT/etc/rc.d/init.d/squid install -m 644 $RPM_SOURCE_DIR/squid.logrotate $RPM_BUILD_ROOT/etc/logrotate.d/squid mkdir -p $RPM_BUILD_ROOT/var/log/squid mkdir -p $RPM_BUILD_ROOT/var/spool/squid strip $RPM_BUILD_ROOT/usr/bin/* $RPM_BUILD_ROOT/usr/sbin/* \ $RPM_BUILD_ROOT/usr/lib/squid/* || : %clean rm -rf $RPM_BUILD_ROOT %files %defattr(-,root,root) %config(noreplace) /etc/squid/squid.conf %config(noreplace) /etc/squid/mime.conf %config(noreplace) /etc/squid/mib.txt %config(noreplace) /etc/squid/squid.conf.default %config(noreplace) /etc/squid/mime.conf.default /etc/squid/errors /usr/lib/squid/errors /usr/lib/squid/icons /usr/lib/squid/dnsserver /usr/lib/squid/unlinkd #%attr(4750,root,squid) /usr/lib/squid/pinger /usr/sbin/squid /usr/sbin/client /usr/lib/squid/cachemgr.cgi %config /etc/rc.d/init.d/squid %config /etc/logrotate.d/squid %doc faq/* README ChangeLog QUICKSTART doc/* %doc contrib/url-normalizer.pl contrib/rredir.* contrib/user-agents.pl %attr(750,squid,squid) %dir /var/log/squid %attr(750,squid,squid) %dir /var/spool/squid %pre /usr/sbin/useradd -u 23 -d /var/spool/squid -r -s /dev/null squid >/dev/null 2>&1 for i in /var/log/squid /var/spool/squid ; do if [ -d $i ] ; then for adir in `find $i -maxdepth 0 \! -user squid`; do chown -R squid.squid $adir done fi done exit 0 %post /sbin/chkconfig --add squid #if [ $1 = 0 ]; then case "$LANG" in bg*) DIR=Bulgarian ;; cs*) DIR=Czech ;; da*) DIR=Danish ;; nl*) DIR=Dutch ;; en*) DIR=English ;; ea*) DIR=Estonian ;; fi*) DIR=Finnish ;; fr*) DIR=French ;; de*) DIR=German ;; hu*) DIR=Hungarian ;; it*) DIR=Italian ;; ja*) DIR=Japanese ;; kr*) DIR=Korean ;; pl*) DIR=Polish ;; pt*) DIR=Portuguese ;; ro*) DIR=Romanian ;; ru*) DIR=Russian-koi8-r ;; sk*) DIR=Slovak ;; es*) DIR=Spanish ;; sv*) DIR=Swedish ;; zh*) DIR=Traditional_Chinese ;; tr*) DIR=Turkish ;; *) DIR=English ;; esac ln -snf /usr/lib/squid/errors/$DIR /etc/squid/errors #fi %preun if [ $1 = 0 ] ; then rm -f /var/log/squid/* /sbin/chkconfig --del squid fi %postun if [ $1 = 0 ] ; then userdel squid fi %changelog * Tue Sep 5 2000 Etienne Faure <etienne@mandraksoft.com> 2.3.STABLE2-3mdk - rebuilt with %%doc macro - added noreplace tag for config files * Tue May 2 2000 Jean-Michel Dault <jmdault@mandrakesoft.com> 2.3.STABLE2-2mdk - fixed %post script - three more bugfix patches from the squid people - buildprereq jade, sgmltools * Fri Apr 7 2000 Jean-Michel Dault <jmdault@mandrakesoft.com> 2.3.STABLE2-1mdk - merged with redhat again * Sun Mar 26 2000 Florian La Roche <Florian.LaRoche@redhat.com> - make %pre more portable * Thu Mar 16 2000 Bill Nottingham <notting@redhat.com> - bugfix patches - fix dependency on /usr/local/bin/perl * Sat Mar 4 2000 Bill Nottingham <notting@redhat.com> - 2.3.STABLE2 * Mon Feb 14 2000 Bill Nottingham <notting@redhat.com> - Yet More Bugfix Patches * Tue Feb 8 2000 Bill Nottingham <notting@redhat.com> - add more bugfix patches - --enable-heap-replacement * Mon Jan 31 2000 Cristian Gafton <gafton@redhat.com> - rebuild to fix dependencies * Fri Jan 28 2000 Bill Nottingham <notting@redhat.com> - grab some bugfix patches * Mon Jan 10 2000 Bill Nottingham <notting@redhat.com> - 2.3.STABLE1 (whee, another serial number) * Tue Dec 21 1999 Bernhard Rosenkraenzer <bero@redhat.com> - Fix compliance with ftp RFCs (http://www.wu-ftpd.org/broken-clients.html) - Work around a bug in some versions of autoconf - BuildPrereq sgml-tools - we're using sgml2html * Mon Oct 18 1999 Bill Nottingham <notting@redhat.com> - add a couple of bugfix patches * Wed Oct 13 1999 Bill Nottingham <notting@redhat.com> - update to 2.2.STABLE5. - update FAQ, fix URLs. * Sat Sep 11 1999 Cristian Gafton <gafton@redhat.com> - transform restart in reload and add restart to the init script * Tue Aug 31 1999 Bill Nottingham <notting@redhat.com> - add squid user as user 23. * Mon Aug 16 1999 Bill Nottingham <notting@redhat.com> - initscript munging - fix conflict between logrotate & squid -k (#4562) * Wed Jul 28 1999 Bill Nottingham <notting@redhat.com> - put cachemgr.cgi back in /usr/lib/squid * Wed Jul 14 1999 Bill Nottingham <notting@redhat.com> - add webdav bugfix patch (#4027) * Mon Jul 12 1999 Bill Nottingham <notting@redhat.com> - fix path to config in squid.init (confuses linuxconf) * Wed Jul 7 1999 Bill Nottingham <notting@redhat.com> - 2.2.STABLE4 * Wed Jun 9 1999 Dale Lovelace <dale@redhat.com> - logrotate changes - errors from find when /var/spool/squid or - /var/log/squid didn't exist * Thu May 20 1999 Bill Nottingham <notting@redhat.com> - 2.2.STABLE3 * Thu Apr 22 1999 Bill Nottingham <notting@redhat.com> - update to 2.2.STABLE.2 * Sun Apr 18 1999 Bill Nottingham <notting@redhat.com> - update to 2.2.STABLE1 * Thu Apr 15 1999 Bill Nottingham <notting@redhat.com> - don't need to run groupdel on remove - fix useradd * Mon Apr 12 1999 Bill Nottingham <notting@redhat.com> - fix effective_user (bug #2124) * Mon Apr 5 1999 Bill Nottingham <notting@redhat.com> - strip binaries * Thu Apr 1 1999 Bill Nottingham <notting@redhat.com> - duh. adduser does require a user name. - add a serial number * Tue Mar 30 1999 Bill Nottingham <notting@redhat.com> - add an adduser in %pre, too * Thu Mar 25 1999 Bill Nottingham <notting@redhat.com> - oog. chkconfig must be in %preun, not %postun * Wed Mar 24 1999 Bill Nottingham <notting@redhat.com> - switch to using group squid - turn off icmp (insecure) - update to 2.2.DEVEL3 - build FAQ docs from source * Tue Mar 23 1999 Bill Nottingham <notting@redhat.com> - logrotate changes * Sun Mar 21 1999 Cristian Gafton <gafton@redhat.com> - auto rebuild in the new build environment (release 4) * Wed Feb 10 1999 Bill Nottingham <notting@redhat.com> - update to 2.2.PRE2 * Wed Dec 30 1998 Bill Nottingham <notting@redhat.com> - cache & log dirs shouldn't be world readable - remove preun script (leave logs & cache @ uninstall) * Tue Dec 29 1998 Bill Nottingham <notting@redhat.com> - fix initscript to get cache_dir correct * Fri Dec 18 1998 Bill Nottingham <notting@redhat.com> - update to 2.1.PATCH2 - merge in some changes from RHCN version * Sat Oct 10 1998 Cristian Gafton <gafton@redhat.com> - strip binaries - version 1.1.22 * Sun May 10 1998 Cristian Gafton <gafton@redhat.com> - don't make packages conflict with each other... * Sat May 02 1998 Cristian Gafton <gafton@redhat.com> - added a proxy auth patch from Alex deVries <adevries@engsoc.carleton.ca> - fixed initscripts * Thu Apr 09 1998 Cristian Gafton <gafton@redhat.com> - rebuilt for Manhattan * Fri Mar 20 1998 Cristian Gafton <gafton@redhat.com> - upgraded to 1.1.21/1.NOVM.21 * Mon Mar 02 1998 Cristian Gafton <gafton@redhat.com> - updated the init script to use reconfigure option to restart squid instead of shutdown/restart (both safer and quicker) * Sat Feb 07 1998 Cristian Gafton <gafton@redhat.com> - upgraded to 1.1.20 - added the NOVM package and tryied to reduce the mess in the spec file * Wed Jan 7 1998 Cristian Gafton <gafton@redhat.com> - first build against glibc - patched out the use of setresuid(), which is available only on kernels 2.1.44 and later