GRAYBYTE WORDPRESS FILE MANAGER6630

Server IP : 149.255.58.128 / Your IP : 216.73.216.35
System : Linux cloud516.thundercloud.uk 5.14.0-427.26.1.el9_4.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jul 17 15:51:13 EDT 2024 x86_64
PHP Version : 8.2.28
Disable Function : allow_url_include, apache_child_terminate, apache_setenv, exec, passthru, pcntl_exec, posix_kill, posix_mkfifo, posix_getpwuid, posix_setpgid, posix_setsid, posix_setuid, posix_setgid, posix_seteuid, posix_setegid, posix_uname, proc_close, proc_get_status, proc_open, proc_terminate, shell_exec, show_source, system
cURL : ON | WGET : ON | Sudo : OFF | Pkexec : OFF
Directory : /usr/bin/
Upload Files :
Current_dir [ Not Writeable ] Document_root [ Writeable ]

Command :


Current File : /usr/bin//autom4te
#! /usr/bin/perl -w
# -*- perl -*-
# Generated from autom4te.in; do not edit by hand.

eval 'case $# in 0) exec /usr/bin/perl -S "$0";; *) exec /usr/bin/perl -S "$0" "$@";; esac'
    if 0;

# autom4te - Wrapper around M4 libraries.
# Copyright (C) 2001-2003, 2005-2012 Free Software Foundation, Inc.

# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.

# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.

# You should have received a copy of the GNU General Public License
# along with this program.  If not, see <http://www.gnu.org/licenses/>.


BEGIN
{
  my $pkgdatadir = $ENV{'autom4te_perllibdir'} || '/usr/share/autoconf';
  unshift @INC, $pkgdatadir;

  # Override SHELL.  On DJGPP SHELL may not be set to a shell
  # that can handle redirection and quote arguments correctly,
  # e.g.: COMMAND.COM.  For DJGPP always use the shell that configure
  # has detected.
  $ENV{'SHELL'} = '/bin/sh' if ($^O eq 'dos');
}

use Autom4te::C4che;
use Autom4te::ChannelDefs;
use Autom4te::Channels;
use Autom4te::FileUtils;
use Autom4te::General;
use Autom4te::XFile;
use File::Basename;
use strict;

# Data directory.
my $pkgdatadir = $ENV{'AC_MACRODIR'} || '/usr/share/autoconf';

# $LANGUAGE{LANGUAGE} -- Automatic options for LANGUAGE.
my %language;

my $output = '-';

# Mode of the output file except for traces.
my $mode = "0666";

# If melt, don't use frozen files.
my $melt = 0;

# Names of the cache directory, cache directory index, trace cache
# prefix, and output cache prefix.  And the IO object for the index.
my $cache;
my $icache;
my $tcache;
my $ocache;
my $icache_file;

my $flock_implemented = 'yes';

# The macros to trace mapped to their format, as specified by the
# user.
my %trace;

# The macros the user will want to trace in the future.
# We need `include' to get the included file, `m4_pattern_forbid' and
# `m4_pattern_allow' to check the output.
#
# FIXME: What about `sinclude'?
my @preselect = ('include',
		 'm4_pattern_allow', 'm4_pattern_forbid',
		 '_m4_warn');

# M4 include path.
my @include;

# Do we freeze?
my $freeze = 0;

# $M4.
my $m4 = $ENV{"M4"} || '/usr/bin/m4';
# Some non-GNU m4's don't reject the --help option, so give them /dev/null.
fatal "need GNU m4 1.4 or later: $m4"
  if system "$m4 --help </dev/null 2>&1 | grep reload-state >/dev/null";

# Set some high recursion limit as the default limit, 250, has already
# been hit with AC_OUTPUT.  Don't override the user's choice.
$m4 .= ' --nesting-limit=1024'
  if " $m4 " !~ / (--nesting-limit(=[0-9]+)?|-L[0-9]*) /;


# @M4_BUILTIN -- M4 builtins and a useful comment.
my @m4_builtin = `echo dumpdef | $m4 2>&1 >/dev/null`;
map { s/:.*//;s/\W// } @m4_builtin;


# %M4_BUILTIN_ALTERNATE_NAME
# --------------------------
# The builtins are renamed, e.g., `define' is renamed `m4_define'.
# So map `define' to `m4_define' and conversely.
# Some macros don't follow this scheme: be sure to properly map to their
# alternate name too.
#
# FIXME: Trace status of renamed builtins was fixed in M4 1.4.5, which
# we now depend on; do we still need to do this mapping?
#
# So we will merge them, i.e., tracing `BUILTIN' or tracing
# `m4_BUILTIN' will be the same: tracing both, but honoring the
# *last* trace specification.
#
# FIXME: This is not enough: in the output `$0' will be `BUILTIN'
# sometimes and `m4_BUILTIN' at others.  We should return a unique name,
# the one specified by the user.
#
# FIXME: To be absolutely rigorous, I would say that given that we
# _redefine_ divert (instead of _copying_ it), divert and the like
# should not be part of this list.
my %m4_builtin_alternate_name;
@m4_builtin_alternate_name{"$_", "m4_$_"} = ("m4_$_", "$_")
  foreach (grep { !/m4wrap|m4exit|dnl|ifelse|__.*__/ } @m4_builtin);
@m4_builtin_alternate_name{"ifelse", "m4_if"}   = ("m4_if", "ifelse");
@m4_builtin_alternate_name{"m4exit", "m4_exit"} = ("m4_exit", "m4exit");
@m4_builtin_alternate_name{"m4wrap", "m4_wrap"} = ("m4_wrap", "m4wrap");


# $HELP
# -----
$help = "Usage: $0 [OPTION]... [FILES]

Run GNU M4 on the FILES, avoiding useless runs.  Output the traces if tracing,
the frozen file if freezing, otherwise the expansion of the FILES.

If some of the FILES are named \`FILE.m4f\' they are considered to be M4
frozen files of all the previous files (which are therefore not loaded).
If \`FILE.m4f\' is not found, then \`FILE.m4\' will be used, together with
all the previous files.

Some files may be optional, i.e., will only be processed if found in the
include path, but then must end in \`.m4?\';  the question mark is not part of
the actual file name.

Operation modes:
  -h, --help               print this help, then exit
  -V, --version            print version number, then exit
  -v, --verbose            verbosely report processing
  -d, --debug              don\'t remove temporary files
  -o, --output=FILE        save output in FILE (defaults to \`-\', stdout)
  -f, --force              don\'t rely on cached values
  -W, --warnings=CATEGORY  report the warnings falling in CATEGORY
  -l, --language=LANG      specify the set of M4 macros to use
  -C, --cache=DIRECTORY    preserve results for future runs in DIRECTORY
      --no-cache           disable the cache
  -m, --mode=OCTAL         change the non trace output file mode (0666)
  -M, --melt               don\'t use M4 frozen files

Languages include:
  \`Autoconf\'   create Autoconf configure scripts
  \`Autotest\'   create Autotest test suites
  \`M4sh\'       create M4sh shell scripts
  \`M4sugar\'    create M4sugar output

" . Autom4te::ChannelDefs::usage . "

The environment variables \`M4\' and \`WARNINGS\' are honored.

Library directories:
  -B, --prepend-include=DIR  prepend directory DIR to search path
  -I, --include=DIR          append directory DIR to search path

Tracing:
  -t, --trace=MACRO[:FORMAT]  report the MACRO invocations
  -p, --preselect=MACRO       prepare to trace MACRO in a future run

Freezing:
  -F, --freeze   produce an M4 frozen state file for FILES

FORMAT defaults to \`\$f:\$l:\$n:\$%\', and can use the following escapes:
  \$\$     literal \$
  \$f     file where macro was called
  \$l     line where macro was called
  \$d     nesting depth of macro call
  \$n     name of the macro
  \$NUM   argument NUM, unquoted and with newlines
  \$SEP\@  all arguments, with newlines, quoted, and separated by SEP
  \$SEP*  all arguments, with newlines, unquoted, and separated by SEP
  \$SEP%  all arguments, without newlines, unquoted, and separated by SEP
SEP can be empty for the default (comma for \@ and *, colon for %),
a single character for that character, or {STRING} to use a string.

Report bugs to <bug-autoconf\@gnu.org>.
GNU Autoconf home page: <http://www.gnu.org/software/autoconf/>.
General help using GNU software: <http://www.gnu.org/gethelp/>.
";

# $VERSION
# --------
$version =  <<"EOF";
autom4te (GNU Autoconf) 2.69
Copyright (C) 2012 Free Software Foundation, Inc.
License GPLv3+/Autoconf: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>, <http://gnu.org/licenses/exceptions.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Akim Demaille.
EOF


## ---------- ##
## Routines.  ##
## ---------- ##


# $OPTION
# files_to_options (@FILE)
# ------------------------
# Transform Autom4te conventions (e.g., using foo.m4f to designate a frozen
# file) into a suitable command line for M4 (e.g., using --reload-state).
# parse_args guarantees that we will see at most one frozen file, and that
# if a frozen file is present, it is the first argument.
sub files_to_options (@)
{
  my (@file) = @_;
  my @res;
  foreach my $file (@file)
    {
      my $arg = shell_quote ($file);
      if ($file =~ /\.m4f$/)
	{
	  $arg = "--reload-state=$arg";
	  # If the user downgraded M4 from 1.6 to 1.4.x after freezing
	  # the file, then we ensure the frozen __m4_version__ will
	  # not cause m4_init to make the wrong decision about the
	  # current M4 version.
	  $arg .= " --undefine=__m4_version__"
	    unless grep {/__m4_version__/} @m4_builtin;
	}
      push @res, $arg;
    }
  return join ' ', @res;
}


# load_configuration ($FILE)
# --------------------------
# Load the configuration $FILE.
sub load_configuration ($)
{
  my ($file) = @_;
  use Text::ParseWords;

  my $cfg = new Autom4te::XFile ("< " . open_quote ($file));
  my $lang;
  while ($_ = $cfg->getline)
    {
      chomp;
      # Comments.
      next
	if /^\s*(\#.*)?$/;

      my @words = shellwords ($_);
      my $type = shift @words;
      if ($type eq 'begin-language:')
	{
	  fatal "$file:$.: end-language missing for: $lang"
	    if defined $lang;
	  $lang = lc $words[0];
	}
      elsif ($type eq 'end-language:')
	{
	  error "$file:$.: end-language mismatch: $lang"
	    if $lang ne lc $words[0];
	  $lang = undef;
	}
      elsif ($type eq 'args:')
	{
	  fatal "$file:$.: no current language"
	    unless defined $lang;
	  push @{$language{$lang}}, @words;
	}
      else
	{
	  error "$file:$.: unknown directive: $type";
	}
    }
}


# parse_args ()
# -------------
# Process any command line arguments.
sub parse_args ()
{
  # We want to look for the early options, which should not be found
  # in the configuration file.  Prepend to the user arguments.
  # Perform this repeatedly so that we can use --language in language
  # definitions.  Beware that there can be several --language
  # invocations.
  my @language;
  do {
    @language = ();
    use Getopt::Long;
    Getopt::Long::Configure ("pass_through", "permute");
    GetOptions ("l|language=s" => \@language);

    foreach (@language)
      {
	error "unknown language: $_"
	  unless exists $language{lc $_};
	unshift @ARGV, @{$language{lc $_}};
      }
  } while @language;

  # --debug is useless: it is parsed below.
  if (exists $ENV{'AUTOM4TE_DEBUG'})
    {
      print STDERR "$me: concrete arguments:\n";
      foreach my $arg (@ARGV)
	{
	  print STDERR "| $arg\n";
	}
    }

  # Process the arguments for real this time.
  my @trace;
  my @prepend_include;
  parse_WARNINGS;
  getopt
    (
     # Operation modes:
     "o|output=s"   => \$output,
     "W|warnings=s" => \&parse_warnings,
     "m|mode=s"     => \$mode,
     "M|melt"       => \$melt,

     # Library directories:
     "B|prepend-include=s" => \@prepend_include,
     "I|include=s"         => \@include,

     # Tracing:
     # Using a hash for traces is seducing.  Unfortunately, upon `-t FOO',
     # instead of mapping `FOO' to undef, Getopt maps it to `1', preventing
     # us from distinguishing `-t FOO' from `-t FOO=1'.  So let's do it
     # by hand.
     "t|trace=s"     => \@trace,
     "p|preselect=s" => \@preselect,

     # Freezing.
     "F|freeze" => \$freeze,

     # Caching.
     "C|cache=s" => \$cache,
     "no-cache"  => sub { $cache = undef; },
    );

  fatal "too few arguments
