Warning: chmod(): Operation not permitted in /var/www/hopeinstoughton_www/wp-content/plugins/simple-universal-google-analytics/main.php on line 8 [0] in function chmod in /var/www/hopeinstoughton_www/wp-content/plugins/simple-universal-google-analytics/main.php on line 8 [1] in function include_once in /var/www/hopeinstoughton_www/wp-settings.php on line 560 [2] in function require_once in /var/www/hopeinstoughton_www/wp-config.php on line 85 [3] in function require_once in /var/www/hopeinstoughton_www/wp-load.php on line 50 [4] in function require_once in /var/www/hopeinstoughton_www/wp-blog-header.php on line 13 [5] in function require in /var/www/hopeinstoughton_www/index.php on line 17
| Server IP : 94.177.8.99 / Your IP : 216.73.217.165 Web Server : Apache/2.4.58 (Ubuntu) System : Linux aries 6.8.0-134-generic #134-Ubuntu SMP PREEMPT_DYNAMIC Fri Jun 26 18:43:11 UTC 2026 x86_64 User : www-data ( 33) PHP Version : 8.1.34 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /usr/share/cli-common/ |
Upload File : |
#!/usr/bin/perl
#
# Setup
#
# Directives
use strict;
use warnings;
# Modules
use File::Basename;
# This script gets the name of the package as the first parameter. It
# parses the file given, figures out the black and white listing, then
# installs them as appropriate. If there is a second parameter, this
# is the only CLR installed.
#
# Handle the input file
#
# Get the package
my $pkg = $ARGV[0];
my $use_clr = $ARGV[1];
my $full = "/usr/share/cli-common/packages.d/$pkg";
# Make sure it exists
if ( ! -f "$full.installcligac" )
{
print STDERR "! $full.installcligac doesn't exist!\n";
exit 1;
}
# Parse the file
unless (open INPUT, "<$full.installcligac")
{
print STDERR "! Cannot open $full.installcligac ($!)\n";
exit 2;
}
my @dlls = ();
my %blacklist = ();
my %whitelist = ();
while (<INPUT>)
{
# Clean up the line and ignore blanks and comments
chomp;
s/^\s+//;
s/\s+$//;
next if /^\#/;
next if /^\s*$/;
# Split on the space
my @p = split(/\s+/);
# Check the DLL
my $dll = shift @p;
if (! -f $dll)
{
print STDERR "! Assembly $dll does not exist\n";
exit 3;
}
push @dlls, $dll;
# Go through the listing
while (@p)
{
# Get it
my $p = shift @p;
#print "D: List -> $dll: $p\n";
# Add it to the appropriate list. The dll:$dll key is used for
# sanity checking.
if ($p =~ s/^-//)
{
$blacklist{"$p:$dll"}++;
$blacklist{"dll:$dll"}++;
}
elsif ($p =~ s/^\+//)
{
$whitelist{"$p:$dll"}++;
$whitelist{"dll:$dll"}++;
}
}
}
# Do some sanity checking
foreach my $dll (@dlls)
{
if (defined($whitelist{"dll:$dll"}) && defined($blacklist{"dll:$dll"}))
{
print STDERR "! $dll has both a white- and blacklist.\n";
print STDERR "! Ignoring blacklist.\n";
}
}
# Go through the installation targets
foreach my $clr (glob("/usr/share/cli-common/runtimes.d/*"))
{
# Ignore temporary files
next if $clr =~ /~$/;
next if $clr =~ /^\./;
# Get the "name"
my $name = basename($clr);
# Get the formal name
my $formal = `$clr name`;
$formal = $name if !defined $formal || $formal =~ /^\s*$/;
chomp($formal);
# Only use the one CLR if given
next if (defined $use_clr && $name ne $use_clr);
# Figure out the package list
my @install = ();
foreach my $dll (@dlls)
{
# Check the white list
if (defined $whitelist{"dll:$dll"})
{
next if (!defined $whitelist{"$name:$dll"});
}
elsif (defined $blacklist{"dll:$dll"})
{
next if (defined $blacklist{"$name:$dll"});
}
# We are going to install this one
push @install, $dll;
}
# Install it
my $t = scalar(@install) . " assemblies";
$t = "1 assembly" if (@install == 1);
print STDOUT "* Installing $t from $pkg into $formal\n";
system($clr, "install", $pkg, @install) == 0 or die "E: Installation of $pkg with $clr failed\n";
}