From owner-freebsd-bugs@FreeBSD.ORG Fri May 3 00:20:00 2013 Return-Path: Delivered-To: freebsd-bugs@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id BD32D74B for ; Fri, 3 May 2013 00:20:00 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 9F4981D99 for ; Fri, 3 May 2013 00:20:00 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.6/8.14.6) with ESMTP id r430K0qq050328 for ; Fri, 3 May 2013 00:20:00 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.6/8.14.6/Submit) id r430K0mc050327; Fri, 3 May 2013 00:20:00 GMT (envelope-from gnats) Resent-Date: Fri, 3 May 2013 00:20:00 GMT Resent-Message-Id: <201305030020.r430K0mc050327@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, anonymous Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id C644C743 for ; Fri, 3 May 2013 00:19:10 +0000 (UTC) (envelope-from nobody@FreeBSD.org) Received: from red.freebsd.org (red.freebsd.org [69.147.83.34]) by mx1.freebsd.org (Postfix) with ESMTP id B9F9F1D95 for ; Fri, 3 May 2013 00:19:10 +0000 (UTC) Received: from red.freebsd.org (localhost [127.0.0.1]) by red.freebsd.org (8.14.5/8.14.5) with ESMTP id r430JAO9054610 for ; Fri, 3 May 2013 00:19:10 GMT (envelope-from nobody@red.freebsd.org) Received: (from nobody@localhost) by red.freebsd.org (8.14.5/8.14.5/Submit) id r430JA5R054609; Fri, 3 May 2013 00:19:10 GMT (envelope-from nobody) Message-Id: <201305030019.r430JA5R054609@red.freebsd.org> Date: Fri, 3 May 2013 00:19:10 GMT From: anonymous To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-3.1 Subject: misc/178304: squid doesn't work in SMP mode X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 03 May 2013 00:20:00 -0000 >Number: 178304 >Category: misc >Synopsis: squid doesn't work in SMP mode >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri May 03 00:20:00 UTC 2013 >Closed-Date: >Last-Modified: >Originator: anonymous >Release: >Organization: >Environment: FreeBSD FreeBSD 9.1-RELEASE FreeBSD 9.1-RELEASE #0: Tue Apr 16 01:05:45 PDT 2013 root@FreeBSD:/usr/obj/usr/src/sys/CUSTOM i386 >Description: Squid tries to save its ipc sockets in localstatedir(/var/squid)/run/squid which it can't write to. >How-To-Repeat: Add "workers=2" to squid.conf >Fix: Change localstatedir to "/var" so squid uses /var/run/squid instead. /var/squid/cache/squid => /var/squid/cache /var/squid/run/squid => /var/run/squid Patch attached with submission follows: diff -ur a/www/squid33/Makefile b/www/squid33/Makefile --- a/www/squid33/Makefile 2013-05-01 09:56:25.000000000 -0700 +++ b/www/squid33/Makefile 2013-05-02 16:39:06.876875733 -0700 @@ -228,10 +228,11 @@ --sbindir=${PREFIX}/sbin \ --datadir=${ETCDIR} \ --libexecdir=${PREFIX}/libexec/squid \ - --localstatedir=/var/squid \ + --localstatedir=/var \ --sysconfdir=${ETCDIR} \ --with-logdir=/var/log/squid \ --with-pidfile=/var/run/squid/squid.pid \ + --with-swapdir=/var/squid/cache \ --enable-auth \ --enable-build-info \ --enable-loadable-modules \ diff -ur a/www/squid33/files/pkg-install.in b/www/squid33/files/pkg-install.in --- a/www/squid33/files/pkg-install.in 2012-10-30 16:05:50.000000000 -0700 +++ b/www/squid33/files/pkg-install.in 2013-05-02 16:46:11.408876004 -0700 @@ -5,11 +5,11 @@ PATH=/bin:/usr/bin:/usr/sbin pkgname=$1 -squid_base="/var/squid" -squid_cachedir="${squid_base}/cache" +squid_homedir="/var/squid" squid_confdir="${PKG_PREFIX:-%%PREFIX%%}/etc/squid" squid_logdir="/var/log/squid" squid_rundir="/var/run/squid" +squid_cachedir="${squid_homedir}/cache" # these are hardcoded, see /usr/ports/UIDs and /usr/ports/GIDs: squid_user=squid squid_group=squid @@ -21,14 +21,14 @@ ;; POST-INSTALL) # Since we usually start the Squid master process as ${squid_user} - # instead of root make sure that ${squid_base} is writable for it. - if [ ! -d ${squid_base} ]; then - echo "Creating ${squid_base}..." + # instead of root make sure that ${squid_homedir} is writable for it. + if [ ! -d ${squid_homedir} ]; then + echo "Creating ${squid_homedir}..." install -d -o root -g ${squid_group} \ - -m 0775 ${squid_base} + -m 0775 ${squid_homedir} else - chgrp ${squid_group} ${squid_base} - chmod g+w ${squid_base} + chgrp ${squid_group} ${squid_homedir} + chmod g+w ${squid_homedir} fi if [ ! -d ${squid_cachedir} ]; then echo "Creating ${squid_cachedir} ..." diff -ur a/www/squid33/files/pkg-message.in b/www/squid33/files/pkg-message.in --- a/www/squid33/files/pkg-message.in 2012-10-30 16:05:50.000000000 -0700 +++ b/www/squid33/files/pkg-message.in 2013-05-02 16:39:44.871873847 -0700 @@ -1,7 +1,7 @@ o You can find the configuration files for this package in the directory %%PREFIX%%/etc/squid. - o The default cache directory is /var/squid/. + o The default cache directory is /var/squid/cache/. The default log directory is /var/log/squid/. Note: diff -ur a/www/squid33/pkg-deinstall b/www/squid33/pkg-deinstall --- a/www/squid33/pkg-deinstall 2012-10-30 16:05:50.000000000 -0700 +++ b/www/squid33/pkg-deinstall 2013-05-02 16:45:00.104873016 -0700 @@ -5,11 +5,10 @@ PATH=/bin:/usr/bin:/usr/sbin squid_homedir="/var/squid" -squid_cache_basedir="${squid_homedir}/cache" -squid_state_basedir="${squid_homedir}/run" squid_confdir=${PKG_PREFIX}/etc/squid squid_logdir="/var/log/squid" squid_rundir="/var/run/squid" +squid_cachedir="${squid_homedir}/cache" case $2 in DEINSTALL) @@ -18,7 +17,7 @@ cmp -s -z ${f} ${f}.default && rm ${f} done # try to cleanup directories in /var: - for d in ${squid_cache_basedir}/squid ${squid_cache_basedir} ${squid_state_basedir}/squid ${squid_state_basedir} ${squid_homedir} ${squid_logdir} ${squid_rundir}; do + for d in ${squid_logdir} ${squid_rundir} ${squid_cachedir} ${squid_homedir}; do rmdir ${d} 2>/dev/null done ;; @@ -32,7 +31,7 @@ echo " created by a default installation of this package, run" echo "" echo " pw userdel -n squid -u 100" - if [ -d ${squid_homedir} -o -d ${squid_confdir} -o -d ${squid_logdir} -o -d ${squid_rundir} ] ; then + if [ -d ${squid_confdir} -o -d ${squid_logdir} -o -d ${squid_rundir} -o -d ${squid_homedir} ] ; then echo "" echo " In order to ease updates the cache and log directories" echo " and all configuration files modified by you were preserved." >Release-Note: >Audit-Trail: >Unformatted: