[prev in list] [next in list] [prev in thread] [next in thread] 

List:       ipcop-svn
Subject:    [Ipcop-svn] SF.net SVN: ipcop:[7503] ipcop/trunk
From:       owes () users ! sourceforge ! net
Date:       2014-04-25 14:05:25
Message-ID: E1Wdgkq-00017g-Oz () sfs-ml-2 ! v29 ! ch3 ! sourceforge ! com
[Download RAW message or body]

Revision: 7503
          http://sourceforge.net/p/ipcop/svn/7503
Author:   owes
Date:     2014-04-25 14:05:24 +0000 (Fri, 25 Apr 2014)
Log Message:
-----------
Avoid squid warning messages with active URL filter.

Modified Paths:
--------------
    ipcop/trunk/config/cfgroot/redirector-urlfilter
    ipcop/trunk/html/cgi-bin/urlfilter.cgi
    ipcop/trunk/src/scripts/makesquidconf.pl
    ipcop/trunk/src/scripts/upgrade.sh
    ipcop/trunk/updates/2.1.5/setup

Modified: ipcop/trunk/config/cfgroot/redirector-urlfilter
===================================================================
--- ipcop/trunk/config/cfgroot/redirector-urlfilter	2014-04-25 06:20:18 UTC (rev \
                7502)
+++ ipcop/trunk/config/cfgroot/redirector-urlfilter	2014-04-25 14:05:24 UTC (rev \
7503) @@ -1,4 +1,5 @@
 ENABLED=off
 ORDER=10
 NAME=URL filter
-CMD=/usr/bin/squidGuard -f
+CMD=/usr/bin/squidGuard
+OPTION_CHAIN=-f

Modified: ipcop/trunk/html/cgi-bin/urlfilter.cgi
===================================================================
--- ipcop/trunk/html/cgi-bin/urlfilter.cgi	2014-04-25 06:20:18 UTC (rev 7502)
+++ ipcop/trunk/html/cgi-bin/urlfilter.cgi	2014-04-25 14:05:24 UTC (rev 7503)
@@ -527,7 +527,7 @@
     if ($proxysettings{'ENABLE_REDIRECTOR'} ne 'on') {
         $errormessage .= "$Lang::tr{'redirectors are disabled'}<br />";
     }