Try `$me --help' for more information."
    unless @ARGV;

  # Freezing:
  # We cannot trace at the same time (well, we can, but it sounds insane).
  # And it implies melting: there is risk not to update properly using
  # old frozen files, and worse yet: we could load a frozen file and
  # refreeze it!  A sort of caching :)
  fatal "cannot freeze and trace"
    if $freeze && @trace;
  $melt = 1
    if $freeze;

  # Names of the cache directory, cache directory index, trace cache
  # prefix, and output cache prefix.  If the cache is not to be
  # preserved, default to a temporary directory (automatically removed
  # on exit).
  $cache = $tmp
    unless $cache;
  $icache = "$cache/requests";
  $tcache = "$cache/traces.";
  $ocache = "$cache/output.";

  # Normalize the includes: the first occurrence is enough, several is
  # a pain since it introduces a useless difference in the path which
  # invalidates the cache.  And strip `.' which is implicit and always
  # first.
  @include = grep { !/^\.$/ } uniq (reverse(@prepend_include), @include);

  # Convert @trace to %trace, and work around the M4 builtins tracing
  # problem.
  # The default format is `$f:$l:$n:$%'.
  foreach (@trace)
    {
      /^([^:]+)(?::(.*))?$/ms;
      $trace{$1} = defined $2 ? $2 : '$f:$l:$n:$%';
      $trace{$m4_builtin_alternate_name{$1}} = $trace{$1}
	if exists $m4_builtin_alternate_name{$1};
    }

  # Work around the M4 builtins tracing problem for @PRESELECT.
  # FIXME: Is this still needed, now that we rely on M4 1.4.5?
  push (@preselect,
	map { $m4_builtin_alternate_name{$_} }
	grep { exists $m4_builtin_alternate_name{$_} } @preselect);

  # If we find frozen files, then all the files before it are
  # discarded: the frozen file is supposed to include them all.
  #
  # We don't want to depend upon m4's --include to find the top level
  # files, so we use `find_file' here.  Try to get a canonical name,
  # as it's part of the key for caching.  And some files are optional
  # (also handled by `find_file').
  my @argv;
  foreach (@ARGV)
    {
      if ($_ eq '-')
	{
	  push @argv, $_;
	}
      elsif (/\.m4f$/)
	{
	  # Frozen files are optional => pass a `?' to `find_file'.
	  my $file = find_file ("$_?", @include);
	  if (!$melt && $file)
	    {
	      @argv = ($file);
	    }
	  else
	    {
	      s/\.m4f$/.m4/;
	      push @argv, find_file ($_, @include);
	    }
	}
      else
	{
	  my $file = find_file ($_, @include);
	  push @argv, $file
	    if $file;
	}
    }
  @ARGV = @argv;
}


# handle_m4 ($REQ, @MACRO)
# ------------------------
# Run m4 on the input files, and save the traces on the @MACRO.
sub handle_m4 ($@)
{
  my ($req, @macro) = @_;

  # GNU m4 appends when using --debugfile/--error-output.
  unlink ($tcache . $req->id . "t");

  # Run m4.
  #
  # We don't output directly to the cache files, to avoid problems
  # when we are interrupted (that leaves corrupted files).
  xsystem ("$m4 --gnu"
	   . join (' --include=', '', map { shell_quote ($_) } @include)
	   . ' --debug=aflq'
	   . (!exists $ENV{'AUTOM4TE_NO_FATAL'} ? ' --fatal-warning' : '')
	   . " --debugfile=" . shell_quote ("$tcache" . $req->id . "t")
	   . join (' --trace=', '', map { shell_quote ($_) } sort @macro)
	   . " " . files_to_options (@ARGV)
	   . " > " . shell_quote ("$ocache" . $req->id . "t"));

  # Everything went ok: preserve the outputs.
  foreach my $file (map { $_ . $req->id } ($tcache, $ocache))
    {
      use File::Copy;
      move ("${file}t", "$file")
	or fatal "cannot rename ${file}t as $file: $!";
    }
}


# warn_forbidden ($WHERE, $WORD, %FORBIDDEN)
# ------------------------------------------
# $WORD is forbidden.  Warn with a dedicated error message if in
# %FORBIDDEN, otherwise a simple `error: possibly undefined macro'
# will do.
my $first_warn_forbidden = 1;
sub warn_forbidden ($$%)
{
  my ($where, $word, %forbidden) = @_;
  my $message;

  for my $re (sort keys %forbidden)
    {
      if ($word =~ $re)
	{
	  $message = $forbidden{$re};
	  last;
	}
    }
  $message ||= "possibly undefined macro: $word";
  warn "$where: error: $message\n";
  if ($first_warn_forbidden)
    {
      warn <<EOF;
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
EOF
      $first_warn_forbidden = 0;
    }
}


