403Webshell
Server IP : 3.128.248.115  /  Your IP : 3.133.108.47
Web Server : Apache/2.4.41 (Ubuntu)
System : Linux ip-172-31-33-233 5.15.0-1037-aws #41~20.04.1-Ubuntu SMP Mon May 22 18:18:00 UTC 2023 x86_64
User : www-data ( 33)
PHP Version : 7.4.28
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /bin/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /bin/extractres
#!/usr/bin/perl
eval 'exec perl -S $0 "$@"'
	if $running_under_some_shell;

# extractres: extract resources from PostScript file
#
# Copyright (C) Angus J. C. Duggan 1991-1995
# See file LICENSE for details.

$prog = ($0 =~ s=.*/==);

%resources = ();		# list of resources included
%merge = ();			# list of resources extracted this time
%extn = ("font", ".pfa", "file", ".ps", "procset", ".ps", # resource extns
	 "pattern", ".pat", "form", ".frm", "encoding", ".enc");
%type = ("%%BeginFile:", "file", "%%BeginProcSet:", "procset",
	 "%%BeginFont:", "font"); # resource types

while (@ARGV) {
   $_ = shift;
   if (/^-m(erge)?$/) { $merge = 1; }
   elsif (/^-/) {
      print STDERR "Usage: $prog [-merge] [file]\n";
      exit 1;
   } else {
      unshift(@ARGV, $_);
      last;
   }
}

if (defined($ENV{TMPDIR})) {	# set body file name
   $body = "$ENV{TMPDIR}/body$$.ps";
} else {
   $body = "body$$.ps";
}

open(BODY, $body) && die "Temporary file $body already exists";
open(BODY, ">$body") || die "Can't write file $body";

sub filename {			# make filename for resource in @_
   local($name);
   foreach (@_) {		# sanitise name
      s/[!()\$\#*&\\\|\`\'\"\~\{\}\[\]\<\>\?]//g;
      $name .= $_;
   }
   $name =~ s@.*/@@;		# drop directories
   die "Filename not found for resource ", join(" ", @_), "\n"
      if $name =~ /^$/;
   $name;
}

$output = STDOUT;		# start writing header out
while (<>) {
   if (/^%%BeginResource:/ || /^%%BeginFont:/ || /^%%BeginProcSet:/) {
      local($comment, @res) = split(/\s+/); # look at resource type
      local($type) = defined($type{$comment}) ? $type{$comment} : shift(@res);
      local($name) = &filename(@res, $extn{$type}); # make file name
      $saveout = $output;
      if (!$resources{$name}) {
	 print "%%IncludeResource: $type ", join(" ", @res), "\n";
	 if (!open(RES, $name)) {
	    open(RES, ">$name") || die "Can't write file $name";
	    $resources{$name} = $name;
	    $merge{$name} = $merge;
	    $output = RES;
	 } else {		# resource already exists
	    close(RES);
	    undef $output;
	 }
      } elsif ($merge{$name}) {
	 open(RES, ">>$name") || die "Can't append to file $name";
	 $output = RES;
      } else {			# resource already included
	 undef $output;
      }
   } elsif (/^%%EndResource/ || /^%%EndFont/ || /^%%EndProcSet/) {
      if (defined $output) {
	 print $output $_;
	 close($output);
      }
      $output = $saveout;
      next;
   } elsif ((/^%%EndProlog/ || /^%%BeginSetup/ || /^%%Page:/)) {
      $output = BODY;
   }
   print $output $_
      if defined $output;
}

close(BODY);			# close body output file

open(BODY, $body);		# reopen body for input
while (<BODY>) {		# print it all
   print $_;
}
close(BODY);

unlink($body);			# dispose of body file


Youez - 2016 - github.com/yon3zu
LinuXploit