MINI SHELL

Server : Apache/2.2.2 (Fedora)
System : Linux App1.pathumtani.go.th 2.6.20-1.2320.fc5smp #1 SMP Tue Jun 12 19:40:16 EDT 2007 i686
User : apache ( 48)
PHP Version : 5.2.9
Disable Function : NONE
Directory :  /usr/sbin/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //usr/sbin/foomatic-cleanupdrivers
#!/usr/bin/perl
# -*- perl -*-

# This is foomatic-cleanupdrivers. It removes all driver XML files
# which have an empty command line. So one can avoid that "unusable"
# printer/driver combos are shown in frontends. This program also runs
# when Foomatic is not installed.

use Foomatic::Defaults;
if ($#ARGV > -1) {
    $libdir = $ARGV[0];
} elsif ($ENV{FOOMATICDB}) {
    $libdir = $ENV{FOOMATICDB};
} elsif (!$libdir) {
    $libdir = "/usr/share/foomatic";
}

# Read out the program name with which we were called, but discard the path
$0 =~ m!/([^/]+)\s*$!;
$progname = $1;

# Read the directory with the driver's XML entries
opendir DRIVERDIR, "$libdir/db/source/driver" ||
    die "Cannot open driver XML directory!\n";
my $driver;
while ($driver = readdir(DRIVERDIR)) {
    open DRIVERENTRY, "< $libdir/db/source/driver/$driver" || die "   Database entry for the driver $driver cannot be read!\n";
    my @driverentryfield = <DRIVERENTRY>;
    close DRIVERENTRY;
    my $driverentry = join ('', @driverentryfield);
    next unless $driverentry;
    if (($driverentry =~ m!<prototype>\s*</prototype>!sg) ||
	($driverentry =~ m!<prototype\s*/\s*>!sg) ||
	($driverentry !~ m!<prototype[>/\s]!sg)) {
	unlink("$libdir/db/source/driver/$driver") ||
	    die "Cannot delete $driver!\n";
	print "$driver has an empty command line, deleted!\n";
    }
}
closedir DRIVERDIR;

Anon7 - 2021