# handle_output ($REQ, $OUTPUT)
# -----------------------------
# Run m4 on the input files, perform quadrigraphs substitution, check for
# forbidden tokens, and save into $OUTPUT.
sub handle_output ($$)
{
  my ($req, $output) = @_;

  verb "creating $output";

  # Load the forbidden/allowed patterns.
  handle_traces ($req, "$tmp/patterns",
		 ('m4_pattern_forbid' => 'forbid:$1:$2',
		  'm4_pattern_allow'  => 'allow:$1'));
  my @patterns = new Autom4te::XFile ("< " . open_quote ("$tmp/patterns"))->getlines;
  chomp @patterns;
  my %forbidden =
    map { /^forbid:([^:]+):.+$/ => /^forbid:[^:]+:(.+)$/ } @patterns;
  my $forbidden = join ('|', map { /^forbid:([^:]+)/ } @patterns) || "^\$";
  my $allowed   = join ('|', map { /^allow:([^:]+)/  } @patterns) || "^\$";

  verb "forbidden tokens: $forbidden";
  verb "forbidden token : $_ => $forbidden{$_}"
    foreach (sort keys %forbidden);
  verb "allowed   tokens: $allowed";

  # Read the (cached) raw M4 output, produce the actual result.  We
  # have to use the 2nd arg to have Autom4te::XFile honor the third, but then
  # stdout is to be handled by hand :(.  Don't use fdopen as it means
  # we will close STDOUT, which we already do in END.
  my $out = new Autom4te::XFile;
  if ($output eq '-')
    {
      $out->open (">$output");
    }
  else
    {
      $out->open($output, O_CREAT | O_WRONLY | O_TRUNC, oct ($mode));
    }
  fatal "cannot create $output: $!"
    unless $out;
  my $in = new Autom4te::XFile ("< " . open_quote ($ocache . $req->id));

  my %prohibited;
  my $res;
  while ($_ = $in->getline)
    {
      s/\s+$//;
      s/__oline__/$./g;
      s/\@<:\@/[/g;
      s/\@:>\@/]/g;
      s/\@\{:\@/(/g;
      s/\@:\}\@/)/g;
      s/\@S\|\@/\$/g;
      s/\@%:\@/#/g;

      $res = $_;

      # Don't complain in comments.  Well, until we have something
      # better, don't consider `#include' etc. are comments.
      s/\#.*//
	unless /^\#\s*(if|include|endif|ifdef|ifndef|define)\b/;
      foreach (split (/\W+/))
	{
	  $prohibited{$_} = $.
	    if !/^$/ && /$forbidden/o && !/$allowed/o && ! exists $prohibited{$_};
	}

      # Performed *last*: the empty quadrigraph.
      $res =~ s/\@&t\@//g;

      print $out "$res\n";
    }

  $out->close();

  # If no forbidden words, we're done.
  return
    if ! %prohibited;

  # Locate the forbidden words in the last input file.
  # This is unsatisfying but...
  $exit_code = 1;
  if ($ARGV[$#ARGV] ne '-')
    {
      my $prohibited = '\b(' . join ('|', keys %prohibited) . ')\b';
      my $file = new Autom4te::XFile ("< " . open_quote ($ARGV[$#ARGV]));

      while ($_ = $file->getline)
	{
	  # Don't complain in comments.  Well, until we have something
	  # better, don't consider `#include' etc. to be comments.
	  s/\#.*//
	    unless /^\#(if|include|endif|ifdef|ifndef|define)\b/;

	  # Complain once per word, but possibly several times per line.
	  while (/$prohibited/)
	    {
	      my $word = $1;
	      warn_forbidden ("$ARGV[$#ARGV]:$.", $word, %forbidden);
	      delete $prohibited{$word};
	      # If we're done, exit.
	      return
		if ! %prohibited;
	      $prohibited = '\b(' . join ('|', keys %prohibited) . ')\b';
	    }
	}
    }
  warn_forbidden ("$output:$prohibited{$_}", $_, %forbidden)
    foreach (sort { $prohibited{$a} <=> $prohibited{$b} } keys %prohibited);
}


## --------------------- ##
## Handling the traces.  ##
## --------------------- ##


# $M4_MACRO
# trace_format_to_m4 ($FORMAT)
# ----------------------------
# Convert a trace $FORMAT into a M4 trace processing macro's body.
sub trace_format_to_m4 ($)
{
  my ($format) = @_;
  my $underscore = $_;
  my %escape = (# File name.
		'f' => '$1',
		# Line number.
		'l' => '$2',
		# Depth.
		'd' => '$3',
		# Name (also available as $0).
		'n' => '$4',
		# Escaped dollar.
		'$' => '$');

  my $res = '';
  $_ = $format;
  while ($_)
    {
      # $n -> $(n + 4)
      if (s/^\$(\d+)//)
	{
	  $res .= "\$" . ($1 + 4);
	}
      # $x, no separator given.
      elsif (s/^\$([fldn\$])//)
	{
	  $res .= $escape{$1};
	}
      # $.x or ${sep}x.
      elsif (s/^\$\{([^}]*)\}([@*%])//
	    || s/^\$(.?)([@*%])//)
	{
	  # $@, list of quoted effective arguments.
	  if ($2 eq '@')
	    {
	      $res .= ']at_at([' . ($1 ? $1 : ',') . '], $@)[';
	    }
	  # $*, list of unquoted effective arguments.
	  elsif ($2 eq '*')
	    {
	      $res .= ']at_star([' . ($1 ? $1 : ',') . '], $@)[';
	    }
	  # $%, list of flattened unquoted effective arguments.
	  elsif ($2 eq '%')
	    {
	      $res .= ']at_percent([' . ($1 ? $1 : ':') . '], $@)[';
	    }
	}
      elsif (/^(\$.)/)
	{
	  error "invalid escape: $1";
	}
      else
	{
	  s/^([^\$]+)//;
	  $res .= $1;
	}
    }

  $_ = $underscore;
  return '[[' . $res . ']]';
}


# handle_traces($REQ, $OUTPUT, %TRACE)
# ------------------------------------
# We use M4 itself to process the traces.  But to avoid name clashes when
# processing the traces, the builtins are disabled, and moved into `at_'.
# Actually, all the low level processing macros are in `at_' (and `_at_').
# To avoid clashes between user macros and `at_' macros, the macros which
# implement tracing are in `AT_'.
#
# Having $REQ is needed to neutralize the macros which have been traced,
# but are not wanted now.
sub handle_traces ($$%)
{
  my ($req, $output, %trace) = @_;

  verb "formatting traces for `$output': " . join (', ', sort keys %trace);

  # Processing the traces.
  my $trace_m4 = new Autom4te::XFile ("> " . open_quote ("$tmp/traces.m4"));

  $_ = <<'EOF';
  divert(-1)
  changequote([, ])
  # _at_MODE(SEPARATOR, ELT1, ELT2...)
  # ----------------------------------
  # List the elements, separating then with SEPARATOR.
  # MODE can be:
  #  `at'       -- the elements are enclosed in brackets.
  #  `star'     -- the elements are listed as are.
  #  `percent'  -- the elements are `flattened': spaces are singled out,
  #                and no new line remains.
  define([_at_at],
  [at_ifelse([$#], [1], [],
	     [$#], [2], [[[$2]]],
	     [[[$2]][$1]$0([$1], at_shift(at_shift($@)))])])

  define([_at_percent],
  [at_ifelse([$#], [1], [],
	     [$#], [2], [at_flatten([$2])],
	     [at_flatten([$2])[$1]$0([$1], at_shift(at_shift($@)))])])

  define([_at_star],
  [at_ifelse([$#], [1], [],
	     [$#], [2], [[$2]],
	     [[$2][$1]$0([$1], at_shift(at_shift($@)))])])

  # FLATTEN quotes its result.
  # Note that the second pattern is `newline, tab or space'.  Don't lose
  # the tab!
  define([at_flatten],
  [at_patsubst(at_patsubst([[[$1]]], [\\\n]), [[\n\t ]+], [ ])])

  define([at_args],    [at_shift(at_shift(at_shift(at_shift(at_shift($@)))))])
  define([at_at],      [_$0([$1], at_args($@))])
  define([at_percent], [_$0([$1], at_args($@))])
  define([at_star],    [_$0([$1], at_args($@))])

EOF
  s/^  //mg;s/\\t/\t/mg;s/\\n/\n/mg;
  print $trace_m4 $_;

  # If you trace `define', then on `define([m4_exit], defn([m4exit])' you
  # will produce
  #
  #    AT_define([m4sugar.m4], [115], [1], [define], [m4_exit], <m4exit>)
  #
  # Since `<m4exit>' is not quoted, the outer m4, when processing
  # `trace.m4' will exit prematurely.  Hence, move all the builtins to
  # the `at_' name space.

  print $trace_m4 "# Copy the builtins.\n";
  map { print $trace_m4 "define([at_$_], defn([$_]))\n" } @m4_builtin;
  print $trace_m4 "\n";

  print $trace_m4 "# Disable them.\n";
  map { print $trace_m4 "at_undefine([$_])\n" } @m4_builtin;
  print $trace_m4 "\n";


  # Neutralize traces: we don't want traces of cached requests (%REQUEST).
  print $trace_m4
   "## -------------------------------------- ##\n",
   "## By default neutralize all the traces.  ##\n",
   "## -------------------------------------- ##\n",
   "\n";
  print $trace_m4 "at_define([AT_$_], [at_dnl])\n"
    foreach (sort keys %{$req->macro});
  print $trace_m4 "\n";

  # Implement traces for current requests (%TRACE).
  print $trace_m4
    "## ------------------------- ##\n",
    "## Trace processing macros.  ##\n",
    "## ------------------------- ##\n",
    "\n";
  foreach (sort keys %trace)
    {
      # Trace request can be embed \n.
      (my $comment = "Trace $_:$trace{$_}") =~ s/^/\# /;
      print $trace_m4 "$comment\n";
      print $trace_m4 "at_define([AT_$_],\n";
      print $trace_m4 trace_format_to_m4 ($trace{$_}) . ")\n\n";
    }
  print $trace_m4 "\n";

  # Reenable output.
  print $trace_m4 "at_divert(0)at_dnl\n";

  # Transform the traces from m4 into an m4 input file.
  # Typically, transform:
  #
  # | m4trace:configure.ac:3: -1- AC_SUBST([exec_prefix], [NONE])
  #
  # into
  #
  # | AT_AC_SUBST([configure.ac], [3], [1], [AC_SUBST], [exec_prefix], [NONE])
  #
  # Pay attention that the file name might include colons, if under DOS
  # for instance, so we don't use `[^:]+'.
  my $traces = new Autom4te::XFile ("< " . open_quote ($tcache . $req->id));
  while ($_ = $traces->getline)
    {
      # Trace with arguments, as the example above.  We don't try
      # to match the trailing parenthesis as it might be on a
      # separate line.
      s{^m4trace:(.+):(\d+): -(\d+)- ([^(]+)\((.*)$}
       {AT_$4([$1], [$2], [$3], [$4], $5};
      # Traces without arguments, always on a single line.
      s{^m4trace:(.+):(\d+): -(\d+)- ([^)]*)\n$}
       {AT_$4([$1], [$2], [$3], [$4])\n};
      print $trace_m4 "$_";
    }
  $trace_m4->close;

  my $in = new Autom4te::XFile ("$m4 " . shell_quote ("$tmp/traces.m4") . " |");
  my $out = new Autom4te::XFile ("> " . open_quote ($output));

  # This is dubious: should we really transform the quadrigraphs in
  # traces?  It might break balanced [ ] etc. in the output.  The
  # consensus seems to be that traces are more useful this way.
  while ($_ = $in->getline)
    {
      # It makes no sense to try to transform __oline__.
      s/\@<:\@/[/g;
      s/\@:>\@/]/g;
      s/\@\{:\@/(/g;
      s/\@:\}\@/)/g;
      s/\@S\|\@/\$/g;
      s/\@%:\@/#/g;
      s/\@&t\@//g;
      print $out $_;
    }
}


# $BOOL
# up_to_date ($REQ)
# -----------------
# Are the cache files of $REQ up to date?
# $REQ is `valid' if it corresponds to the request and exists, which
# does not mean it is up to date.  It is up to date if, in addition,
# its files are younger than its dependencies.
sub up_to_date ($)
{
  my ($req) = @_;

  return 0
    if ! $req->valid;

  my $tfile = $tcache . $req->id;
  my $ofile = $ocache . $req->id;

  # We can't answer properly if the traces are not computed since we
  # need to know what other files were included.  Actually, if any of
  # the cache files is missing, we are not up to date.
  return 0
    if ! -f $tfile || ! -f $ofile;

  # The youngest of the cache files must be older than the oldest of
  # the dependencies.
  my $tmtime = mtime ($tfile);
  my $omtime = mtime ($ofile);
  my ($file, $mtime) = ($tmtime < $omtime
			? ($ofile, $omtime) : ($tfile, $tmtime));

  # We depend at least upon the arguments.
  my @dep = @ARGV;

  # stdin is always out of date.
  if (grep { $_ eq '-' } @dep)
    { return 0 }

  # Files may include others.  We can use traces since we just checked
  # if they are available.
  handle_traces ($req, "$tmp/dependencies",
		 ('include'    => '$1',
		  'm4_include' => '$1'));
  my $deps = new Autom4te::XFile ("< " . open_quote ("$tmp/dependencies"));
  while ($_ = $deps->getline)
    {
      chomp;
      my $file = find_file ("$_?", @include);
      # If a file which used to be included is no longer there, then
      # don't say it's missing (it might no longer be included).  But
      # of course, that causes the output to be outdated (as if the
      # time stamp of that missing file was newer).
      return 0
	if ! $file;
      push @dep, $file;
    }

  # If $FILE is younger than one of its dependencies, it is outdated.
  return up_to_date_p ($file, @dep);
}


## ---------- ##
## Freezing.  ##
## ---------- ##

# freeze ($OUTPUT)
# ----------------
sub freeze ($)
{
  my ($output) = @_;

  # When processing the file with diversion disabled, there must be no
  # output but comments and empty lines.
  my $result = xqx ("$m4"
		    . ' --fatal-warning'
		    . join (' --include=', '', map { shell_quote ($_) } @include)
		    . ' --define=divert'
		    . " " . files_to_options (@ARGV)
		    . ' </dev/null');
  $result =~ s/#.*\n//g;
  $result =~ s/^\n//mg;

  fatal "freezing produced output:\n$result"
    if $result;

  # If freezing produces output, something went wrong: a bad `divert',
  # or an improper paren etc.
  xsystem ("$m4"
	   . ' --fatal-warning'
	   . join (' --include=', '', map { shell_quote ($_) } @include)
	   . " --freeze-state=" . shell_quote ($output)
	   . " " . files_to_options (@ARGV)
	   . ' </dev/null');
}

## -------------- ##
## Main program.  ##
## -------------- ##

mktmpdir ('am4t');
load_configuration ($ENV{'AUTOM4TE_CFG'} || "$pkgdatadir/autom4te.cfg");
load_configuration ("$ENV{'HOME'}/.autom4te.cfg")
  if exists $ENV{'HOME'} && -f "$ENV{'HOME'}/.autom4te.cfg";
load_configuration (".autom4te.cfg")
  if -f ".autom4te.cfg";
parse_args;

# Freezing does not involve the cache.
if ($freeze)
  {
    freeze ($output);
    exit $exit_code;
  }

# We need our cache directory.  Don't fail with parallel creation.
if (! -d "$cache")
  {
    mkdir "$cache", 0755
      or -d "$cache"
      or fatal "cannot create $cache: $!";
  }

# Open the index for update, and lock it.  autom4te handles several
# files, but the index is the first and last file to be updated, so
# locking it is sufficient.
$icache_file = new Autom4te::XFile $icache, O_RDWR|O_CREAT;
$icache_file->lock (LOCK_EX)
  if ($flock_implemented eq "yes");

# Read the cache index if available and older than autom4te itself.
# If autom4te is younger, then some structures such as C4che might
# have changed, which would corrupt its processing.
Autom4te::C4che->load ($icache_file)
  if -f $icache && mtime ($icache) > mtime ($0);

# Add the new trace requests.
my $req = Autom4te::C4che->request ('input' => \@ARGV,
				    'path'  => \@include,
				    'macro' => [keys %trace, @preselect]);

# If $REQ's cache files are not up to date, or simply if the user
# discarded them (-f), declare it invalid.
$req->valid (0)
  if $force || ! up_to_date ($req);

# We now know whether we can trust the Request object.  Say it.
verb "the trace request object is:\n" . $req->marshall;

# We need to run M4 if (i) the user wants it (--force), (ii) $REQ is
# invalid.
handle_m4 ($req, keys %{$req->macro})
  if $force || ! $req->valid;

# Issue the warnings each time autom4te was run.
my $separator = "\n" . ('-' x 25) . " END OF WARNING " . ('-' x 25) . "\n\n";
handle_traces ($req, "$tmp/warnings",
	       ('_m4_warn' => "\$1::\$f:\$l::\$2::\$3$separator"));
# Swallow excessive newlines.
for (split (/\n*$separator\n*/o, contents ("$tmp/warnings")))
{
  # The message looks like:
  # | syntax::input.as:5::ouch
  # | ::input.as:4: baz is expanded from...
  # | input.as:2: bar is expanded from...
  # | input.as:3: foo is expanded from...
  # | input.as:5: the top level
  # In particular, m4_warn guarantees that either $stackdump is empty, or
  # it consists of lines where only the last line ends in "top level".
  my ($cat, $loc, $msg, $stacktrace) = split ('::', $_, 4);
  msg $cat, $loc, "warning: $msg",
    partial => ($stacktrace =~ /top level$/) + 0;
  for (split /\n/, $stacktrace)
    {
      my ($loc, $trace) = split (': ', $_, 2);
      msg $cat, $loc, $trace, partial => ($trace !~ /top level$/) + 0;
    }
}

# Now output...
if (%trace)
  {
    # Always produce traces, since even if the output is young enough,
    # there is no guarantee that the traces use the same *format*
    # (e.g., `-t FOO:foo' and `-t FOO:bar' are both using the same M4
    # traces, hence the M4 traces cache is usable, but its formatting
    # will yield different results).
    handle_traces ($req, $output, %trace);
  }
else
  {
    # Actual M4 expansion, if the user wants it, or if $output is old
    # (STDOUT is pretty old).
    handle_output ($req, $output)
      if $force || mtime ($output) < mtime ($ocache . $req->id);
  }

# If we ran up to here, the cache is valid.
$req->valid (1);
Autom4te::C4che->save ($icache_file);

exit $exit_code;

### Setup "GNU" style for perl-mode and cperl-mode.
## Local Variables:
## perl-indent-level: 2
## perl-continued-statement-offset: 2
## perl-continued-brace-offset: 0
## perl-brace-offset: 0
## perl-brace-imaginary-offset: 0
## perl-label-offset: -2
## cperl-indent-level: 2
## cperl-brace-offset: 0
## cperl-continued-brace-offset: 0
## cperl-label-offset: -2
## cperl-extra-newline-before-brace: t
## cperl-merge-trailing-else: nil
## cperl-continued-statement-offset: 2
## End:

[ Back ]
Name
Size
Last Modified
Owner / Group
Permissions
Options
..
--
April 06 2025 07:46:06
0 / root
0755
GET
15.82 KB
March 25 2022 08:00:31
0 / root
0755
Magick-config
1.43 KB
April 01 2025 12:48:07
0 / root
0755
MagickCore-config
1.563 KB
April 01 2025 12:48:07
0 / root
0755
MagickWand-config
1.563 KB
April 01 2025 12:48:08
0 / root
0755
Wand-config
1.425 KB
April 01 2025 12:48:08
0 / root
0755
[
51.813 KB
October 02 2024 21:44:18
0 / root
0755
aclocal
35.523 KB
September 27 2023 12:16:24
0 / root
0755
aclocal-1.16
35.523 KB
September 27 2023 12:16:24
0 / root
0755
addr2line
27.93 KB
October 03 2024 05:16:41
0 / root
0755
agentxtrap
27.5 KB
October 02 2024 18:56:26
0 / root
0755
animate
15.273 KB
April 01 2025 12:55:20
0 / root
0755
ar
56.188 KB
October 03 2024 05:16:41
0 / root
0755
arch
31.664 KB
October 02 2024 21:44:18
0 / root
0755
arpaname
15.281 KB
February 19 2025 16:04:24
0 / root
0755
as
710.508 KB
October 03 2024 05:16:41
0 / root
0755
aspell
151.117 KB
January 26 2022 21:47:25
0 / root
0755
at
1.016 KB
October 14 2022 16:04:08
0 / root
0755
atq
1.018 KB
October 14 2022 16:04:08
0 / root
0755
atrm
1.02 KB
October 14 2022 16:04:08
0 / root
0755
autoconf
14.425 KB
October 02 2024 20:06:28
0 / root
0755
autoheader
8.334 KB
October 02 2024 20:06:28
0 / root
0755
autom4te
31.427 KB
October 02 2024 20:06:28
0 / root
0755
automake
251.935 KB
September 27 2023 12:16:24
0 / root
0755
automake-1.16
251.935 KB
September 27 2023 12:16:24
0 / root
0755
autoreconf
20.572 KB
October 02 2024 20:06:28
0 / root
0755
autoscan
16.723 KB
October 02 2024 20:06:28
0 / root
0755
autoupdate
33.078 KB
October 02 2024 20:06:28
0 / root
0755
awk
698.172 KB
March 30 2022 22:25:28
0 / root
0755
b2sum
51.805 KB
October 02 2024 21:44:18
0 / root
0755
base32
35.695 KB
October 02 2024 21:44:18
0 / root
0755
base64
35.703 KB
October 02 2024 21:44:18
0 / root
0755
basename
35.68 KB
October 02 2024 21:44:18
0 / root
0755
basenc
48.016 KB
October 02 2024 21:44:18
0 / root
0755
bash
1.32 MB
April 30 2024 14:33:56
0 / root
0755
bashbug-64
6.913 KB
April 30 2024 14:33:47
0 / root
0755
batch
0.137 KB
October 14 2022 16:04:07
0 / root
0755
bison
494.758 KB
January 27 2022 00:15:31
0 / root
0755
bunzip2
39.617 KB
February 04 2025 03:42:48
0 / root
0755
bzcat
39.617 KB
February 04 2025 03:42:48
0 / root
0755
bzcmp
2.094 KB
February 04 2025 03:42:48
0 / root
0755
bzdiff
2.094 KB
February 04 2025 03:42:48
0 / root
0755
bzgrep
2.01 KB
February 04 2025 03:42:48
0 / root
0755
bzip2
39.617 KB
February 04 2025 03:42:48
0 / root
0755
bzip2recover
15.398 KB
February 04 2025 03:42:48
0 / root
0755
bzless
1.233 KB
February 04 2025 03:42:48
0 / root
0755
bzmore
1.233 KB
February 04 2025 03:42:48
0 / root
0755
c++
1.04 MB
February 12 2025 13:11:11
0 / root
0755
c++filt
27.375 KB
October 03 2024 05:16:41
0 / root
0755
c89
0.223 KB
February 12 2025 13:07:17
0 / root
0755
c99
0.214 KB
February 12 2025 13:07:17
0 / root
0755
cagefs_enter.proxied
1.035 KB
December 24 2024 11:28:37
0 / root
0755
cal
52.016 KB
October 02 2024 22:24:49
0 / root
0755
captoinfo
87.797 KB
September 27 2023 03:05:19
0 / root
0755
cat
35.664 KB
October 02 2024 21:44:18
0 / root
0755
catchsegv
3.212 KB
April 28 2025 16:05:50
0 / root
0755
cc
1.04 MB
February 12 2025 13:11:11
0 / root
0755
chcon
60.242 KB
October 02 2024 21:44:18
0 / root
0755
chgrp
56.172 KB
October 02 2024 21:44:18
0 / root
0755
chmod
56.188 KB
October 02 2024 21:44:18
0 / root
0755
chown
60.195 KB
October 02 2024 21:44:18
0 / root
0755
chrt
27.492 KB
October 02 2024 22:24:49
0 / root
0755
cksum
35.578 KB
October 02 2024 21:44:18
0 / root
0755
cldetect
10.363 KB
March 03 2025 09:50:23
0 / root
0755
clear
15.148 KB
September 27 2023 03:05:19
0 / root
0755
cmp
40.133 KB
January 29 2022 18:15:51
0 / root
0755
col
23.43 KB
October 02 2024 22:24:49
0 / root
0755
colcrt
15.391 KB
October 02 2024 22:24:49
0 / root
0755
colrm
15.375 KB
October 02 2024 22:24:49
0 / root
0755
column
35.531 KB
October 02 2024 22:24:49
0 / root
0755
comm
35.766 KB
October 02 2024 21:44:18
0 / root
0755
compare
15.273 KB
April 01 2025 12:55:20
0 / root
0755
composite
15.273 KB
April 01 2025 12:55:20
0 / root
0755
conjure
15.273 KB
April 01 2025 12:55:20
0 / root
0755
convert
15.273 KB
April 01 2025 12:55:20
0 / root
0755
cp
149.234 KB
October 02 2024 21:44:18
0 / root
0755
cpan
8.064 KB
September 27 2023 10:37:26
0 / root
0755
cpp
1.04 MB
February 12 2025 13:11:11
0 / root
0755
crontab
1.359 KB
December 17 2024 11:04:25
0 / root
0755
crontab.cagefs
40.633 KB
March 19 2025 05:58:12
0 / root
0755
csplit
108.883 KB
October 02 2024 21:44:18
0 / root
0755
curl
248.672 KB
October 02 2024 18:45:14
0 / root
0755
cut
47.82 KB
October 02 2024 21:44:18
0 / root
0755
cyrusbdb2current
1.58 MB
April 10 2023 14:10:39
0 / root
0755
date
104.047 KB
October 02 2024 21:44:18
0 / root
0755
dbiprof
6.061 KB
February 16 2022 08:03:52
0 / root
0755
dd
68.141 KB
October 02 2024 21:44:18
0 / root
0755
delv
45.555 KB
February 19 2025 16:04:24
0 / root
0755
df
84.742 KB
October 02 2024 21:44:18
0 / root
0755
diff
194.695 KB
January 29 2022 18:15:51
0 / root
0755
diff3
52.305 KB
January 29 2022 18:15:51
0 / root
0755
dig
136.766 KB
February 19 2025 16:04:24
0 / root
0755
dir
137.664 KB
October 02 2024 21:44:18
0 / root
0755
dircolors
39.813 KB
October 02 2024 21:44:18
0 / root
0755
dirname
31.492 KB
October 02 2024 21:44:18
0 / root
0755
display
15.273 KB
April 01 2025 12:55:20
0 / root
0755
dnstap-read
23.367 KB
February 19 2025 16:04:24
0 / root
0755
du
149.445 KB
October 02 2024 21:44:18
0 / root
0755
echo
35.484 KB
October 02 2024 21:44:18
0 / root
0755
ed
52.508 KB
January 30 2022 05:02:01
0 / root
0755
egrep
0.031 KB
January 31 2022 20:22:32
0 / root
0755
enc2xs
40.687 KB
February 11 2022 16:42:02
0 / root
0755
enchant
23.727 KB
January 30 2022 11:02:06
0 / root
0755
enchant-lsmod
15.805 KB
January 30 2022 11:02:06
0 / root
0755
env
44.234 KB
October 02 2024 21:44:18
0 / root
0755
eps2eps
0.628 KB
September 03 2024 11:35:23
0 / root
0755
eqn
189.516 KB
February 01 2022 10:44:53
0 / root
0755
ex
1.39 MB
October 02 2024 23:01:05
0 / root
0755
expand
39.742 KB
October 02 2024 21:44:18
0 / root
0755
expr
108.602 KB
October 02 2024 21:44:18
0 / root
0755
factor
72.055 KB
October 02 2024 21:44:18
0 / root
0755
false
27.477 KB
October 02 2024 21:44:18
0 / root
0755
fc-cache
0.136 KB
January 23 2023 15:48:20
0 / root
0755
fc-cache-64
23.172 KB
January 23 2023 19:48:35
0 / root
0755
fc-cat
19.156 KB
January 23 2023 19:48:35
0 / root
0755
fc-conflist
15.133 KB
January 23 2023 19:48:35
0 / root
0755
fc-list
15.133 KB
January 23 2023 19:48:35
0 / root
0755
fc-match
15.133 KB
January 23 2023 19:48:35
0 / root
0755
fc-pattern
15.141 KB
January 23 2023 19:48:35
0 / root
0755
fc-query
15.133 KB
January 23 2023 19:48:35
0 / root
0755
fc-scan
15.141 KB
January 23 2023 19:48:35
0 / root
0755
fc-validate
15.141 KB
January 23 2023 19:48:35
0 / root
0755
fgrep
0.031 KB
January 31 2022 20:22:32
0 / root
0755
file
27.742 KB
April 03 2024 12:38:13
0 / root
0755
find
284.953 KB
October 02 2024 21:04:59
0 / root
0755
flex
412.641 KB
January 30 2022 08:23:38
0 / root
0755
flex++
412.641 KB
January 30 2022 08:23:38
0 / root
0755
flock
23.563 KB
October 02 2024 22:24:49
0 / root
0755
fmt
39.773 KB
October 02 2024 21:44:18
0 / root
0755
fold
39.719 KB
October 02 2024 21:44:18
0 / root
0755
free
23.359 KB
April 30 2024 16:43:23
0 / root
0755
freetype-config
4.319 KB
March 31 2025 15:40:24
0 / root
0755
funzip
31.422 KB
March 18 2025 03:53:48
0 / root
0755
g++
1.04 MB
February 12 2025 13:11:11
0 / root
0755
gawk
698.172 KB
March 30 2022 22:25:28
0 / root
0755
gcc
1.04 MB
February 12 2025 13:11:11
0 / root
0755
gcc-ar
27.813 KB
February 12 2025 13:11:11
0 / root
0755
gcc-nm
27.797 KB
February 12 2025 13:11:11
0 / root
0755
gcc-ranlib
27.82 KB
February 12 2025 13:11:11
0 / root
0755
gcov
468.984 KB
February 12 2025 13:11:12
0 / root
0755
gcov-dump
283.742 KB
February 12 2025 13:11:12
0 / root
0755
gcov-tool
312.461 KB
February 12 2025 13:11:12
0 / root
0755
gem
0.529 KB
May 06 2025 04:04:18
0 / root
0755
gencat
27.641 KB
April 28 2025 16:08:22
0 / root
0755
geqn
189.516 KB
February 01 2022 10:44:53
0 / root
0755
getconf
35.406 KB
April 28 2025 16:08:23
0 / root
0755
getent
36.031 KB
April 28 2025 16:08:23
0 / root
0755
getopt
23.461 KB
October 02 2024 22:24:49
0 / root
0755
ghostscript
15.313 KB
September 03 2024 11:35:34
0 / root
0755
git
3.87 MB
December 17 2024 12:17:15
0 / root
0755
git-receive-pack
3.87 MB
December 17 2024 12:17:15
0 / root
0755
git-shell
637.141 KB
December 17 2024 12:17:15
0 / root
0755
git-upload-archive
3.87 MB
December 17 2024 12:17:15
0 / root
0755
git-upload-pack
3.87 MB
December 17 2024 12:17:15
0 / root
0755
gmake
249.797 KB
April 02 2024 12:55:30
0 / root
0755
gneqn
0.895 KB
February 01 2022 10:44:38
0 / root
0755
gnroff
3.208 KB
February 01 2022 10:44:38
0 / root
0755
gpg
1.07 MB
September 26 2023 19:39:20
0 / root
0755
gpg-agent
342.25 KB
September 26 2023 19:39:20
0 / root
0755
gpg-error
36.102 KB
February 09 2022 23:24:31
0 / root
0755
gpgsplit
27.492 KB
September 26 2023 19:39:20
0 / root
0755
gpgv
295.422 KB
September 26 2023 19:39:20
0 / root
0755
gpic
201.719 KB
February 01 2022 10:44:53
0 / root
0755
gprof
101.664 KB
October 03 2024 05:16:41
0 / root
0755
grep
154.492 KB
January 31 2022 20:22:36
0 / root
0755
groff
96.766 KB
February 01 2022 10:44:53
0 / root
0755
grops
167.258 KB
February 01 2022 10:44:53
0 / root
0755
grotty
122.195 KB
February 01 2022 10:44:53
0 / root
0755
groups
35.68 KB
October 02 2024 21:44:18
0 / root
0755
gs
15.313 KB
September 03 2024 11:35:34
0 / root
0755
gsnd
0.274 KB
September 03 2024 11:35:23
0 / root
0755
gtar
514.273 KB
October 02 2024 21:24:00
0 / root
0755
gtbl
130.859 KB
February 01 2022 10:44:53
0 / root
0755
gtroff
732.07 KB
February 01 2022 10:44:53
0 / root
0755
gunzip
2.295 KB
October 15 2022 17:26:34
0 / root
0755
gzexe
6.3 KB
October 15 2022 17:26:34
0 / root
0755
gzip
89.633 KB
October 15 2022 17:26:34
0 / root
0755
h2ph
28.693 KB
April 03 2024 14:39:02
0 / root
0755
h2xs
59.503 KB
April 03 2024 14:35:12
0 / root
0755
head
43.805 KB
October 02 2024 21:44:18
0 / root
0755
hexdump
51.602 KB
October 02 2024 22:24:49
0 / root
0755
host
108.758 KB
February 19 2025 16:04:24
0 / root
0755
hostid
31.672 KB
October 02 2024 21:44:18
0 / root
0755
hostname
23.836 KB
February 14 2022 11:22:04
0 / root
0755
hunspell
102.672 KB
January 31 2022 20:22:03
0 / root
0755
iconv
64.383 KB
April 28 2025 16:08:23
0 / root
0755
icu-config
0.2 KB
March 25 2022 07:50:10
0 / root
0755
icu-config-64
21.669 KB
March 25 2022 08:06:24
0 / root
0755
icuinfo
16.07 KB
March 25 2022 08:07:21
0 / root
0755
id
39.719 KB
October 02 2024 21:44:18
0 / root
0755
identify
15.273 KB
April 01 2025 12:55:20
0 / root
0755
idn
35.805 KB
December 20 2022 16:04:46
0 / root
0755
ifnames
4.031 KB
October 02 2024 20:06:28
0 / root
0755
import
15.273 KB
April 01 2025 12:55:20
0 / root
0755
infocmp
63.68 KB
September 27 2023 03:05:19
0 / root
0755
infotocap
87.797 KB
September 27 2023 03:05:19
0 / root
0755
install
149.289 KB
October 02 2024 21:44:18
0 / root
0755
instmodsh
4.096 KB
February 24 2022 09:56:25
0 / root
0755
ionice
15.406 KB
October 02 2024 22:24:49
0 / root
0755
ipcrm
19.422 KB
October 02 2024 22:24:49
0 / root
0755
ipcs
39.539 KB
October 02 2024 22:24:49
0 / root
0755
isosize
15.344 KB
October 02 2024 22:24:49
0 / root
0755
ispell
0.969 KB
October 08 2019 00:15:21
0 / root
0755
join
51.883 KB
October 02 2024 21:44:18
0 / root
0755
kill
31.477 KB
October 02 2024 22:24:49
0 / root
0755
ld
1.7 MB
October 03 2024 05:16:41
0 / root
0755
ld.bfd
1.7 MB
October 03 2024 05:16:41
0 / root
0755
ldd
5.318 KB
April 28 2025 16:05:52
0 / root
0755
less
197.898 KB
October 02 2024 20:38:47
0 / root
0755
lessecho
15.367 KB
October 02 2024 20:38:47
0 / root
0755
lesskey
24.805 KB
October 02 2024 20:38:47
0 / root
0755
lesspipe.sh
3.496 KB
October 02 2024 19:31:20
0 / root
0755
lex
412.641 KB
January 30 2022 08:23:38
0 / root
0755
libnetcfg
15.405 KB
April 03 2024 14:39:02
0 / root
0755
libtool
359.182 KB
October 01 2024 17:49:19
0 / root
0755
libtoolize
126.172 KB
October 01 2024 17:49:19
0 / root
0755
link
31.672 KB
October 02 2024 21:44:18
0 / root
0755
ln
60.172 KB
October 02 2024 21:44:18
0 / root
0755
locale
59.344 KB
April 28 2025 16:08:23
0 / root
0755
localedef
314.539 KB
April 28 2025 16:08:23
0 / root
0755
logger
36.172 KB
October 02 2024 22:24:49
0 / root
0755
login
43.641 KB
October 02 2024 22:24:49
0 / root
0755
logname
31.672 KB
October 02 2024 21:44:18
0 / root
0755
look
19.367 KB
October 02 2024 22:24:49
0 / root
0755
ls
137.648 KB
October 02 2024 21:44:18
0 / root
0755
lto-dump
26.58 MB
February 12 2025 13:11:12
0 / root
0755
m4
240.398 KB
March 31 2022 07:28:13
0 / root
0755
make
249.797 KB
April 02 2024 12:55:30
0 / root
0755
make-dummy-cert
0.6 KB
February 11 2025 21:56:48
0 / root
0755
mariadb
5.08 MB
May 19 2025 17:24:54
0 / root
0755
mariadb-access
109.337 KB
May 19 2025 16:19:25
0 / root
0755
mariadb-admin
4.85 MB
May 19 2025 17:24:54
0 / root
0755
mariadb-binlog
5.13 MB
May 19 2025 17:24:55
0 / root
0755
mariadb-check
4.84 MB
May 19 2025 17:24:55
0 / root
0755
mariadb-dump
4.94 MB
May 19 2025 17:24:54
0 / root
0755
mariadb-find-rows
3.213 KB
May 19 2025 16:19:25
0 / root
0755
mariadb-import
4.84 MB
May 19 2025 17:24:55
0 / root
0755
mariadb-show
4.83 MB
May 19 2025 17:24:54
0 / root
0755
mariadb-waitpid
4.52 MB
May 19 2025 17:24:54
0 / root
0755
mcookie
27.508 KB
October 02 2024 22:24:49
0 / root
0755
md5sum
39.648 KB
October 02 2024 21:44:18
0 / root
0755
mesg
15.344 KB
October 02 2024 22:24:49
0 / root
0755
mkdir
68.313 KB
October 02 2024 21:44:18
0 / root
0755
mkfifo
39.828 KB
October 02 2024 21:44:18
0 / root
0755
mknod
43.883 KB
October 02 2024 21:44:18
0 / root
0755
mktemp
39.813 KB
October 02 2024 21:44:18
0 / root
0755
mogrify
15.273 KB
April 01 2025 12:55:20
0 / root
0755
montage
15.273 KB
April 01 2025 12:55:20
0 / root
0755
more
43.633 KB
October 02 2024 22:24:49
0 / root
0755
msql2mysql
1.416 KB
May 19 2025 16:19:25
0 / root
0755
mv
141.172 KB
October 02 2024 21:44:18
0 / root
0755
my_print_defaults
4.53 MB
May 19 2025 17:24:55
0 / root
0755
mysql
5.08 MB
May 19 2025 17:24:54
0 / root
0755
mysql_config
4.5 KB
May 19 2025 16:19:25
0 / root
0755
mysql_find_rows
3.213 KB
May 19 2025 16:19:25
0 / root
0755
mysql_waitpid
4.52 MB
May 19 2025 17:24:54
0 / root
0755
mysqlaccess
109.337 KB
May 19 2025 16:19:25
0 / root
0755
mysqladmin
4.85 MB
May 19 2025 17:24:54
0 / root
0755
mysqlbinlog
5.13 MB
May 19 2025 17:24:55
0 / root
0755
mysqlcheck
4.84 MB
May 19 2025 17:24:55
0 / root
0755
mysqldump
4.94 MB
May 19 2025 17:24:54
0 / root
0755
mysqlimport
4.84 MB
May 19 2025 17:24:55
0 / root
0755
mysqlshow
4.83 MB
May 19 2025 17:24:54
0 / root
0755
namei
23.422 KB
October 02 2024 22:24:49
0 / root
0755
nano
346.219 KB
October 02 2024 21:37:48
0 / root
0755
neqn
0.895 KB
February 01 2022 10:44:38
0 / root
0755
net-snmp-create-v3-user
3.232 KB
October 02 2024 18:56:04
0 / root
0755
nice
35.68 KB
October 02 2024 21:44:18
0 / root
0755
nl
100.703 KB
October 02 2024 21:44:18
0 / root
0755
nm
44.906 KB
October 03 2024 05:16:41
0 / root
0755
nohup
35.586 KB
October 02 2024 21:44:18
0 / root
0755
nproc
35.703 KB
October 02 2024 21:44:18
0 / root
0755
nroff
3.208 KB
February 01 2022 10:44:38
0 / root
0755
nslookup
112.711 KB
February 19 2025 16:04:24
0 / root
0755
nsupdate
71.992 KB
February 19 2025 16:04:24
0 / root
0755
numfmt
55.828 KB
October 02 2024 21:44:18
0 / root
0755
objcopy
185.563 KB
October 03 2024 05:16:41
0 / root
0755
objdump
413.297 KB
October 03 2024 05:16:41
0 / root
0755
od
64.07 KB
October 02 2024 21:44:18
0 / root
0755
openssl
1.01 MB
February 11 2025 21:56:51
0 / root
0755
pango-list
19.109 KB
April 07 2023 10:19:30
0 / root
0755
pango-segmentation
19.125 KB
April 07 2023 10:19:30
0 / root
0755
pango-view
60.172 KB
April 07 2023 10:19:30
0 / root
0755
passenger
1.73 KB
April 17 2025 08:59:19
0 / root
0755
passwd
1.023 KB
April 14 2022 14:45:09
0 / root
0755
paste
35.586 KB
October 02 2024 21:44:18
0 / root
0755
patch
195.016 KB
March 25 2022 15:42:41
0 / root
0755
pathchk
35.664 KB
October 02 2024 21:44:18
0 / root
0755
pdf2dsc
0.685 KB
September 03 2024 11:35:23
0 / root
0755
pdf2ps
0.892 KB
September 03 2024 11:35:23
0 / root
0755
perl
15.25 KB
April 03 2024 14:35:42
0 / root
0755
perl5.32.1
15.25 KB
April 03 2024 14:35:42
0 / root
0755
perlbug
43.812 KB
April 03 2024 14:39:02
0 / root
0755
perldoc
0.115 KB
February 14 2022 23:51:30
0 / root
0755
perlivp
10.56 KB
April 03 2024 14:35:12
0 / root
0755
perlml
14.18 KB
August 10 2022 20:54:59
0 / root
0755
perlthanks
43.812 KB
April 03 2024 14:39:02
0 / root
0755
pgrep
31.422 KB
April 30 2024 16:43:23
0 / root
0755
php
0.915 KB
April 01 2025 16:34:00
0 / root
0755
pic
201.719 KB
February 01 2022 10:44:53
0 / root
0755
piconv
8.077 KB
February 11 2022 16:42:02
0 / root
0755
ping
76.664 KB
December 17 2024 10:51:58
0 / root
0755
pinky
35.617 KB
October 02 2024 21:44:18
0 / root
0755
pkg-config
0.327 KB
April 06 2023 20:27:13
0 / root
0755
pkill
31.422 KB
April 30 2024 16:43:23
0 / root
0755
pl2pm
4.427 KB
April 03 2024 14:38:15
0 / root
0755
pmap
35.391 KB
April 30 2024 16:43:23
0 / root
0755
pod2html
4.037 KB
April 03 2024 14:39:02
0 / root
0755
pod2man
14.682 KB
March 25 2022 12:10:57
0 / root
0755
pod2text
10.55 KB
March 25 2022 12:10:57
0 / root
0755
pod2usage
4.011 KB
February 11 2022 16:01:30
0 / root
0755
podchecker
3.572 KB
February 11 2022 19:01:35
0 / root
0755
podselect
2.468 KB
May 03 2024 07:58:31
0 / root
0555
post-grohtml
199.758 KB
February 01 2022 10:44:53
0 / root
0755
pr
72.297 KB
October 02 2024 21:44:18
0 / root
0755
pre-grohtml
92.922 KB
February 01 2022 10:44:53
0 / root
0755
precat
5.527 KB
October 08 2019 00:15:21
0 / root
0755
preunzip
5.527 KB
October 08 2019 00:15:21
0 / root
0755
prezip
5.527 KB
October 08 2019 00:15:21
0 / root
0755
prezip-bin
15.688 KB
January 26 2022 21:47:25
0 / root
0755
printenv
31.477 KB
October 02 2024 21:44:18
0 / root
0755
printf
51.781 KB
October 02 2024 21:44:18
0 / root
0755
prove
13.244 KB
February 16 2022 11:58:05
0 / root
0755
ps
141.148 KB
April 30 2024 16:43:23
0 / root
0755
ps2ascii
0.62 KB
September 03 2024 11:35:23
0 / root
0755
ps2epsi
1.238 KB
September 03 2024 11:35:23
0 / root
0755
ps2pdf
0.27 KB
September 03 2024 11:35:23
0 / root
0755
ps2pdf12
0.214 KB
September 03 2024 11:35:23
0 / root
0755
ps2pdf13
0.214 KB
September 03 2024 11:35:23
0 / root
0755
ps2pdf14
0.214 KB
September 03 2024 11:35:23
0 / root
0755
ps2pdfwr
1.057 KB
September 03 2024 11:35:23
0 / root
0755
ps2ps
0.636 KB
September 03 2024 11:35:23
0 / root
0755
ps2ps2
0.657 KB
September 03 2024 11:35:23
0 / root
0755
ptx
129.039 KB
October 02 2024 21:44:18
0 / root
0755
pwd
35.703 KB
October 02 2024 21:44:18
0 / root
0755
pwdx
15.281 KB
April 30 2024 16:43:23
0 / root
0755
pydoc
0.076 KB
December 12 2024 10:11:36
0 / root
0755
pydoc3
0.076 KB
December 12 2024 10:11:36
0 / root
0755
pydoc3.9
0.076 KB
December 12 2024 10:11:36
0 / root
0755
python
15.266 KB
December 12 2024 10:11:42
0 / root
0755
python3
15.266 KB
December 12 2024 10:11:42
0 / root
0755
python3.9
15.266 KB
December 12 2024 10:11:42
0 / root
0755
ranlib
56.195 KB
October 03 2024 05:16:41
0 / root
0755
readelf
667.477 KB
October 03 2024 05:16:41
0 / root
0755
readlink
39.695 KB
October 02 2024 21:44:18
0 / root
0755
realpath
39.773 KB
October 02 2024 21:44:18
0 / root
0755
red
0.09 KB
January 30 2022 05:02:00
0 / root
0755
rename
23.422 KB
October 02 2024 22:24:49
0 / root
0755
renew-dummy-cert
0.712 KB
February 11 2025 21:56:48
0 / root
0755
renice
15.367 KB
October 02 2024 22:24:49
0 / root
0755
reset
27.336 KB
September 27 2023 03:05:19
0 / root
0755
rev
15.359 KB
October 02 2024 22:24:49
0 / root
0755
rm
60.211 KB
October 02 2024 21:44:18
0 / root
0755
rmdir
43.617 KB
October 02 2024 21:44:18
0 / root
0755
rnano
346.219 KB
October 02 2024 21:37:48
0 / root
0755
ruby
15.273 KB
May 06 2025 03:53:09
0 / root
0755
run-with-aspell
0.087 KB
January 26 2022 21:47:11
0 / root
0755
runcon
35.648 KB
October 02 2024 21:44:18
0 / root
0755
rvi
1.39 MB
October 02 2024 23:01:05
0 / root
0755
rview
1.39 MB
October 02 2024 23:01:05
0 / root
0755
rvim
3.84 MB
October 02 2024 23:01:05
0 / root
0755
scalar
685.828 KB
December 17 2024 12:17:15
0 / root
0755
scl
39.547 KB
April 07 2023 01:57:08
0 / root
0755
scl_enabled
0.256 KB
July 27 2021 15:14:26
0 / root
0755
scl_source
1.884 KB
July 27 2021 15:14:26
0 / root
0755
scp
133.07 KB
March 01 2025 08:47:16
0 / root
0755
screen
483.039 KB
January 30 2023 11:37:57
0 / screen
0755
script
51.758 KB
October 02 2024 22:24:49
0 / root
0755
sdiff
44.203 KB
January 29 2022 18:15:51
0 / root
0755
sed
114.008 KB
February 15 2022 10:36:52
0 / root
0755
selectorctl
7.629 KB
April 10 2025 09:04:16
0 / root
0755
seq
47.805 KB
October 02 2024 21:44:18
0 / root
0755
setsid
15.352 KB
October 02 2024 22:24:49
0 / root
0755
setterm
35.516 KB
October 02 2024 22:24:49
0 / root
0755
sftp
141.063 KB
March 01 2025 08:47:16
0 / root
0755
sh
1.32 MB
April 30 2024 14:33:56
0 / root
0755
sha1sum
39.648 KB
October 02 2024 21:44:18
0 / root
0755
sha224sum
39.648 KB
October 02 2024 21:44:18
0 / root
0755
sha256sum
39.648 KB
October 02 2024 21:44:18
0 / root
0755
sha384sum
39.648 KB
October 02 2024 21:44:18
0 / root
0755
sha512sum
39.648 KB
October 02 2024 21:44:18
0 / root
0755
shred
51.883 KB
October 02 2024 21:44:18
0 / root
0755
shuf
48.023 KB
October 02 2024 21:44:18
0 / root
0755
size
31.797 KB
October 03 2024 05:16:41
0 / root
0755
skill
31.398 KB
April 30 2024 16:43:23
0 / root
0755
slabtop
23.422 KB
April 30 2024 16:43:23
0 / root
0755
sleep
35.664 KB
October 02 2024 21:44:18
0 / root
0755
snice
31.398 KB
April 30 2024 16:43:23
0 / root
0755
snmpconf
25.44 KB
October 02 2024 18:56:20
0 / root
0755
sort
113.109 KB
October 02 2024 21:44:18
0 / root
0755
spell
0.122 KB
October 08 2019 00:15:21
0 / root
0755
splain
18.956 KB
April 03 2024 14:39:02
0 / root
0755
split
52.328 KB
October 02 2024 21:44:18
0 / root
0755
sprof
35.617 KB
April 28 2025 16:08:23
0 / root
0755
sqlite3
1.52 MB
January 24 2024 23:10:31
0 / root
0755
ssh
843.531 KB
March 01 2025 08:47:16
0 / root
0755
ssh-add
164.867 KB
March 01 2025 08:47:16
0 / root
0755
ssh-agent
281.023 KB
March 01 2025 08:47:16
0 / root
0755
ssh-copy-id
12.383 KB
March 01 2025 08:47:15
0 / root
0755
ssh-keygen
455.039 KB
March 01 2025 08:47:16
0 / root
0755
ssh-keyscan
197.438 KB
March 01 2025 08:47:16
0 / root
0755
stat
80.07 KB
October 02 2024 21:44:18
0 / root
0755
stdbuf
43.75 KB
October 02 2024 21:44:18
0 / root
0755
strace
1.94 MB
October 15 2022 16:24:43
0 / root
0755
stream
15.273 KB
April 01 2025 12:55:20
0 / root
0755
strings
31.922 KB
October 03 2024 05:16:41
0 / root
0755
strip
185.555 KB
October 03 2024 05:16:41
0 / root
0755
stty
75.836 KB
October 02 2024 21:44:18
0 / root
0755
sum
35.602 KB
October 02 2024 21:44:18
0 / root
0755
sync
35.547 KB
October 02 2024 21:44:18
0 / root
0755
tabs
19.164 KB
September 27 2023 03:05:19
0 / root
0755
tac
104.609 KB
October 02 2024 21:44:18
0 / root
0755
tail
68.102 KB
October 02 2024 21:44:18
0 / root
0755
tar
514.273 KB
October 02 2024 21:24:00
0 / root
0755
taskset
23.414 KB
October 02 2024 22:24:49
0 / root
0755
tbl
130.859 KB
February 01 2022 10:44:53
0 / root
0755
tclsh
15.688 KB
October 15 2022 21:29:43
0 / root
0755
tclsh8.6
15.688 KB
October 15 2022 21:29:43
0 / root
0755
tee
35.695 KB
October 02 2024 21:44:18
0 / root
0755
test
43.805 KB
October 02 2024 21:44:18
0 / root
0755
tic
87.797 KB
September 27 2023 03:05:19
0 / root
0755
time
28.055 KB
February 11 2022 11:12:18
0 / root
0755
timeout
40.18 KB
October 02 2024 21:44:18
0 / root
0755
tload
19.336 KB
April 30 2024 16:43:23
0 / root
0755
tmpwatch
36.031 KB
February 11 2022 11:52:55
0 / root
0755
toe
23.227 KB
September 27 2023 03:05:19
0 / root
0755
top
132.273 KB
April 30 2024 16:43:23
0 / root
0755
touch
92.039 KB
October 02 2024 21:44:18
0 / root
0755
tput
27.25 KB
September 27 2023 03:05:19
0 / root
0755
tr
47.867 KB
October 02 2024 21:44:18
0 / root
0755
tree
85.445 KB
February 12 2022 01:46:16
0 / root
0755
troff
732.07 KB
February 01 2022 10:44:53
0 / root
0755
true
27.477 KB
October 02 2024 21:44:18
0 / root
0755
truncate
35.664 KB
October 02 2024 21:44:18
0 / root
0755
tset
27.336 KB
September 27 2023 03:05:19
0 / root
0755
tsort
47.805 KB
October 02 2024 21:44:18
0 / root
0755
tty
31.656 KB
October 02 2024 21:44:18
0 / root
0755
tzselect
14.992 KB
April 28 2025 16:05:30
0 / root
0755
uapi
1.02 KB
April 13 2025 21:43:08
0 / root
0755
ul
23.453 KB
October 02 2024 22:24:49
0 / root
0755
uname
31.664 KB
October 02 2024 21:44:18
0 / root
0755
unexpand
39.734 KB
October 02 2024 21:44:18
0 / root
0755
uniq
43.836 KB
October 02 2024 21:44:18
0 / root
0755
unlink
31.664 KB
October 02 2024 21:44:18
0 / root
0755
unzip
196.141 KB
March 18 2025 03:53:48
0 / root
0755
unzipsfx
87.891 KB
March 18 2025 03:53:48
0 / root
0755
uptime
15.289 KB
April 30 2024 16:43:23
0 / root
0755
users
35.688 KB
October 02 2024 21:44:18
0 / root
0755
utmpdump
23.398 KB
October 02 2024 22:24:49
0 / root
0755
vdir
137.664 KB
October 02 2024 21:44:18
0 / root
0755
vi
0.675 KB
October 02 2024 23:01:02
0 / root
0755
view
0.146 KB
October 02 2024 23:01:02
0 / root
0755
vim
3.84 MB
October 02 2024 23:01:05
0 / root
0755
vimdiff
3.84 MB
October 02 2024 23:01:05
0 / root
0755
vimtutor
2.074 KB
October 02 2024 23:01:01
0 / root
0755
vmstat
39.414 KB
April 30 2024 16:43:23
0 / root
0755
watch
27.867 KB
April 30 2024 16:43:23
0 / root
0755
wc
43.742 KB
October 02 2024 21:44:18
0 / root
0755
wget
521.406 KB
September 03 2024 11:58:56
0 / root
0755
whereis
32.039 KB
October 02 2024 22:24:49
0 / root
0755
which
27.891 KB
September 27 2023 17:32:45
0 / root
0755
who
51.773 KB
October 02 2024 21:44:18
0 / root
0755
whoami
31.664 KB
October 02 2024 21:44:18
0 / root
0755
word-list-compress
15.703 KB
January 26 2022 21:47:25
0 / root
0755
x86_64-redhat-linux-c++
1.04 MB
February 12 2025 13:11:11
0 / root
0755
x86_64-redhat-linux-g++
1.04 MB
February 12 2025 13:11:11
0 / root
0755
x86_64-redhat-linux-gcc
1.04 MB
February 12 2025 13:11:11
0 / root
0755
x86_64-redhat-linux-gcc-11
1.04 MB
February 12 2025 13:11:11
0 / root
0755
xargs
64.094 KB
October 02 2024 21:04:59
0 / root
0755
xmlcatalog
23.328 KB
March 12 2025 18:46:07
0 / root
0755
xmllint
80.75 KB
March 12 2025 18:46:07
0 / root
0755
xmlwf
39.813 KB
April 02 2025 16:03:35
0 / root
0755
xsltproc
31.406 KB
April 28 2025 16:52:06
0 / root
0755
xsubpp
4.961 KB
February 16 2022 08:56:48
0 / root
0755
xxd
19.516 KB
October 02 2024 23:01:05
0 / root
0755
yes
31.523 KB
October 02 2024 21:44:18
0 / root
0755
zcat
1.941 KB
October 15 2022 17:26:34
0 / root
0755
zcmp
1.643 KB
October 15 2022 17:26:34
0 / root
0755
zdiff
6.313 KB
October 15 2022 17:26:34
0 / root
0755
zegrep
0.032 KB
October 15 2022 17:26:34
0 / root
0755
zfgrep
0.032 KB
October 15 2022 17:26:34
0 / root
0755
zforce
2.036 KB
October 15 2022 17:26:34
0 / root
0755
zgrep
7.926 KB
October 15 2022 17:26:34
0 / root
0755
zip
221.094 KB
April 07 2023 14:02:33
0 / root
0755
zipcloak
75.695 KB
April 07 2023 14:02:33
0 / root
0755
zipgrep
2.888 KB
October 10 2008 17:40:36
0 / root
0755
zipinfo
196.141 KB
March 18 2025 03:53:48
0 / root
0755
zipnote
67.609 KB
April 07 2023 14:02:33
0 / root
0755
zipsplit
63.578 KB
April 07 2023 14:02:33
0 / root
0755
zless
2.158 KB
October 15 2022 17:26:34
0 / root
0755
zmore
1.803 KB
October 15 2022 17:26:34
0 / root
0755
znew
4.474 KB
October 15 2022 17:26:34
0 / root
0755

GRAYBYTE WORDPRESS FILE MANAGER @ 2025
CONTACT ME
Static GIF