From bd162fe51595efd781f2dfd4d35191c40a61a478 Mon Sep 17 00:00:00 2001 From: short <> Date: Sun, 25 Nov 2001 22:00:59 +0000 Subject: [PATCH] Rewritten to Perl to cure the slowness --- redirector | 30 +++++++++++++++++++++++++----- 1 file changed, 25 insertions(+), 5 deletions(-) diff --git a/redirector b/redirector index fd8920c..74d3b58 100755 --- a/redirector +++ b/redirector @@ -1,9 +1,29 @@ -#! /bin/sh +#! /usr/bin/perl # # $Id$ -DIR_AD=/usr/local/squid/etc/ad +use strict; +use warnings; -exec /usr/bin/perl -e '$|=1; while (<>) { -'"` (cd "$DIR_AD";m4 -P main)|awk '/./{print "s@^http://"$0".*$@http://localhost/cgi-bin/redirector-ad.cgi?"$0"@;"}' `"' -print; }' +use constant DIR_AD => "/usr/local/squid/etc/ad"; + + +chdir DIR_AD or die "chdir ".DIR_AD.": $!"; + +my($patt)=""; +open(M4,"-|","m4 -P main") or die "m4 run: $!"; +while () { + chomp; + next if !$_; + $patt.="|" if $patt; + $patt.=$_; + } +close M4; + +select STDOUT; +$|=1; + +while (<>) { + s@^http://($patt).*\n$@http://localhost/cgi-bin/redirector-ad.cgi?$1\n@os; + print; + } -- 1.8.3.1