\n"; $stopped++; } # Get list of cache dirs my @caches; if (my @cachestruct = &find_config("cache_dir", $conf)) { if ($squid_version >= 2.3) { @caches = map { $_->{'values'}->[1] } @cachestruct; } else { @caches = map { $_->{'values'}->[0] } @cachestruct; } } else { @caches = ( $config{'cache_dir'} ); } # Delete old cache files and re-create with same permissions! print "$text{'clear_del'}\n"; foreach my $c (@caches) { my @st = stat($c); if (@st) { &system_logged("rm -rf ".quotemeta($c)."/* >/dev/null 2>&1"); #mkdir($c, 0755); # only remove contents #chown($st[4], $st[5], $c); #chmod($st[2], $c); } } print "$text{'clear_done'}
\n"; my $cmd = "$config{'squid_path'} -f $config{'squid_conf'} -z"; print &text('clear_init',$cmd)."\n"; print "
\n"; &additional_log('exec', undef, $cmd); open(INIT, "$cmd 2>&1 |"); while() { print &html_escape($_); } close(INIT); print "
\n"; # Try to re-start squid if ($stopped) { my $temp = &transname(); &system_logged("$config{'squid_path'} -sY -f $config{'squid_conf'} >$temp 2>&1 /dev/null 2>&1"); print "$text{'clear_failrestart'}\n"; print "
$errs