-	if ((!($proxysettings{'ENABLED_GREEN_1'} eq 'on')) && \
(!($proxysettings{'ENABLED_BLUE_1'} eq 'on')) && (!($proxysettings{'ENABLED_OVPN'} eq \
'on'))) { +    if ((!($proxysettings{'ENABLED_GREEN_1'} eq 'on')) && \
(!($proxysettings{'ENABLED_BLUE_1'} eq 'on')) && (!($proxysettings{'ENABLED_OVPN'} eq \
                'on'))) {
         $errormessage .= "$Lang::tr{'errmsg web proxy service required'}<br />";
     }
 
@@ -2682,7 +2682,8 @@
     my %redirectorconf=();
     $redirectorconf{'NAME'} = $Lang::tr{'url filter'};
     $redirectorconf{'ORDER'} = 10;
-    $redirectorconf{'CMD'} = '/usr/bin/squidGuard -f';
+    $redirectorconf{'CMD'} = '/usr/bin/squidGuard';
+    $redirectorconf{'OPTION_CHAIN'} = '-f';
     $redirectorconf{'ENABLED'} = $filtersettings{'ENABLED'};
 
     &General::writehash("/var/ipcop/proxy/redirector/urlfilter", \%redirectorconf);

Modified: ipcop/trunk/src/scripts/makesquidconf.pl
===================================================================
--- ipcop/trunk/src/scripts/makesquidconf.pl	2014-04-25 06:20:18 UTC (rev 7502)
+++ ipcop/trunk/src/scripts/makesquidconf.pl	2014-04-25 14:05:24 UTC (rev 7503)
@@ -61,6 +61,7 @@
 my $mimetypes = "/var/ipcop/proxy/mimetypes";
 my $throttled_urls = "/var/ipcop/proxy/throttle";
 my $redirectwrapper = "/usr/local/bin/redirectwrapper";
+my $activeredirectors = 0;
 
 my $cre_groups  = "/var/ipcop/proxy/cre/classrooms";
 my $cre_svhosts = "/var/ipcop/proxy/cre/supervisors";
@@ -138,50 +139,38 @@
 
 &writepacfile;
 
-# Write the squid.conf file
-
-&writeconfigfile;
-
 # Write the squid redirector wrapper
 
 &writewrapper;
 
+# Write the squid.conf file
 
-# -------------------------------------------------------------------
-# Retrieve number of active redirectors
+&writeconfigfile;
 
-sub activeredirectors
-{
-    my $count=0;
 
-    foreach my $redirector (</var/ipcop/proxy/redirector/*>) {
-        if (-e $redirector) {
-            my %redirectorsettings=();
-            &General::readhash($redirector, \%redirectorsettings);
+# -------------------------------------------------------------------
+# Build a chain of redirector processes and write the wrapper program for the \
redirectors  
-            if (defined($redirectorsettings{'NAME'}) && \
                ($redirectorsettings{'ENABLED'} eq 'on')) {
-                $count++;
-            }
-        }
-    }
-    return $count;
-}
-
-    # -------------------------------------------------------------------
-# Build a chain of redirector processes
-
-sub redirectorchain
+sub writewrapper
 {
     my %redirectors = ();
+    my $lastredirector = 0;
+
     foreach my $redirector (</var/ipcop/proxy/redirector/*>) {
         if (-e $redirector) {
             my %redirectorsettings=();
+            $redirectorsettings{'OPTION_CHAIN'} = '';
             &General::readhash($redirector, \%redirectorsettings);
 
             if (defined($redirectorsettings{'NAME'})) {
                 $redirectors{$redirectorsettings{'NAME'}}{'ENABLED'} = \
                $redirectorsettings{'ENABLED'};
                 $redirectors{$redirectorsettings{'NAME'}}{'ORDER'} = \
                $redirectorsettings{'ORDER'};
                 $redirectors{$redirectorsettings{'NAME'}}{'CMD'} = \
$redirectorsettings{'CMD'}; +                \
$redirectors{$redirectorsettings{'NAME'}}{'OPTION_CHAIN'} = \
$redirectorsettings{'OPTION_CHAIN'}; +                if \
(($redirectorsettings{'ORDER'} > $lastredirector) && ($redirectorsettings{'ENABLED'} \
eq 'on')) { +                    # could be the last one in the chain
+                    $lastredirector = $redirectorsettings{'ORDER'};
+                }
             }
         }
     }
@@ -193,24 +182,21 @@
     foreach my $redirector (@redirectornames) {
 
         if ($redirectors{$redirector}{'ENABLED'} eq 'on') {
-            if($chain ne '') {
+            $activeredirectors++;
+            if ($chain ne '') {
                 $chain .= "|";
             }
             $chain .= "$redirectors{$redirector}{'CMD'}";
+            if ($redirectors{$redirector}{'ORDER'} < $lastredirector) {
+                # more redirectors will follow
+                $chain .= " $redirectors{$redirector}{'OPTION_CHAIN'}";
+            }
         }
     }
 
-    return $chain;
-}
-
-# -------------------------------------------------------------------
-# Write the wrapper program for the redirectors
-
-sub writewrapper
-{
     open (FILE, ">$redirectwrapper");
     print FILE "#!/bin/sh\n";
-    print FILE &redirectorchain;
+    print FILE $chain;
     print FILE "\n";
     close FILE;
     system("chmod 755 $redirectwrapper");
@@ -1241,8 +1227,7 @@
     if (!($proxysettings{'ADMIN_MAIL_ADDRESS'} eq '')) { print FILE "cache_mgr \
$proxysettings{'ADMIN_MAIL_ADDRESS'}\n\n"; }  
     # Write the parent proxy info, if needed.
-    if ($remotehost ne '')
-    {
+    if ($remotehost ne '') {
         print FILE "cache_peer $remotehost parent $remoteport 3130 default \
no-query";  
         # Enter authentication for the parent cache. Option format is
@@ -1263,7 +1248,7 @@
         print FILE "never_direct  allow all\n\n";
     }
 
-    if ($proxysettings{'ENABLE_REDIRECTOR'} eq 'on' && &activeredirectors > 0) {
+    if (($proxysettings{'ENABLE_REDIRECTOR'} eq 'on') && ($activeredirectors > 0)) {
         print FILE "url_rewrite_program $redirectwrapper\n";
         print FILE "url_rewrite_children $proxysettings{'CHILDREN'} startup=1 idle=1 \
concurrency=0\n\n";  }

Modified: ipcop/trunk/src/scripts/upgrade.sh
===================================================================
--- ipcop/trunk/src/scripts/upgrade.sh	2014-04-25 06:20:18 UTC (rev 7502)
+++ ipcop/trunk/src/scripts/upgrade.sh	2014-04-25 14:05:24 UTC (rev 7503)
@@ -111,3 +111,9 @@
 
 # CA certificate bundle
 /usr/sbin/update-ca-certificates --fresh
+
+TMP=`grep "squidGuard -f" /var/ipcop/proxy/redirector/urlfilter`
+if [ "x$TMP" != "x" ]; then
+    /bin/sed -i -e "s+CMD=.*+CMD=/usr/bin/squidGuard+" \
/var/ipcop/proxy/redirector/urlfilter +    echo "OPTION_CHAIN=-f" >> \
/var/ipcop/proxy/redirector/urlfilter +fi

Modified: ipcop/trunk/updates/2.1.5/setup
===================================================================
--- ipcop/trunk/updates/2.1.5/setup	2014-04-25 06:20:18 UTC (rev 7502)
+++ ipcop/trunk/updates/2.1.5/setup	2014-04-25 14:05:24 UTC (rev 7503)
@@ -127,6 +127,8 @@
     /usr/local/bin/openvpnctrl --restart
 fi
 
+# config changes
+/usr/local/bin/restartsquid --config
 # restart squid (helper checks whether squid is enabled)
 /usr/local/bin/restartsquid
 

This was sent by the SourceForge.net collaborative development platform, the world's \
largest Open Source development site.


------------------------------------------------------------------------------
Start Your Social Network Today - Download eXo Platform
Build your Enterprise Intranet with eXo Platform Software
Java Based Open Source Intranet - Social, Extensible, Cloud Ready
Get Started Now And Turn Your Intranet Into A Collaboration Platform
http://p.sf.net/sfu/ExoPlatform
_______________________________________________
Ipcop-svn mailing list
Ipcop-svn@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ipcop-svn


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic