✘✘ GRAYBYTE WORDPRESS FILE MANAGER ✘✘

​🇳​​🇦​​🇲​​🇪♯➤ server.blackpussy.asia ​🇻​♯➤ 5.14.0-611.20.1.el9_7.x86_64 #1 SMP 🇾​♯➤ 2026

𝗛𝗢𝗠𝗘 𝗜𝗗 ♯➤ 163.245.207.76 ♯➤ 𝗔𝗗𝗠𝗜𝗡 𝗜𝗗 216.73.216.243
𝗢𝗣𝗧𝗜𝗢𝗡𝗦 ♯ CRL ♯➤ 𝗢𝗞 ┃ WGT ♯➤ 𝗢𝗞 ┃ SDO ♯➤ 𝗢𝗞 ┃ PKEX ♯➤ 𝗢𝗙𝗙
𝗗𝗘𝗔𝗖𝗧𝗜𝗩𝗔𝗧𝗘𝗗 ♯➤ mail,mb_send_mail
𝗖𝗨𝗥𝗥𝗘𝗡𝗧 𝗙𝗜𝗟𝗘 : /usr/bin//event_rpcgen.py
#! /usr/bin/python3
#
# Copyright (c) 2005-2007 Niels Provos <provos@citi.umich.edu>
# Copyright (c) 2007-2012 Niels Provos and Nick Mathewson
# All rights reserved.
#
# Generates marshaling code based on libevent.

# pylint: disable=too-many-lines
# pylint: disable=too-many-branches
# pylint: disable=too-many-public-methods
# pylint: disable=too-many-statements
# pylint: disable=global-statement

# TODO:
# 1) propagate the arguments/options parsed by argparse down to the
#    instantiated factory objects.
# 2) move the globals into a class that manages execution, including the
#    progress outputs that go to stderr at the moment.
# 3) emit other languages.

import argparse
import re
import sys

_NAME = "event_rpcgen.py"
_VERSION = "0.1"

# Globals
LINE_COUNT = 0

CPPCOMMENT_RE = re.compile(r"\/\/.*$")
NONIDENT_RE = re.compile(r"\W")
PREPROCESSOR_DEF_RE = re.compile(r"^#define")
STRUCT_REF_RE = re.compile(r"^struct\[(?P<name>[a-zA-Z_][a-zA-Z0-9_]*)\]$")
STRUCT_DEF_RE = re.compile(r"^struct +[a-zA-Z_][a-zA-Z0-9_]* *{$")
WHITESPACE_RE = re.compile(r"\s+")

HEADER_DIRECT = []
CPP_DIRECT = []

QUIETLY = False


def declare(s):
    if not QUIETLY:
        print(s)


def TranslateList(mylist, mydict):
    return [x % mydict for x in mylist]


class RpcGenError(Exception):
    """An Exception class for parse errors."""

    def __init__(self, why): # pylint: disable=super-init-not-called
        self.why = why

    def __str__(self):
        return str(self.why)


# Holds everything that makes a struct
class Struct(object):
    def __init__(self, name):
        self._name = name
        self._entries = []
        self._tags = {}
        declare("  Created struct: %s" % name)

    def AddEntry(self, entry):
        if entry.Tag() in self._tags:
            raise RpcGenError(
                'Entry "%s" duplicates tag number %d from "%s" '
                "around line %d"
                % (entry.Name(), entry.Tag(), self._tags[entry.Tag()], LINE_COUNT)
            )
        self._entries.append(entry)
        self._tags[entry.Tag()] = entry.Name()
        declare("    Added entry: %s" % entry.Name())

    def Name(self):
        return self._name

    def EntryTagName(self, entry):
        """Creates the name inside an enumeration for distinguishing data
        types."""
        name = "%s_%s" % (self._name, entry.Name())
        return name.upper()

    @staticmethod
    def PrintIndented(filep, ident, code):
        """Takes an array, add indentation to each entry and prints it."""
        for entry in code:
            filep.write("%s%s\n" % (ident, entry))


class StructCCode(Struct):
    """ Knows how to generate C code for a struct """

    def __init__(self, name):
        Struct.__init__(self, name)

    def PrintTags(self, filep):
        """Prints the tag definitions for a structure."""
        filep.write("/* Tag definition for %s */\n" % self._name)
        filep.write("enum %s_ {\n" % self._name.lower())
        for entry in self._entries:
            filep.write("  %s=%d,\n" % (self.EntryTagName(entry), entry.Tag()))
        filep.write("  %s_MAX_TAGS\n" % (self._name.upper()))
        filep.write("};\n\n")

    def PrintForwardDeclaration(self, filep):
        filep.write("struct %s;\n" % self._name)

    def PrintDeclaration(self, filep):
        filep.write("/* Structure declaration for %s */\n" % self._name)
        filep.write("struct %s_access_ {\n" % self._name)
        for entry in self._entries:
            dcl = entry.AssignDeclaration("(*%s_assign)" % entry.Name())
            dcl.extend(entry.GetDeclaration("(*%s_get)" % entry.Name()))
            if entry.Array():
                dcl.extend(entry.AddDeclaration("(*%s_add)" % entry.Name()))
            self.PrintIndented(filep, "  ", dcl)
        filep.write("};\n\n")

        filep.write("struct %s {\n" % self._name)
        filep.write("  struct %s_access_ *base;\n\n" % self._name)
        for entry in self._entries:
            dcl = entry.Declaration()
            self.PrintIndented(filep, "  ", dcl)
        filep.write("\n")
        for entry in self._entries:
            filep.write("  ev_uint8_t %s_set;\n" % entry.Name())
        filep.write("};\n\n")

        filep.write(
            """struct %(name)s *%(name)s_new(void);
struct %(name)s *%(name)s_new_with_arg(void *);
void %(name)s_free(struct %(name)s *);
void %(name)s_clear(struct %(name)s *);
void %(name)s_marshal(struct evbuffer *, const struct %(name)s *);
int %(name)s_unmarshal(struct %(name)s *, struct evbuffer *);
int %(name)s_complete(struct %(name)s *);
void evtag_marshal_%(name)s(struct evbuffer *, ev_uint32_t,
    const struct %(name)s *);
int evtag_unmarshal_%(name)s(struct evbuffer *, ev_uint32_t,
    struct %(name)s *);\n"""
            % {"name": self._name}
        )

        # Write a setting function of every variable
        for entry in self._entries:
            self.PrintIndented(
                filep, "", entry.AssignDeclaration(entry.AssignFuncName())
            )
            self.PrintIndented(filep, "", entry.GetDeclaration(entry.GetFuncName()))
            if entry.Array():
                self.PrintIndented(filep, "", entry.AddDeclaration(entry.AddFuncName()))

        filep.write("/* --- %s done --- */\n\n" % self._name)

    def PrintCode(self, filep):
        filep.write(
            """/*
 * Implementation of %s
 */
"""
            % (self._name)
        )

        filep.write(
            """
static struct %(name)s_access_ %(name)s_base__ = {
"""
            % {"name": self._name}
        )
        for entry in self._entries:
            self.PrintIndented(filep, "  ", entry.CodeBase())
        filep.write("};\n\n")

        # Creation
        filep.write(
            """struct %(name)s *
%(name)s_new(void)
{
  return %(name)s_new_with_arg(NULL);
}

struct %(name)s *
%(name)s_new_with_arg(void *unused)
{
  struct %(name)s *tmp;
  if ((tmp = malloc(sizeof(struct %(name)s))) == NULL) {
    event_warn("%%s: malloc", __func__);
    return (NULL);
  }
  tmp->base = &%(name)s_base__;

"""
            % {"name": self._name}
        )

        for entry in self._entries:
            self.PrintIndented(filep, "  ", entry.CodeInitialize("tmp"))
            filep.write("  tmp->%s_set = 0;\n\n" % entry.Name())

        filep.write(
            """  return (tmp);
}

"""
        )

        # Adding
        for entry in self._entries:
            if entry.Array():
                self.PrintIndented(filep, "", entry.CodeAdd())
            filep.write("\n")

        # Assigning
        for entry in self._entries:
            self.PrintIndented(filep, "", entry.CodeAssign())
            filep.write("\n")

        # Getting
        for entry in self._entries:
            self.PrintIndented(filep, "", entry.CodeGet())
            filep.write("\n")

        # Clearing
        filep.write(
            """void
%(name)s_clear(struct %(name)s *tmp)
{
"""
            % {"name": self._name}
        )
        for entry in self._entries:
            self.PrintIndented(filep, "  ", entry.CodeClear("tmp"))

        filep.write("}\n\n")

        # Freeing
        filep.write(
            """void
%(name)s_free(struct %(name)s *tmp)
{
"""
            % {"name": self._name}
        )

        for entry in self._entries:
            self.PrintIndented(filep, "  ", entry.CodeFree("tmp"))

        filep.write(
            """  free(tmp);
}

"""
        )

        # Marshaling
        filep.write(
            """void
%(name)s_marshal(struct evbuffer *evbuf, const struct %(name)s *tmp) {
"""
            % {"name": self._name}
        )
        for entry in self._entries:
            indent = "  "
            # Optional entries do not have to be set
            if entry.Optional():
                indent += "  "
                filep.write("  if (tmp->%s_set) {\n" % entry.Name())
            self.PrintIndented(
                filep,
                indent,
                entry.CodeMarshal(
                    "evbuf",
                    self.EntryTagName(entry),
                    entry.GetVarName("tmp"),
                    entry.GetVarLen("tmp"),
                ),
            )
            if entry.Optional():
                filep.write("  }\n")

        filep.write("}\n\n")

        # Unmarshaling
        filep.write(
            """int
%(name)s_unmarshal(struct %(name)s *tmp, struct evbuffer *evbuf)
{
  ev_uint32_t tag;
  while (evbuffer_get_length(evbuf) > 0) {
    if (evtag_peek(evbuf, &tag) == -1)
      return (-1);
    switch (tag) {

"""
            % {"name": self._name}
        )
        for entry in self._entries:
            filep.write("      case %s:\n" % (self.EntryTagName(entry)))
            if not entry.Array():
                filep.write(
                    """        if (tmp->%s_set)
          return (-1);
"""
                    % (entry.Name())
                )

            self.PrintIndented(
                filep,
                "        ",
                entry.CodeUnmarshal(
                    "evbuf",
                    self.EntryTagName(entry),
                    entry.GetVarName("tmp"),
                    entry.GetVarLen("tmp"),
                ),
            )

            filep.write(
                """        tmp->%s_set = 1;
        break;
"""
                % (entry.Name())
            )
        filep.write(
            """      default:
        return -1;
    }
  }

"""
        )
        # Check if it was decoded completely
        filep.write(
            """  if (%(name)s_complete(tmp) == -1)
    return (-1);
  return (0);
}
"""
            % {"name": self._name}
        )

        # Checking if a structure has all the required data
        filep.write(
            """
int
%(name)s_complete(struct %(name)s *msg)
{
"""
            % {"name": self._name}
        )
        for entry in self._entries:
            if not entry.Optional():
                code = [
                    """if (!msg->%(name)s_set)
    return (-1);"""
                ]
                code = TranslateList(code, entry.GetTranslation())
                self.PrintIndented(filep, "  ", code)

            self.PrintIndented(
                filep, "  ", entry.CodeComplete("msg", entry.GetVarName("msg"))
            )
        filep.write(
            """  return (0);
}
"""
        )

        # Complete message unmarshaling
        filep.write(
            """
int
evtag_unmarshal_%(name)s(struct evbuffer *evbuf, ev_uint32_t need_tag,
  struct %(name)s *msg)
{
  ev_uint32_t tag;
  int res = -1;

  struct evbuffer *tmp = evbuffer_new();

  if (evtag_unmarshal(evbuf, &tag, tmp) == -1 || tag != need_tag)
    goto error;

  if (%(name)s_unmarshal(msg, tmp) == -1)
    goto error;

  res = 0;

 error:
  evbuffer_free(tmp);
  return (res);
}
"""
            % {"name": self._name}
        )

        # Complete message marshaling
        filep.write(
            """
void
evtag_marshal_%(name)s(struct evbuffer *evbuf, ev_uint32_t tag,
    const struct %(name)s *msg)
{
  struct evbuffer *buf_ = evbuffer_new();
  assert(buf_ != NULL);
  %(name)s_marshal(buf_, msg);
  evtag_marshal_buffer(evbuf, tag, buf_);
  evbuffer_free(buf_);
}

"""
            % {"name": self._name}
        )


class Entry(object):
    def __init__(self, ent_type, name, tag):
        self._type = ent_type
        self._name = name
        self._tag = int(tag)
        self._ctype = ent_type
        self._optional = False
        self._can_be_array = False
        self._array = False
        self._line_count = -1
        self._struct = None
        self._refname = None

        self._optpointer = True
        self._optaddarg = True

    @staticmethod
    def GetInitializer():
        raise NotImplementedError("Entry does not provide an initializer")

    def SetStruct(self, struct):
        self._struct = struct

    def LineCount(self):
        assert self._line_count != -1
        return self._line_count

    def SetLineCount(self, number):
        self._line_count = number

    def Array(self):
        return self._array

    def Optional(self):
        return self._optional

    def Tag(self):
        return self._tag

    def Name(self):
        return self._name

    def Type(self):
        return self._type

    def MakeArray(self):
        self._array = True

    def MakeOptional(self):
        self._optional = True

    def Verify(self):
        if self.Array() and not self._can_be_array:
            raise RpcGenError(
                'Entry "%s" cannot be created as an array '
                "around line %d" % (self._name, self.LineCount())
            )
        if not self._struct:
            raise RpcGenError(
                'Entry "%s" does not know which struct it belongs to '
                "around line %d" % (self._name, self.LineCount())
            )
        if self._optional and self._array:
            raise RpcGenError(
                'Entry "%s" has illegal combination of optional and array '
                "around line %d" % (self._name, self.LineCount())
            )

    def GetTranslation(self, extradict=None):
        if extradict is None:
            extradict = {}
        mapping = {
            "parent_name": self._struct.Name(),
            "name": self._name,
            "ctype": self._ctype,
            "refname": self._refname,
            "optpointer": self._optpointer and "*" or "",
            "optreference": self._optpointer and "&" or "",
            "optaddarg": self._optaddarg and ", const %s value" % self._ctype or "",
        }
        for (k, v) in list(extradict.items()):
            mapping[k] = v

        return mapping

    def GetVarName(self, var):
        return "%(var)s->%(name)s_data" % self.GetTranslation({"var": var})

    def GetVarLen(self, _var):
        return "sizeof(%s)" % self._ctype

    def GetFuncName(self):
        return "%s_%s_get" % (self._struct.Name(), self._name)

    def GetDeclaration(self, funcname):
        code = [
            "int %s(struct %s *, %s *);" % (funcname, self._struct.Name(), self._ctype)
        ]
        return code

    def CodeGet(self):
        code = """int
%(parent_name)s_%(name)s_get(struct %(parent_name)s *msg, %(ctype)s *value)
{
  if (msg->%(name)s_set != 1)
    return (-1);
  *value = msg->%(name)s_data;
  return (0);
}"""
        code = code % self.GetTranslation()
        return code.split("\n")

    def AssignFuncName(self):
        return "%s_%s_assign" % (self._struct.Name(), self._name)

    def AddFuncName(self):
        return "%s_%s_add" % (self._struct.Name(), self._name)

    def AssignDeclaration(self, funcname):
        code = [
            "int %s(struct %s *, const %s);"
            % (funcname, self._struct.Name(), self._ctype)
        ]
        return code

    def CodeAssign(self):
        code = [
            "int",
            "%(parent_name)s_%(name)s_assign(struct %(parent_name)s *msg,"
            " const %(ctype)s value)",
            "{",
            "  msg->%(name)s_set = 1;",
            "  msg->%(name)s_data = value;",
            "  return (0);",
            "}",
        ]
        code = "\n".join(code)
        code = code % self.GetTranslation()
        return code.split("\n")

    def CodeClear(self, structname):
        code = ["%s->%s_set = 0;" % (structname, self.Name())]

        return code

    @staticmethod
    def CodeComplete(_structname, _var_name):
        return []

    @staticmethod
    def CodeFree(_name):
        return []

    def CodeBase(self):
        code = ["%(parent_name)s_%(name)s_assign,", "%(parent_name)s_%(name)s_get,"]
        if self.Array():
            code.append("%(parent_name)s_%(name)s_add,")

        code = "\n".join(code)
        code = code % self.GetTranslation()
        return code.split("\n")


class EntryBytes(Entry):
    def __init__(self, ent_type, name, tag, length):
        # Init base class
        super(EntryBytes, self).__init__(ent_type, name, tag)

        self._length = length
        self._ctype = "ev_uint8_t"

    @staticmethod
    def GetInitializer():
        return "NULL"

    def GetVarLen(self, _var):
        return "(%s)" % self._length

    @staticmethod
    def CodeArrayAdd(varname, _value):
        # XXX: copy here
        return ["%(varname)s = NULL;" % {"varname": varname}]

    def GetDeclaration(self, funcname):
        code = [
            "int %s(struct %s *, %s **);" % (funcname, self._struct.Name(), self._ctype)
        ]
        return code

    def AssignDeclaration(self, funcname):
        code = [
            "int %s(struct %s *, const %s *);"
            % (funcname, self._struct.Name(), self._ctype)
        ]
        return code

    def Declaration(self):
        dcl = ["ev_uint8_t %s_data[%s];" % (self._name, self._length)]

        return dcl

    def CodeGet(self):
        name = self._name
        code = [
            "int",
            "%s_%s_get(struct %s *msg, %s **value)"
            % (self._struct.Name(), name, self._struct.Name(), self._ctype),
            "{",
            "  if (msg->%s_set != 1)" % name,
            "    return (-1);",
            "  *value = msg->%s_data;" % name,
            "  return (0);",
            "}",
        ]
        return code

    def CodeAssign(self):
        name = self._name
        code = [
            "int",
            "%s_%s_assign(struct %s *msg, const %s *value)"
            % (self._struct.Name(), name, self._struct.Name(), self._ctype),
            "{",
            "  msg->%s_set = 1;" % name,
            "  memcpy(msg->%s_data, value, %s);" % (name, self._length),
            "  return (0);",
            "}",
        ]
        return code

    def CodeUnmarshal(self, buf, tag_name, var_name, var_len):
        code = [
            "if (evtag_unmarshal_fixed(%(buf)s, %(tag)s, "
            "%(var)s, %(varlen)s) == -1) {",
            '  event_warnx("%%s: failed to unmarshal %(name)s", __func__);',
            "  return (-1);",
            "}",
        ]
        return TranslateList(
            code,
            self.GetTranslation(
                {"var": var_name, "varlen": var_len, "buf": buf, "tag": tag_name}
            ),
        )

    @staticmethod
    def CodeMarshal(buf, tag_name, var_name, var_len):
        code = ["evtag_marshal(%s, %s, %s, %s);" % (buf, tag_name, var_name, var_len)]
        return code

    def CodeClear(self, structname):
        code = [
            "%s->%s_set = 0;" % (structname, self.Name()),
            "memset(%s->%s_data, 0, sizeof(%s->%s_data));"
            % (structname, self._name, structname, self._name),
        ]

        return code

    def CodeInitialize(self, name):
        code = [
            "memset(%s->%s_data, 0, sizeof(%s->%s_data));"
            % (name, self._name, name, self._name)
        ]
        return code

    def Verify(self):
        if not self._length:
            raise RpcGenError(
                'Entry "%s" needs a length '
                "around line %d" % (self._name, self.LineCount())
            )

        super(EntryBytes, self).Verify()


class EntryInt(Entry):
    def __init__(self, ent_type, name, tag, bits=32):
        # Init base class
        super(EntryInt, self).__init__(ent_type, name, tag)

        self._can_be_array = True
        if bits == 32:
            self._ctype = "ev_uint32_t"
            self._marshal_type = "int"
        if bits == 64:
            self._ctype = "ev_uint64_t"
            self._marshal_type = "int64"

    @staticmethod
    def GetInitializer():
        return "0"

    @staticmethod
    def CodeArrayFree(_var):
        return []

    @staticmethod
    def CodeArrayAssign(varname, srcvar):
        return ["%(varname)s = %(srcvar)s;" % {"varname": varname, "srcvar": srcvar}]

    @staticmethod
    def CodeArrayAdd(varname, value):
        """Returns a new entry of this type."""
        return ["%(varname)s = %(value)s;" % {"varname": varname, "value": value}]

    def CodeUnmarshal(self, buf, tag_name, var_name, _var_len):
        code = [
            "if (evtag_unmarshal_%(ma)s(%(buf)s, %(tag)s, &%(var)s) == -1) {",
            '  event_warnx("%%s: failed to unmarshal %(name)s", __func__);',
            "  return (-1);",
            "}",
        ]
        code = "\n".join(code) % self.GetTranslation(
            {"ma": self._marshal_type, "buf": buf, "tag": tag_name, "var": var_name}
        )
        return code.split("\n")

    def CodeMarshal(self, buf, tag_name, var_name, _var_len):
        code = [
            "evtag_marshal_%s(%s, %s, %s);"
            % (self._marshal_type, buf, tag_name, var_name)
        ]
        return code

    def Declaration(self):
        dcl = ["%s %s_data;" % (self._ctype, self._name)]

        return dcl

    def CodeInitialize(self, name):
        code = ["%s->%s_data = 0;" % (name, self._name)]
        return code


class EntryString(Entry):
    def __init__(self, ent_type, name, tag):
        # Init base class
        super(EntryString, self).__init__(ent_type, name, tag)

        self._can_be_array = True
        self._ctype = "char *"

    @staticmethod
    def GetInitializer():
        return "NULL"

    @staticmethod
    def CodeArrayFree(varname):
        code = ["if (%(var)s != NULL) free(%(var)s);"]

        return TranslateList(code, {"var": varname})

    @staticmethod
    def CodeArrayAssign(varname, srcvar):
        code = [
            "if (%(var)s != NULL)",
            "  free(%(var)s);",
            "%(var)s = strdup(%(srcvar)s);",
            "if (%(var)s == NULL) {",
            '  event_warnx("%%s: strdup", __func__);',
            "  return (-1);",
            "}",
        ]

        return TranslateList(code, {"var": varname, "srcvar": srcvar})

    @staticmethod
    def CodeArrayAdd(varname, value):
        code = [
            "if (%(value)s != NULL) {",
            "  %(var)s = strdup(%(value)s);",
            "  if (%(var)s == NULL) {",
            "    goto error;",
            "  }",
            "} else {",
            "  %(var)s = NULL;",
            "}",
        ]

        return TranslateList(code, {"var": varname, "value": value})

    def GetVarLen(self, var):
        return "strlen(%s)" % self.GetVarName(var)

    @staticmethod
    def CodeMakeInitalize(varname):
        return "%(varname)s = NULL;" % {"varname": varname}

    def CodeAssign(self):
        code = """int
%(parent_name)s_%(name)s_assign(struct %(parent_name)s *msg,
    const %(ctype)s value)
{
  if (msg->%(name)s_data != NULL)
    free(msg->%(name)s_data);
  if ((msg->%(name)s_data = strdup(value)) == NULL)
    return (-1);
  msg->%(name)s_set = 1;
  return (0);
}""" % (
            self.GetTranslation()
        )

        return code.split("\n")

    def CodeUnmarshal(self, buf, tag_name, var_name, _var_len):
        code = [
            "if (evtag_unmarshal_string(%(buf)s, %(tag)s, &%(var)s) == -1) {",
            '  event_warnx("%%s: failed to unmarshal %(name)s", __func__);',
            "  return (-1);",
            "}",
        ]
        code = "\n".join(code) % self.GetTranslation(
            {"buf": buf, "tag": tag_name, "var": var_name}
        )
        return code.split("\n")

    @staticmethod
    def CodeMarshal(buf, tag_name, var_name, _var_len):
        code = ["evtag_marshal_string(%s, %s, %s);" % (buf, tag_name, var_name)]
        return code

    def CodeClear(self, structname):
        code = [
            "if (%s->%s_set == 1) {" % (structname, self.Name()),
            "  free(%s->%s_data);" % (structname, self.Name()),
            "  %s->%s_data = NULL;" % (structname, self.Name()),
            "  %s->%s_set = 0;" % (structname, self.Name()),
            "}",
        ]

        return code

    def CodeInitialize(self, name):
        code = ["%s->%s_data = NULL;" % (name, self._name)]
        return code

    def CodeFree(self, name):
        code = [
            "if (%s->%s_data != NULL)" % (name, self._name),
            "    free (%s->%s_data);" % (name, self._name),
        ]

        return code

    def Declaration(self):
        dcl = ["char *%s_data;" % self._name]

        return dcl


class EntryStruct(Entry):
    def __init__(self, ent_type, name, tag, refname):
        # Init base class
        super(EntryStruct, self).__init__(ent_type, name, tag)

        self._optpointer = False
        self._can_be_array = True
        self._refname = refname
        self._ctype = "struct %s*" % refname
        self._optaddarg = False

    def GetInitializer(self):
        return "NULL"

    def GetVarLen(self, _var):
        return "-1"

    def CodeArrayAdd(self, varname, _value):
        code = [
            "%(varname)s = %(refname)s_new();",
            "if (%(varname)s == NULL)",
            "  goto error;",
        ]

        return TranslateList(code, self.GetTranslation({"varname": varname}))

    def CodeArrayFree(self, var):
        code = ["%(refname)s_free(%(var)s);" % self.GetTranslation({"var": var})]
        return code

    def CodeArrayAssign(self, var, srcvar):
        code = [
            "int had_error = 0;",
            "struct evbuffer *tmp = NULL;",
            "%(refname)s_clear(%(var)s);",
            "if ((tmp = evbuffer_new()) == NULL) {",
            '  event_warn("%%s: evbuffer_new()", __func__);',
            "  had_error = 1;",
            "  goto done;",
            "}",
            "%(refname)s_marshal(tmp, %(srcvar)s);",
            "if (%(refname)s_unmarshal(%(var)s, tmp) == -1) {",
            '  event_warnx("%%s: %(refname)s_unmarshal", __func__);',
            "  had_error = 1;",
            "  goto done;",
            "}",
            "done:",
            "if (tmp != NULL)",
            "  evbuffer_free(tmp);",
            "if (had_error) {",
            "  %(refname)s_clear(%(var)s);",
            "  return (-1);",
            "}",
        ]

        return TranslateList(code, self.GetTranslation({"var": var, "srcvar": srcvar}))

    def CodeGet(self):
        name = self._name
        code = [
            "int",
            "%s_%s_get(struct %s *msg, %s *value)"
            % (self._struct.Name(), name, self._struct.Name(), self._ctype),
            "{",
            "  if (msg->%s_set != 1) {" % name,
            "    msg->%s_data = %s_new();" % (name, self._refname),
            "    if (msg->%s_data == NULL)" % name,
            "      return (-1);",
            "    msg->%s_set = 1;" % name,
            "  }",
            "  *value = msg->%s_data;" % name,
            "  return (0);",
            "}",
        ]
        return code

    def CodeAssign(self):
        code = (
            """int
%(parent_name)s_%(name)s_assign(struct %(parent_name)s *msg,
    const %(ctype)s value)
{
   struct evbuffer *tmp = NULL;
   if (msg->%(name)s_set) {
     %(refname)s_clear(msg->%(name)s_data);
     msg->%(name)s_set = 0;
   } else {
     msg->%(name)s_data = %(refname)s_new();
     if (msg->%(name)s_data == NULL) {
       event_warn("%%s: %(refname)s_new()", __func__);
       goto error;
     }
   }
   if ((tmp = evbuffer_new()) == NULL) {
     event_warn("%%s: evbuffer_new()", __func__);
     goto error;
   }
   %(refname)s_marshal(tmp, value);
   if (%(refname)s_unmarshal(msg->%(name)s_data, tmp) == -1) {
     event_warnx("%%s: %(refname)s_unmarshal", __func__);
     goto error;
   }
   msg->%(name)s_set = 1;
   evbuffer_free(tmp);
   return (0);
 error:
   if (tmp != NULL)
     evbuffer_free(tmp);
   if (msg->%(name)s_data != NULL) {
     %(refname)s_free(msg->%(name)s_data);
     msg->%(name)s_data = NULL;
   }
   return (-1);
}"""
            % self.GetTranslation()
        )
        return code.split("\n")

    def CodeComplete(self, structname, var_name):
        code = [
            "if (%(structname)s->%(name)s_set && "
            "%(refname)s_complete(%(var)s) == -1)",
            "  return (-1);",
        ]

        return TranslateList(
            code, self.GetTranslation({"structname": structname, "var": var_name})
        )

    def CodeUnmarshal(self, buf, tag_name, var_name, _var_len):
        code = [
            "%(var)s = %(refname)s_new();",
            "if (%(var)s == NULL)",
            "  return (-1);",
            "if (evtag_unmarshal_%(refname)s(%(buf)s, %(tag)s, ",
            "    %(var)s) == -1) {",
            '  event_warnx("%%s: failed to unmarshal %(name)s", __func__);',
            "  return (-1);",
            "}",
        ]
        code = "\n".join(code) % self.GetTranslation(
            {"buf": buf, "tag": tag_name, "var": var_name}
        )
        return code.split("\n")

    def CodeMarshal(self, buf, tag_name, var_name, _var_len):
        code = [
            "evtag_marshal_%s(%s, %s, %s);" % (self._refname, buf, tag_name, var_name)
        ]
        return code

    def CodeClear(self, structname):
        code = [
            "if (%s->%s_set == 1) {" % (structname, self.Name()),
            "  %s_free(%s->%s_data);" % (self._refname, structname, self.Name()),
            "  %s->%s_data = NULL;" % (structname, self.Name()),
            "  %s->%s_set = 0;" % (structname, self.Name()),
            "}",
        ]

        return code

    def CodeInitialize(self, name):
        code = ["%s->%s_data = NULL;" % (name, self._name)]
        return code

    def CodeFree(self, name):
        code = [
            "if (%s->%s_data != NULL)" % (name, self._name),
            "    %s_free(%s->%s_data);" % (self._refname, name, self._name),
        ]

        return code

    def Declaration(self):
        dcl = ["%s %s_data;" % (self._ctype, self._name)]

        return dcl


class EntryVarBytes(Entry):
    def __init__(self, ent_type, name, tag):
        # Init base class
        super(EntryVarBytes, self).__init__(ent_type, name, tag)

        self._ctype = "ev_uint8_t *"

    @staticmethod
    def GetInitializer():
        return "NULL"

    def GetVarLen(self, var):
        return "%(var)s->%(name)s_length" % self.GetTranslation({"var": var})

    @staticmethod
    def CodeArrayAdd(varname, _value):
        # xxx: copy
        return ["%(varname)s = NULL;" % {"varname": varname}]

    def GetDeclaration(self, funcname):
        code = [
            "int %s(struct %s *, %s *, ev_uint32_t *);"
            % (funcname, self._struct.Name(), self._ctype)
        ]
        return code

    def AssignDeclaration(self, funcname):
        code = [
            "int %s(struct %s *, const %s, ev_uint32_t);"
            % (funcname, self._struct.Name(), self._ctype)
        ]
        return code

    def CodeAssign(self):
        name = self._name
        code = [
            "int",
            "%s_%s_assign(struct %s *msg, "
            "const %s value, ev_uint32_t len)"
            % (self._struct.Name(), name, self._struct.Name(), self._ctype),
            "{",
            "  if (msg->%s_data != NULL)" % name,
            "    free (msg->%s_data);" % name,
            "  msg->%s_data = malloc(len);" % name,
            "  if (msg->%s_data == NULL)" % name,
            "    return (-1);",
            "  msg->%s_set = 1;" % name,
            "  msg->%s_length = len;" % name,
            "  memcpy(msg->%s_data, value, len);" % name,
            "  return (0);",
            "}",
        ]
        return code

    def CodeGet(self):
        name = self._name
        code = [
            "int",
            "%s_%s_get(struct %s *msg, %s *value, ev_uint32_t *plen)"
            % (self._struct.Name(), name, self._struct.Name(), self._ctype),
            "{",
            "  if (msg->%s_set != 1)" % name,
            "    return (-1);",
            "  *value = msg->%s_data;" % name,
            "  *plen = msg->%s_length;" % name,
            "  return (0);",
            "}",
        ]
        return code

    def CodeUnmarshal(self, buf, tag_name, var_name, var_len):
        code = [
            "if (evtag_payload_length(%(buf)s, &%(varlen)s) == -1)",
            "  return (-1);",
            # We do not want DoS opportunities
            "if (%(varlen)s > evbuffer_get_length(%(buf)s))",
            "  return (-1);",
            "if ((%(var)s = malloc(%(varlen)s)) == NULL)",
            "  return (-1);",
            "if (evtag_unmarshal_fixed(%(buf)s, %(tag)s, %(var)s, "
            "%(varlen)s) == -1) {",
            '  event_warnx("%%s: failed to unmarshal %(name)s", __func__);',
            "  return (-1);",
            "}",
        ]
        code = "\n".join(code) % self.GetTranslation(
            {"buf": buf, "tag": tag_name, "var": var_name, "varlen": var_len}
        )
        return code.split("\n")

    @staticmethod
    def CodeMarshal(buf, tag_name, var_name, var_len):
        code = ["evtag_marshal(%s, %s, %s, %s);" % (buf, tag_name, var_name, var_len)]
        return code

    def CodeClear(self, structname):
        code = [
            "if (%s->%s_set == 1) {" % (structname, self.Name()),
            "  free (%s->%s_data);" % (structname, self.Name()),
            "  %s->%s_data = NULL;" % (structname, self.Name()),
            "  %s->%s_length = 0;" % (structname, self.Name()),
            "  %s->%s_set = 0;" % (structname, self.Name()),
            "}",
        ]

        return code

    def CodeInitialize(self, name):
        code = [
            "%s->%s_data = NULL;" % (name, self._name),
            "%s->%s_length = 0;" % (name, self._name),
        ]
        return code

    def CodeFree(self, name):
        code = [
            "if (%s->%s_data != NULL)" % (name, self._name),
            "    free(%s->%s_data);" % (name, self._name),
        ]

        return code

    def Declaration(self):
        dcl = [
            "ev_uint8_t *%s_data;" % self._name,
            "ev_uint32_t %s_length;" % self._name,
        ]

        return dcl


class EntryArray(Entry):
    _index = None

    def __init__(self, entry):
        # Init base class
        super(EntryArray, self).__init__(entry._type, entry._name, entry._tag)

        self._entry = entry
        self._refname = entry._refname
        self._ctype = self._entry._ctype
        self._optional = True
        self._optpointer = self._entry._optpointer
        self._optaddarg = self._entry._optaddarg

        # provide a new function for accessing the variable name
        def GetVarName(var_name):
            return "%(var)s->%(name)s_data[%(index)s]" % self._entry.GetTranslation(
                {"var": var_name, "index": self._index}
            )

        self._entry.GetVarName = GetVarName

    def GetInitializer(self):
        return "NULL"

    def GetVarName(self, var):
        return var

    def GetVarLen(self, _var_name):
        return "-1"

    def GetDeclaration(self, funcname):
        """Allows direct access to elements of the array."""
        code = [
            "int %(funcname)s(struct %(parent_name)s *, int, %(ctype)s *);"
            % self.GetTranslation({"funcname": funcname})
        ]
        return code

    def AssignDeclaration(self, funcname):
        code = [
            "int %s(struct %s *, int, const %s);"
            % (funcname, self._struct.Name(), self._ctype)
        ]
        return code

    def AddDeclaration(self, funcname):
        code = [
            "%(ctype)s %(optpointer)s "
            "%(funcname)s(struct %(parent_name)s *msg%(optaddarg)s);"
            % self.GetTranslation({"funcname": funcname})
        ]
        return code

    def CodeGet(self):
        code = """int
%(parent_name)s_%(name)s_get(struct %(parent_name)s *msg, int offset,
    %(ctype)s *value)
{
  if (!msg->%(name)s_set || offset < 0 || offset >= msg->%(name)s_length)
    return (-1);
  *value = msg->%(name)s_data[offset];
  return (0);
}
""" % (
            self.GetTranslation()
        )

        return code.splitlines()

    def CodeAssign(self):
        code = [
            "int",
            "%(parent_name)s_%(name)s_assign(struct %(parent_name)s *msg, int off,",
            "  const %(ctype)s value)",
            "{",
            "  if (!msg->%(name)s_set || off < 0 || off >= msg->%(name)s_length)",
            "    return (-1);",
            "",
            "  {",
        ]
        code = TranslateList(code, self.GetTranslation())

        codearrayassign = self._entry.CodeArrayAssign(
            "msg->%(name)s_data[off]" % self.GetTranslation(), "value"
        )
        code += ["    " + x for x in codearrayassign]

        code += TranslateList(["  }", "  return (0);", "}"], self.GetTranslation())

        return code

    def CodeAdd(self):
        codearrayadd = self._entry.CodeArrayAdd(
            "msg->%(name)s_data[msg->%(name)s_length - 1]" % self.GetTranslation(),
            "value",
        )
        code = [
            "static int",
            "%(parent_name)s_%(name)s_expand_to_hold_more("
            "struct %(parent_name)s *msg)",
            "{",
            "  int tobe_allocated = msg->%(name)s_num_allocated;",
            "  %(ctype)s* new_data = NULL;",
            "  tobe_allocated = !tobe_allocated ? 1 : tobe_allocated << 1;",
            "  new_data = (%(ctype)s*) realloc(msg->%(name)s_data,",
            "      tobe_allocated * sizeof(%(ctype)s));",
            "  if (new_data == NULL)",
            "    return -1;",
            "  msg->%(name)s_data = new_data;",
            "  msg->%(name)s_num_allocated = tobe_allocated;",
            "  return 0;",
            "}",
            "",
            "%(ctype)s %(optpointer)s",
            "%(parent_name)s_%(name)s_add(struct %(parent_name)s *msg%(optaddarg)s)",
            "{",
            "  if (++msg->%(name)s_length >= msg->%(name)s_num_allocated) {",
            "    if (%(parent_name)s_%(name)s_expand_to_hold_more(msg)<0)",
            "      goto error;",
            "  }",
        ]

        code = TranslateList(code, self.GetTranslation())

        code += ["  " + x for x in codearrayadd]

        code += TranslateList(
            [
                "  msg->%(name)s_set = 1;",
                "  return %(optreference)s(msg->%(name)s_data["
                "msg->%(name)s_length - 1]);",
                "error:",
                "  --msg->%(name)s_length;",
                "  return (NULL);",
                "}",
            ],
            self.GetTranslation(),
        )

        return code

    def CodeComplete(self, structname, var_name):
        self._index = "i"
        tmp = self._entry.CodeComplete(structname, self._entry.GetVarName(var_name))
        # skip the whole loop if there is nothing to check
        if not tmp:
            return []

        translate = self.GetTranslation({"structname": structname})
        code = [
            "{",
            "  int i;",
            "  for (i = 0; i < %(structname)s->%(name)s_length; ++i) {",
        ]

        code = TranslateList(code, translate)

        code += ["    " + x for x in tmp]

        code += ["  }", "}"]

        return code

    def CodeUnmarshal(self, buf, tag_name, var_name, _var_len):
        translate = self.GetTranslation(
            {
                "var": var_name,
                "buf": buf,
                "tag": tag_name,
                "init": self._entry.GetInitializer(),
            }
        )
        code = [
            "if (%(var)s->%(name)s_length >= %(var)s->%(name)s_num_allocated &&",
            "    %(parent_name)s_%(name)s_expand_to_hold_more(%(var)s) < 0) {",
            '  puts("HEY NOW");',
            "  return (-1);",
            "}",
        ]

        # the unmarshal code directly returns
        code = TranslateList(code, translate)

        self._index = "%(var)s->%(name)s_length" % translate
        code += self._entry.CodeUnmarshal(
            buf,
            tag_name,
            self._entry.GetVarName(var_name),
            self._entry.GetVarLen(var_name),
        )

        code += ["++%(var)s->%(name)s_length;" % translate]

        return code

    def CodeMarshal(self, buf, tag_name, var_name, _var_len):
        code = ["{", "  int i;", "  for (i = 0; i < %(var)s->%(name)s_length; ++i) {"]

        self._index = "i"
        code += self._entry.CodeMarshal(
            buf,
            tag_name,
            self._entry.GetVarName(var_name),
            self._entry.GetVarLen(var_name),
        )
        code += ["  }", "}"]

        code = "\n".join(code) % self.GetTranslation({"var": var_name})

        return code.split("\n")

    def CodeClear(self, structname):
        translate = self.GetTranslation({"structname": structname})
        codearrayfree = self._entry.CodeArrayFree(
            "%(structname)s->%(name)s_data[i]"
            % self.GetTranslation({"structname": structname})
        )

        code = ["if (%(structname)s->%(name)s_set == 1) {"]

        if codearrayfree:
            code += [
                "  int i;",
                "  for (i = 0; i < %(structname)s->%(name)s_length; ++i) {",
            ]

        code = TranslateList(code, translate)

        if codearrayfree:
            code += ["    " + x for x in codearrayfree]
            code += ["  }"]

        code += TranslateList(
            [
                "  free(%(structname)s->%(name)s_data);",
                "  %(structname)s->%(name)s_data = NULL;",
                "  %(structname)s->%(name)s_set = 0;",
                "  %(structname)s->%(name)s_length = 0;",
                "  %(structname)s->%(name)s_num_allocated = 0;",
                "}",
            ],
            translate,
        )

        return code

    def CodeInitialize(self, name):
        code = [
            "%s->%s_data = NULL;" % (name, self._name),
            "%s->%s_length = 0;" % (name, self._name),
            "%s->%s_num_allocated = 0;" % (name, self._name),
        ]
        return code

    def CodeFree(self, structname):
        code = self.CodeClear(structname)

        code += TranslateList(
            ["free(%(structname)s->%(name)s_data);"],
            self.GetTranslation({"structname": structname}),
        )

        return code

    def Declaration(self):
        dcl = [
            "%s *%s_data;" % (self._ctype, self._name),
            "int %s_length;" % self._name,
            "int %s_num_allocated;" % self._name,
        ]

        return dcl


def NormalizeLine(line):

    line = CPPCOMMENT_RE.sub("", line)
    line = line.strip()
    line = WHITESPACE_RE.sub(" ", line)

    return line


ENTRY_NAME_RE = re.compile(r"(?P<name>[^\[\]]+)(\[(?P<fixed_length>.*)\])?")
ENTRY_TAG_NUMBER_RE = re.compile(r"(0x)?\d+", re.I)


def ProcessOneEntry(factory, newstruct, entry):
    optional = False
    array = False
    entry_type = ""
    name = ""
    tag = ""
    tag_set = None
    separator = ""
    fixed_length = ""

    for token in entry.split(" "):
        if not entry_type:
            if not optional and token == "optional":
                optional = True
                continue

            if not array and token == "array":
                array = True
                continue

        if not entry_type:
            entry_type = token
            continue

        if not name:
            res = ENTRY_NAME_RE.match(token)
            if not res:
                raise RpcGenError(
                    r"""Cannot parse name: "%s" around line %d""" % (entry, LINE_COUNT)
                )
            name = res.group("name")
            fixed_length = res.group("fixed_length")
            continue

        if not separator:
            separator = token
            if separator != "=":
                raise RpcGenError(
                    r'''Expected "=" after name "%s" got "%s"''' % (name, token)
                )
            continue

        if not tag_set:
            tag_set = 1
            if not ENTRY_TAG_NUMBER_RE.match(token):
                raise RpcGenError(r'''Expected tag number: "%s"''' % (entry))
            tag = int(token, 0)
            continue

        raise RpcGenError(r'''Cannot parse "%s"''' % (entry))

    if not tag_set:
        raise RpcGenError(r'''Need tag number: "%s"''' % (entry))

    # Create the right entry
    if entry_type == "bytes":
        if fixed_length:
            newentry = factory.EntryBytes(entry_type, name, tag, fixed_length)
        else:
            newentry = factory.EntryVarBytes(entry_type, name, tag)
    elif entry_type == "int" and not fixed_length:
        newentry = factory.EntryInt(entry_type, name, tag)
    elif entry_type == "int64" and not fixed_length:
        newentry = factory.EntryInt(entry_type, name, tag, bits=64)
    elif entry_type == "string" and not fixed_length:
        newentry = factory.EntryString(entry_type, name, tag)
    else:
        res = STRUCT_REF_RE.match(entry_type)
        if res:
            # References another struct defined in our file
            newentry = factory.EntryStruct(entry_type, name, tag, res.group("name"))
        else:
            raise RpcGenError('Bad type: "%s" in "%s"' % (entry_type, entry))

    structs = []

    if optional:
        newentry.MakeOptional()
    if array:
        newentry.MakeArray()

    newentry.SetStruct(newstruct)
    newentry.SetLineCount(LINE_COUNT)
    newentry.Verify()

    if array:
        # We need to encapsulate this entry into a struct
        newentry = factory.EntryArray(newentry)
        newentry.SetStruct(newstruct)
        newentry.SetLineCount(LINE_COUNT)
        newentry.MakeArray()

    newstruct.AddEntry(newentry)

    return structs


def ProcessStruct(factory, data):
    tokens = data.split(" ")

    # First three tokens are: 'struct' 'name' '{'
    newstruct = factory.Struct(tokens[1])

    inside = " ".join(tokens[3:-1])

    tokens = inside.split(";")

    structs = []

    for entry in tokens:
        entry = NormalizeLine(entry)
        if not entry:
            continue

        # It's possible that new structs get defined in here
        structs.extend(ProcessOneEntry(factory, newstruct, entry))

    structs.append(newstruct)
    return structs


C_COMMENT_START = "/*"
C_COMMENT_END = "*/"

C_COMMENT_START_RE = re.compile(re.escape(C_COMMENT_START))
C_COMMENT_END_RE = re.compile(re.escape(C_COMMENT_END))

C_COMMENT_START_SUB_RE = re.compile(r"%s.*$" % (re.escape(C_COMMENT_START)))
C_COMMENT_END_SUB_RE = re.compile(r"%s.*$" % (re.escape(C_COMMENT_END)))

C_MULTILINE_COMMENT_SUB_RE = re.compile(
    r"%s.*?%s" % (re.escape(C_COMMENT_START), re.escape(C_COMMENT_END))
)
CPP_CONDITIONAL_BLOCK_RE = re.compile(r"#(if( |def)|endif)")
INCLUDE_RE = re.compile(r'#include (".+"|<.+>)')


def GetNextStruct(filep):
    global CPP_DIRECT
    global LINE_COUNT

    got_struct = False
    have_c_comment = False

    data = ""

    while True:
        line = filep.readline()
        if not line:
            break

        LINE_COUNT += 1
        line = line[:-1]

        if not have_c_comment and C_COMMENT_START_RE.search(line):
            if C_MULTILINE_COMMENT_SUB_RE.search(line):
                line = C_MULTILINE_COMMENT_SUB_RE.sub("", line)
            else:
                line = C_COMMENT_START_SUB_RE.sub("", line)
                have_c_comment = True

        if have_c_comment:
            if not C_COMMENT_END_RE.search(line):
                continue
            have_c_comment = False
            line = C_COMMENT_END_SUB_RE.sub("", line)

        line = NormalizeLine(line)

        if not line:
            continue

        if not got_struct:
            if INCLUDE_RE.match(line):
                CPP_DIRECT.append(line)
            elif CPP_CONDITIONAL_BLOCK_RE.match(line):
                CPP_DIRECT.append(line)
            elif PREPROCESSOR_DEF_RE.match(line):
                HEADER_DIRECT.append(line)
            elif not STRUCT_DEF_RE.match(line):
                raise RpcGenError("Missing struct on line %d: %s" % (LINE_COUNT, line))
            else:
                got_struct = True
                data += line
            continue

        # We are inside the struct
        tokens = line.split("}")
        if len(tokens) == 1:
            data += " " + line
            continue

        if tokens[1]:
            raise RpcGenError("Trailing garbage after struct on line %d" % LINE_COUNT)

        # We found the end of the struct
        data += " %s}" % tokens[0]
        break

    # Remove any comments, that might be in there
    data = re.sub(r"/\*.*\*/", "", data)

    return data


def Parse(factory, filep):
    """
    Parses the input file and returns C code and corresponding header file.
    """

    entities = []

    while 1:
        # Just gets the whole struct nicely formatted
        data = GetNextStruct(filep)

        if not data:
            break

        entities.extend(ProcessStruct(factory, data))

    return entities


class CCodeGenerator(object):
    def __init__(self):
        pass

    @staticmethod
    def GuardName(name):
        # Use the complete provided path to the input file, with all
        # non-identifier characters replaced with underscores, to
        # reduce the chance of a collision between guard macros.
        return "EVENT_RPCOUT_%s_" % (NONIDENT_RE.sub("_", name).upper())

    def HeaderPreamble(self, name):
        guard = self.GuardName(name)
        pre = """
/*
 * Automatically generated from %s
 */

#ifndef %s
#define %s

""" % (
            name,
            guard,
            guard,
        )

        if HEADER_DIRECT:
            for statement in HEADER_DIRECT:
                pre += "%s\n" % statement
            pre += "\n"

        pre += """
#include <event2/util.h> /* for ev_uint*_t */
#include <event2/rpc.h>
"""

        return pre

    def HeaderPostamble(self, name):
        guard = self.GuardName(name)
        return "#endif  /* %s */" % (guard)

    @staticmethod
    def BodyPreamble(name, header_file):
        global _NAME
        global _VERSION

        slash = header_file.rfind("/")
        if slash != -1:
            header_file = header_file[slash + 1 :]

        pre = """
/*
 * Automatically generated from %(name)s
 * by %(script_name)s/%(script_version)s.  DO NOT EDIT THIS FILE.
 */

#include <stdlib.h>
#include <string.h>
#include <assert.h>
#include <event2/event-config.h>
#include <event2/event.h>
#include <event2/buffer.h>
#include <event2/tag.h>

#if defined(EVENT__HAVE___func__)
# ifndef __func__
#  define __func__ __func__
# endif
#elif defined(EVENT__HAVE___FUNCTION__)
# define __func__ __FUNCTION__
#else
# define __func__ __FILE__
#endif

""" % {
            "name": name,
            "script_name": _NAME,
            "script_version": _VERSION,
        }

        for statement in CPP_DIRECT:
            pre += "%s\n" % statement

        pre += '\n#include "%s"\n\n' % header_file

        pre += "void event_warn(const char *fmt, ...);\n"
        pre += "void event_warnx(const char *fmt, ...);\n\n"

        return pre

    @staticmethod
    def HeaderFilename(filename):
        return ".".join(filename.split(".")[:-1]) + ".h"

    @staticmethod
    def CodeFilename(filename):
        return ".".join(filename.split(".")[:-1]) + ".gen.c"

    @staticmethod
    def Struct(name):
        return StructCCode(name)

    @staticmethod
    def EntryBytes(entry_type, name, tag, fixed_length):
        return EntryBytes(entry_type, name, tag, fixed_length)

    @staticmethod
    def EntryVarBytes(entry_type, name, tag):
        return EntryVarBytes(entry_type, name, tag)

    @staticmethod
    def EntryInt(entry_type, name, tag, bits=32):
        return EntryInt(entry_type, name, tag, bits)

    @staticmethod
    def EntryString(entry_type, name, tag):
        return EntryString(entry_type, name, tag)

    @staticmethod
    def EntryStruct(entry_type, name, tag, struct_name):
        return EntryStruct(entry_type, name, tag, struct_name)

    @staticmethod
    def EntryArray(entry):
        return EntryArray(entry)


class CommandLine(object):
    def __init__(self, argv=None):
        """Initialize a command-line to launch event_rpcgen, as if
           from a command-line with CommandLine(sys.argv).  If you're
           calling this directly, remember to provide a dummy value
           for sys.argv[0]
        """
        global QUIETLY

        self.filename = None
        self.header_file = None
        self.impl_file = None
        self.factory = CCodeGenerator()

        parser = argparse.ArgumentParser(
            usage="%(prog)s [options] rpc-file [[h-file] c-file]"
        )
        parser.add_argument("--quiet", action="store_true", default=False)
        parser.add_argument("rpc_file", type=argparse.FileType("r"))

        args, extra_args = parser.parse_known_args(args=argv)

        QUIETLY = args.quiet

        if extra_args:
            if len(extra_args) == 1:
                self.impl_file = extra_args[0].replace("\\", "/")
            elif len(extra_args) == 2:
                self.header_file = extra_args[0].replace("\\", "/")
                self.impl_file = extra_args[1].replace("\\", "/")
            else:
                parser.error("Spurious arguments provided")

        self.rpc_file = args.rpc_file

        if not self.impl_file:
            self.impl_file = self.factory.CodeFilename(self.rpc_file.name)

        if not self.header_file:
            self.header_file = self.factory.HeaderFilename(self.impl_file)

        if not self.impl_file.endswith(".c"):
            parser.error("can only generate C implementation files")
        if not self.header_file.endswith(".h"):
            parser.error("can only generate C header files")

    def run(self):
        filename = self.rpc_file.name
        header_file = self.header_file
        impl_file = self.impl_file
        factory = self.factory

        declare('Reading "%s"' % filename)

        with self.rpc_file:
            entities = Parse(factory, self.rpc_file)

        declare('... creating "%s"' % header_file)
        with open(header_file, "w") as header_fp:
            header_fp.write(factory.HeaderPreamble(filename))

            # Create forward declarations: allows other structs to reference
            # each other
            for entry in entities:
                entry.PrintForwardDeclaration(header_fp)
            header_fp.write("\n")

            for entry in entities:
                entry.PrintTags(header_fp)
                entry.PrintDeclaration(header_fp)
            header_fp.write(factory.HeaderPostamble(filename))

        declare('... creating "%s"' % impl_file)
        with open(impl_file, "w") as impl_fp:
            impl_fp.write(factory.BodyPreamble(filename, header_file))
            for entry in entities:
                entry.PrintCode(impl_fp)


def main(argv=None):
    try:
        CommandLine(argv=argv).run()
        return 0
    except RpcGenError as e:
        sys.stderr.write(e)
    except EnvironmentError as e:
        if e.filename and e.strerror:
            sys.stderr.write("%s: %s" % (e.filename, e.strerror))
        elif e.strerror:
            sys.stderr.write(e.strerror)
        else:
            raise
    return 1


if __name__ == "__main__":
    sys.exit(main(argv=sys.argv[1:]))

Current_dir [ 𝗡𝗢𝗧 𝗪𝗥𝗜𝗧𝗘𝗔𝗕𝗟𝗘 ] Document_root [ 𝗪𝗥𝗜𝗧𝗘𝗔𝗕𝗟𝗘 ]

Current_dir [ 𝗡𝗢𝗧 𝗪𝗥𝗜𝗧𝗘𝗔𝗕𝗟𝗘 ] Document_root [ 𝗪𝗥𝗜𝗧𝗘𝗔𝗕𝗟𝗘 ]


[ Back ]
𝗡𝗔𝗠𝗘
𝗦𝗜𝗭𝗘
𝗟𝗔𝗦𝗧 𝗧𝗢𝗨𝗖𝗛
𝗨𝗦𝗘𝗥
𝗦𝗧𝗔𝗧𝗨𝗦
𝗙𝗨𝗡𝗖𝗧𝗜𝗢𝗡𝗦
..
--
20 Aug 2026 6.54 PM
root / root
0755
2to3
0.093 KB
12 Aug 2026 3.51 PM
root / root
0755
7z
639.227 KB
1 Jul 2026 5.24 PM
root / root
0755
7za
1.53 MB
1 Jul 2026 5.24 PM
root / root
0755
GET
15.82 KB
25 Mar 2022 8.00 AM
root / root
0755
HEAD
15.82 KB
25 Mar 2022 8.00 AM
root / root
0755
Mail
1013.25 KB
17 Dec 2025 11.27 AM
root / root
0755
POST
15.82 KB
25 Mar 2022 8.00 AM
root / root
0755
[
51.633 KB
10 Sep 2026 5.32 PM
root / root
0755
ab
81.461 KB
8 Sep 2026 10.56 PM
root / root
0755
aclocal
35.523 KB
27 Sep 2023 12.16 PM
root / root
0755
aclocal-1.16
35.523 KB
27 Sep 2023 12.16 PM
root / root
0755
acyclic
15.297 KB
3 Apr 2024 11.16 AM
root / root
0755
addr2line
27.742 KB
4 Apr 2026 9.15 PM
root / root
0755
alias
0.032 KB
30 Apr 2024 2.33 PM
root / root
0755
animate
15.094 KB
22 Jul 2026 8.31 AM
root / root
0755
appstream-compose
31.469 KB
13 Jun 2024 8.53 AM
root / root
0755
appstream-util
116.57 KB
13 Jun 2024 8.53 AM
root / root
0755
apropos
48.523 KB
21 Sep 2025 12.57 PM
root / root
0755
apropos.man-db
48.523 KB
21 Sep 2025 12.57 PM
root / root
0755
ar
55.984 KB
4 Apr 2026 9.15 PM
root / root
0755
arch
31.469 KB
10 Sep 2026 5.32 PM
root / root
0755
aria_chk
5.36 MB
19 Aug 2026 10.03 AM
root / root
0755
aria_dump_log
5.17 MB
19 Aug 2026 10.03 AM
root / root
0755
aria_ftdump
5.18 MB
19 Aug 2026 10.03 AM
root / root
0755
aria_pack
5.2 MB
19 Aug 2026 10.03 AM
root / root
0755
aria_read_log
5.32 MB
19 Aug 2026 10.03 AM
root / root
0755
arpaname
15.109 KB
13 Aug 2026 11.36 AM
root / root
0755
arping
27.25 KB
20 Oct 2025 12.44 PM
root / root
0755
as
710.313 KB
4 Apr 2026 9.15 PM
root / root
0755
aserver
39.469 KB
31 Mar 2026 10.28 AM
root / root
0755
aspell
151.117 KB
26 Jan 2022 9.47 PM
root / root
0755
at
55.492 KB
12 Nov 2025 12.38 AM
root / root
0755
atq
55.492 KB
12 Nov 2025 12.38 AM
root / root
0755
atrm
55.492 KB
12 Nov 2025 12.38 AM
root / root
0755
attr
15.133 KB
26 Aug 2026 4.52 PM
root / root
0755
audit2allow
14.711 KB
5 Apr 2026 11.05 AM
root / root
0755
audit2why
14.711 KB
5 Apr 2026 11.05 AM
root / root
0755
aulast
19.203 KB
4 Apr 2026 8.12 PM
root / root
0755
aulastlog
15.125 KB
4 Apr 2026 8.12 PM
root / root
0755
ausyscall
15.117 KB
4 Apr 2026 8.12 PM
root / root
0755
authselect
43.68 KB
12 Mar 2025 2.22 PM
root / root
0755
autoconf
14.425 KB
21 Sep 2025 12.23 PM
root / root
0755
autoheader
8.334 KB
21 Sep 2025 12.23 PM
root / root
0755
autom4te
31.427 KB
21 Sep 2025 12.23 PM
root / root
0755
automake
251.935 KB
27 Sep 2023 12.16 PM
root / root
0755
automake-1.16
251.935 KB
27 Sep 2023 12.16 PM
root / root
0755
autopoint
26.364 KB
27 Sep 2023 6.51 AM
root / root
0755
autoreconf
20.572 KB
21 Sep 2025 12.23 PM
root / root
0755
autoscan
16.723 KB
21 Sep 2025 12.23 PM
root / root
0755
autoupdate
33.078 KB
21 Sep 2025 12.23 PM
root / root
0755
auvirt
35.305 KB
4 Apr 2026 8.12 PM
root / root
0755
avinfo
23.367 KB
26 Aug 2026 12.13 PM
root / root
0755
awk
698.172 KB
30 Mar 2022 10.25 PM
root / root
0755
b2sum
51.594 KB
10 Sep 2026 5.32 PM
root / root
0755
base32
35.492 KB
10 Sep 2026 5.32 PM
root / root
0755
base64
35.492 KB
10 Sep 2026 5.32 PM
root / root
0755
basename
31.484 KB
10 Sep 2026 5.32 PM
root / root
0755
basenc
47.828 KB
10 Sep 2026 5.32 PM
root / root
0755
bash
1.32 MB
30 Apr 2024 2.33 PM
root / root
0755
bashbug
6.913 KB
30 Apr 2024 2.33 PM
root / root
0755
bashbug-64
6.913 KB
30 Apr 2024 2.33 PM
root / root
0755
batch
0.137 KB
12 Nov 2025 12.38 AM
root / root
0755
bc
89.242 KB
26 Jan 2022 8.50 PM
root / root
0755
bcomps
23.367 KB
3 Apr 2024 11.16 AM
root / root
0755
bg
0.029 KB
30 Apr 2024 2.33 PM
root / root
0755
bison
494.758 KB
27 Jan 2022 12.15 AM
root / root
0755
bluemoon
43.758 KB
26 Aug 2026 12.13 PM
root / root
0755
bluetoothctl
634.234 KB
26 Aug 2026 12.13 PM
root / root
0755
bond2team
22.747 KB
20 Jul 2020 10.00 AM
root / root
0755
bootconfig
30.289 KB
11 Sep 2026 1.34 PM
root / root
0755
bootctl
100.539 KB
25 Jun 2026 12.28 AM
root / root
0755
brotli
753.297 KB
5 Feb 2026 11.07 AM
root / root
0755
bsqldb
35.289 KB
11 Aug 2026 8.13 PM
root / root
0755
bsqlodbc
31.188 KB
11 Aug 2026 8.13 PM
root / root
0755
btattach
31.516 KB
26 Aug 2026 12.13 PM
root / root
0755
btmgmt
194.242 KB
26 Aug 2026 12.13 PM
root / root
0755
btmon
1.19 MB
26 Aug 2026 12.13 PM
root / root
0755
bunzip2
39.445 KB
4 Apr 2026 9.34 PM
root / root
0755
busctl
100.156 KB
25 Jun 2026 12.28 AM
root / root
0755
bwrap
72.219 KB
21 Sep 2025 1.44 PM
root / root
0755
bzcat
39.445 KB
4 Apr 2026 9.34 PM
root / root
0755
bzcmp
2.094 KB
4 Apr 2026 9.34 PM
root / root
0755
bzdiff
2.094 KB
4 Apr 2026 9.34 PM
root / root
0755
bzegrep
2.01 KB
4 Apr 2026 9.34 PM
root / root
0755
bzfgrep
2.01 KB
4 Apr 2026 9.34 PM
root / root
0755
bzgrep
2.01 KB
4 Apr 2026 9.34 PM
root / root
0755
bzip2
39.445 KB
4 Apr 2026 9.34 PM
root / root
0755
bzip2recover
15.227 KB
4 Apr 2026 9.34 PM
root / root
0755
bzless
1.233 KB
4 Apr 2026 9.34 PM
root / root
0755
bzmore
1.233 KB
4 Apr 2026 9.34 PM
root / root
0755
c++
1.05 MB
4 Apr 2026 10.27 PM
root / root
0755
c++filt
27.188 KB
4 Apr 2026 9.15 PM
root / root
0755
c89
0.223 KB
4 Apr 2026 10.18 PM
root / root
0755
c99
0.214 KB
4 Apr 2026 10.18 PM
root / root
0755
ca-legacy
1.609 KB
19 Nov 2025 9.34 AM
root / root
0755
cal
51.82 KB
4 Apr 2026 10.15 PM
root / root
0755
canberra-boot
19.07 KB
25 Sep 2023 7.08 PM
root / root
0755
canberra-gtk-play
19.18 KB
25 Sep 2023 7.08 PM
root / root
0755
captoinfo
87.789 KB
21 Sep 2025 9.23 AM
root / root
0755
cat
35.461 KB
10 Sep 2026 5.32 PM
root / root
0755
catchsegv
3.212 KB
3 Aug 2026 10.12 AM
root / root
0755
catman
35.859 KB
21 Sep 2025 12.57 PM
root / root
0755
cc
1.04 MB
4 Apr 2026 10.27 PM
root / root
0755
ccomps
27.469 KB
3 Apr 2024 11.16 AM
root / root
0755
cd
0.029 KB
30 Apr 2024 2.33 PM
root / root
0755
centrino-decode
14.125 KB
11 Sep 2026 1.34 PM
root / root
0755
certutil
172.594 KB
20 Aug 2026 2.11 AM
root / root
0755
chacl
19.148 KB
21 Jul 2026 3.58 PM
root / root
0755
chage
71.977 KB
8 Apr 2026 7.49 PM
root / root
4755
chattr
15.188 KB
21 Sep 2025 3.03 PM
root / root
0755
chcat
13.63 KB
5 Apr 2026 11.05 AM
root / root
0755
chcon
60.047 KB
10 Sep 2026 5.32 PM
root / root
0755
checkmodule
450.883 KB
3 Apr 2024 10.07 AM
root / root
0755
checkpolicy
527.523 KB
3 Apr 2024 10.07 AM
root / root
0755
checksctp
15.219 KB
30 Apr 2024 8.27 PM
root / root
0755
chfn
31.281 KB
4 Apr 2026 10.15 PM
root / root
4711
chgrp
55.977 KB
10 Sep 2026 5.32 PM
root / root
0755
chmem
35.398 KB
4 Apr 2026 10.15 PM
root / root
0755
chmod
55.961 KB
10 Sep 2026 5.32 PM
root / root
0755
choom
23.297 KB
4 Apr 2026 10.15 PM
root / root
0755
chown
59.992 KB
10 Sep 2026 5.32 PM
root / root
0755
chronyc
104.742 KB
9 Apr 2026 12.49 AM
root / root
0755
chrt
27.305 KB
4 Apr 2026 10.15 PM
root / root
0755
chsh
23.227 KB
4 Apr 2026 10.15 PM
root / root
0711
chvt
15.18 KB
20 Aug 2026 6.48 PM
root / root
0755
cifsiostat
23.359 KB
15 Apr 2026 10.16 AM
root / root
0755
circo
15.234 KB
3 Apr 2024 11.16 AM
root / root
0755
cksum
31.383 KB
10 Sep 2026 5.32 PM
root / root
0755
clear
15.148 KB
21 Sep 2025 9.23 AM
root / root
0755
clockdiff
23.195 KB
20 Oct 2025 12.44 PM
root / root
0755
cluster
47.695 KB
3 Apr 2024 11.16 AM
root / root
0755
cmp
40.133 KB
29 Jan 2022 6.15 PM
root / root
0755
cmsutil
47.359 KB
20 Aug 2026 2.11 AM
root / root
0755
col
23.234 KB
4 Apr 2026 10.15 PM
root / root
0755
colcrt
15.188 KB
4 Apr 2026 10.15 PM
root / root
0755
colrm
15.164 KB
4 Apr 2026 10.15 PM
root / root
0755
column
35.336 KB
4 Apr 2026 10.15 PM
root / root
0755
comm
35.555 KB
10 Sep 2026 5.32 PM
root / root
0755
command
0.034 KB
30 Apr 2024 2.33 PM
root / root
0755
compare
15.094 KB
22 Jul 2026 8.31 AM
root / root
0755
compile_et
1.314 KB
21 Sep 2025 3.02 PM
root / root
0755
composite
15.094 KB
22 Jul 2026 8.31 AM
root / root
0755
config_data
6.971 KB
16 Feb 2022 11.46 AM
root / root
0755
conjure
15.102 KB
22 Jul 2026 8.31 AM
root / root
0755
convert
15.102 KB
22 Jul 2026 8.31 AM
root / root
0755
coredumpctl
59.844 KB
25 Jun 2026 12.28 AM
root / root
0755
corelist
14.921 KB
12 Mar 2025 11.43 PM
root / root
0755
cp
141.016 KB
10 Sep 2026 5.32 PM
root / root
0755
cpan
8.37 KB
13 May 2025 9.00 PM
root / root
0755
cpan-mirrors
4.188 KB
13 May 2025 9.00 PM
root / root
0755
cpansign
1.984 KB
29 Mar 2022 9.13 PM
root / root
0755
cpapi1
3.32 MB
18 Aug 2026 4.57 AM
root / root
0755
cpapi2
3.32 MB
18 Aug 2026 4.57 AM
root / root
0755
cpapi3
3.32 MB
18 Aug 2026 4.57 AM
root / root
0755
cpio
145.523 KB
29 Jan 2022 8.51 PM
root / root
0755
cpp
1.05 MB
4 Apr 2026 10.27 PM
root / root
0755
cpupower
80.016 KB
11 Sep 2026 1.33 PM
root / root
0755
crb
2.592 KB
23 Jun 2026 10.05 PM
root / root
0744
crc32
1.019 KB
24 Mar 2022 10.30 PM
root / root
0755
crlutil
91.992 KB
20 Aug 2026 2.11 AM
root / root
0755
cronnext
39.75 KB
9 Apr 2026 5.59 AM
root / root
0755
crontab
55.773 KB
9 Apr 2026 5.59 AM
root / root
4755
csplit
108.664 KB
10 Sep 2026 5.32 PM
root / root
0755
curl
248.484 KB
17 Aug 2026 8.54 AM
root / root
0755
cut
43.609 KB
10 Sep 2026 5.32 PM
root / root
0755
cvtsudoers
352.227 KB
21 May 2026 1.23 AM
root / root
0755
cxpm
27.414 KB
1 Apr 2024 6.32 PM
root / root
0755
cyrusbdb2current
1.58 MB
25 Sep 2025 11.46 AM
root / root
0755
datacopy
31.242 KB
11 Aug 2026 8.13 PM
root / root
0755
date
103.844 KB
10 Sep 2026 5.32 PM
root / root
0755
dbilogstrip
1.348 KB
9 Sep 2026 9.31 PM
root / root
0755
dbiprof
6.061 KB
9 Sep 2026 9.31 PM
root / root
0755
dbus-broker
230.828 KB
31 Aug 2026 4.10 PM
root / root
0755
dbus-broker-launch
128.813 KB
31 Aug 2026 4.10 PM
root / root
0755
dbus-monitor
27.266 KB
26 Sep 2023 9.51 PM
root / root
0755
dbus-send
27.219 KB
26 Sep 2023 9.51 PM
root / root
0755
dbus-update-activation-environment
15.172 KB
26 Sep 2023 9.51 PM
root / root
0755
dbus-uuidgen
15.141 KB
26 Sep 2023 9.51 PM
root / root
0755
dbxtool
23.336 KB
13 Apr 2026 8.36 AM
root / root
0755
dc
48.422 KB
26 Jan 2022 8.50 PM
root / root
0755
dconf
64.711 KB
29 Jan 2022 7.03 PM
root / root
0755
dd
67.945 KB
10 Sep 2026 5.32 PM
root / root
0755
deallocvt
15.188 KB
20 Aug 2026 6.48 PM
root / root
0755
debuginfo-install
3.604 KB
15 Apr 2026 12.44 PM
root / root
0755
debuginfod-find
19.273 KB
5 Apr 2026 12.39 AM
root / root
0755
defncopy
31.266 KB
11 Aug 2026 8.13 PM
root / root
0755
delv
45.383 KB
13 Aug 2026 11.36 AM
root / root
0755
df
80.531 KB
10 Sep 2026 5.32 PM
root / root
0755
diff
194.695 KB
29 Jan 2022 6.15 PM
root / root
0755
diff3
52.305 KB
29 Jan 2022 6.15 PM
root / root
0755
diffimg
15.258 KB
3 Apr 2024 11.16 AM
root / root
0755
dig
136.594 KB
13 Aug 2026 11.36 AM
root / root
0755
dijkstra
19.438 KB
3 Apr 2024 11.16 AM
root / root
0755
dir
137.453 KB
10 Sep 2026 5.32 PM
root / root
0755
dircolors
39.617 KB
10 Sep 2026 5.32 PM
root / root
0755
dirmngr
439.969 KB
15 Jan 2026 9.34 PM
root / root
0755
dirmngr-client
56.125 KB
15 Jan 2026 9.34 PM
root / root
0755
dirname
27.297 KB
10 Sep 2026 5.32 PM
root / root
0755
display
15.094 KB
22 Jul 2026 8.31 AM
root / root
0755
distro
0.931 KB
25 Mar 2022 7.52 AM
root / root
0755
dltest
15.102 KB
9 Sep 2026 8.12 AM
root / root
0755
dmesg
71.773 KB
4 Apr 2026 10.15 PM
root / root
0755
dnf
2.045 KB
20 May 2026 7.48 PM
root / root
0755
dnf-3
2.045 KB
20 May 2026 7.48 PM
root / root
0755
dnf4
2.045 KB
20 May 2026 7.48 PM
root / root
0755
dnsdomainname
23.836 KB
14 Feb 2022 11.22 AM
root / root
0755
dnstap-read
23.188 KB
13 Aug 2026 11.36 AM
root / root
0755
domainname
23.836 KB
14 Feb 2022 11.22 AM
root / root
0755
dot
15.234 KB
3 Apr 2024 11.16 AM
root / root
0755
dot2gxl
39.93 KB
3 Apr 2024 11.16 AM
root / root
0755
dotty
2.04 KB
3 Apr 2024 11.16 AM
root / root
0755
doveadm
820.766 KB
31 Aug 2026 4.03 PM
root / root
0755
doveconf
375.242 KB
31 Aug 2026 4.03 PM
root / root
0755
dovecot-sysreport
6.28 KB
31 Aug 2026 4.01 PM
root / root
0755
dpkg
320.523 KB
23 Mar 2026 1.44 PM
root / root
0755
dpkg-deb
153.711 KB
23 Mar 2026 1.44 PM
root / root
0755
dpkg-divert
129.773 KB
23 Mar 2026 1.44 PM
root / root
0755
dpkg-maintscript-helper
20.633 KB
23 Mar 2026 1.44 PM
root / root
0755
dpkg-query
146.164 KB
23 Mar 2026 1.44 PM
root / root
0755
dpkg-realpath
35.633 KB
23 Mar 2026 1.44 PM
root / root
0755
dpkg-split
104.758 KB
23 Mar 2026 1.44 PM
root / root
0755
dpkg-statoverride
56.055 KB
23 Mar 2026 1.44 PM
root / root
0755
dpkg-trigger
48.078 KB
23 Mar 2026 1.44 PM
root / root
0755
dracut
98.552 KB
14 Aug 2026 12.41 AM
root / root
0755
dtrace
17.379 KB
4 Apr 2026 9.42 PM
root / root
0755
du
149.266 KB
10 Sep 2026 5.32 PM
root / root
0755
dumpkeys
163.867 KB
20 Aug 2026 6.48 PM
root / root
0755
dwp
851.594 KB
4 Apr 2026 9.15 PM
root / root
0755
dwz
227.992 KB
21 Sep 2025 2.45 PM
root / root
0755
ea-php82
10.88 MB
4 Aug 2026 11.08 PM
root / root
0755
ea-php82-pear
0.374 KB
4 Aug 2026 11.26 PM
root / root
0755
ea-php82-pecl
0.292 KB
4 Aug 2026 11.26 PM
root / root
0755
ea-php83
10.93 MB
4 Aug 2026 11.15 PM
root / root
0755
ea-php83-pear
0.374 KB
4 Aug 2026 11.27 PM
root / root
0755
ea-php83-pecl
0.292 KB
4 Aug 2026 11.27 PM
root / root
0755
ea-wappspector
0.102 KB
18 May 2026 7.31 PM
root / root
0755
echo
27.289 KB
10 Sep 2026 5.32 PM
root / root
0755
ed
52.508 KB
30 Jan 2022 5.02 AM
root / root
0755
edgepaint
2.46 MB
3 Apr 2024 11.16 AM
root / root
0755
egrep
0.031 KB
31 Jan 2022 8.22 PM
root / root
0755
eject
43.609 KB
4 Apr 2026 10.15 PM
root / root
0755
elfedit
35.836 KB
4 Apr 2026 9.15 PM
root / root
0755
enc2xs
40.687 KB
11 Feb 2022 4.42 PM
root / root
0755
encguess
2.919 KB
11 Feb 2022 4.42 PM
root / root
0755
env
44.031 KB
10 Sep 2026 5.32 PM
root / root
0755
envml
4.106 KB
14 May 2023 5.11 PM
root / root
0755
envsubst
35.391 KB
27 Sep 2023 6.53 AM
root / root
0755
eps2eps
0.628 KB
14 May 2025 4.03 PM
root / root
0755
eqn
189.516 KB
1 Feb 2022 10.44 AM
root / root
0755
event_rpcgen.py
53.648 KB
5 Jul 2020 12.01 PM
root / root
0755
evmctl
69.594 KB
21 Sep 2025 9.11 AM
root / root
0755
ex
1.38 MB
10 Sep 2026 5.27 PM
root / root
0755
exempi
28.18 KB
30 Jan 2022 11.19 PM
root / root
0755
exiv2
199.82 KB
14 Apr 2022 10.43 AM
root / root
0755
expand
39.539 KB
10 Sep 2026 5.32 PM
root / root
0755
expr
108.438 KB
10 Sep 2026 5.32 PM
root / root
0755
factor
71.867 KB
10 Sep 2026 5.32 PM
root / root
0755
fallocate
23.203 KB
4 Apr 2026 10.15 PM
root / root
0755
false
27.281 KB
10 Sep 2026 5.32 PM
root / root
0755
fc
0.029 KB
30 Apr 2024 2.33 PM
root / root
0755
fc-cache
0.136 KB
23 Jan 2023 3.48 PM
root / root
0755
fc-cache-64
23.172 KB
23 Jan 2023 7.48 PM
root / root
0755
fc-cat
19.156 KB
23 Jan 2023 7.48 PM
root / root
0755
fc-conflist
15.133 KB
23 Jan 2023 7.48 PM
root / root
0755
fc-list
15.133 KB
23 Jan 2023 7.48 PM
root / root
0755
fc-match
15.133 KB
23 Jan 2023 7.48 PM
root / root
0755
fc-pattern
15.141 KB
23 Jan 2023 7.48 PM
root / root
0755
fc-query
15.133 KB
23 Jan 2023 7.48 PM
root / root
0755
fc-scan
15.141 KB
23 Jan 2023 7.48 PM
root / root
0755
fc-validate
15.141 KB
23 Jan 2023 7.48 PM
root / root
0755
fdp
15.234 KB
3 Apr 2024 11.16 AM
root / root
0755
fg
0.029 KB
30 Apr 2024 2.33 PM
root / root
0755
fgconsole
15.172 KB
20 Aug 2026 6.48 PM
root / root
0755
fgrep
0.031 KB
31 Jan 2022 8.22 PM
root / root
0755
filan
47.633 KB
12 Feb 2026 6.05 PM
root / root
0755
file
27.625 KB
5 Apr 2026 12.57 AM
root / root
0755
fincore
23.297 KB
4 Apr 2026 10.15 PM
root / root
0755
find
284.953 KB
2 Oct 2024 9.04 PM
root / root
0755
find-repos-of-install
3.604 KB
15 Apr 2026 12.44 PM
root / root
0755
findmnt
64.75 KB
4 Apr 2026 10.15 PM
root / root
0755
fio
1.64 MB
26 Sep 2023 10.57 PM
root / root
0755
fio-btrace2fio
31.406 KB
26 Sep 2023 10.57 PM
root / root
0755
fio-dedupe
56.07 KB
26 Sep 2023 10.57 PM
root / root
0755
fio-genzipf
35.453 KB
26 Sep 2023 10.57 PM
root / root
0755
fio-histo-log-pctiles.py
31.701 KB
23 May 2023 6.33 PM
root / root
0755
fio-verify-state
15.203 KB
26 Sep 2023 10.57 PM
root / root
0755
fio2gnuplot
21.727 KB
23 May 2023 6.33 PM
root / root
0755
fio_generate_plots
4.099 KB
23 May 2023 6.33 PM
root / root
0755
fio_jsonplus_clat2csv
12.914 KB
23 May 2023 6.33 PM
root / root
0755
fiologparser.py
7.078 KB
23 May 2023 6.33 PM
root / root
0755
fiologparser_hist.py
22.028 KB
23 May 2023 6.33 PM
root / root
0755
fips-finish-install
1.723 KB
24 Feb 2026 11.47 AM
root / root
0755
fips-mode-setup
8.021 KB
24 Feb 2026 11.47 AM
root / root
0755
firewall-cmd
140.242 KB
4 Aug 2026 8.19 PM
root / root
0755
firewall-offline-cmd
121.047 KB
4 Aug 2026 8.19 PM
root / root
0755
fisql
35.289 KB
11 Aug 2026 8.13 PM
root / root
0755
flatpak
1.77 MB
28 May 2026 9.34 PM
root / root
0755
flatpak-bisect
7.66 KB
17 Apr 2024 5.19 PM
root / root
0755
flatpak-coredumpctl
3.353 KB
17 Apr 2024 5.19 PM
root / root
0755
flex
412.641 KB
30 Jan 2022 8.23 AM
root / root
0755
flex++
412.641 KB
30 Jan 2022 8.23 AM
root / root
0755
flock
23.367 KB
4 Apr 2026 10.15 PM
root / root
0755
fmt
39.578 KB
10 Sep 2026 5.32 PM
root / root
0755
fold
39.508 KB
10 Sep 2026 5.32 PM
root / root
0755
free
23.359 KB
30 Apr 2024 4.43 PM
root / root
0755
freebcp
23.188 KB
11 Aug 2026 8.13 PM
root / root
0755
freetype-config
4.319 KB
31 Mar 2025 3.40 PM
root / root
0755
fribidi
28.586 KB
14 Oct 2022 5.30 PM
root / root
0755
ftp
100.656 KB
30 Jan 2022 11.49 PM
root / root
0755
funzip
31.25 KB
9 Apr 2026 11.24 AM
root / root
0755
fuse2fs
72.68 KB
21 Sep 2025 3.03 PM
root / root
0755
fusermount
35.516 KB
12 Mar 2025 7.30 PM
root / root
4755
fwupdmgr
157.016 KB
13 Apr 2026 8.36 AM
root / root
0755
fwupdtool
177.203 KB
13 Apr 2026 8.36 AM
root / root
0755
g++
1.05 MB
4 Apr 2026 10.27 PM
root / root
0755
g13
110.289 KB
15 Jan 2026 9.34 PM
root / root
0755
galera_new_cluster
1.242 KB
19 Aug 2026 9.01 AM
root / root
0755
galera_recovery
3.291 KB
19 Aug 2026 9.01 AM
root / root
0755
gapplication
23.211 KB
8 Sep 2026 9.56 AM
root / root
0755
garb-systemd
1.317 KB
22 May 2026 3.36 AM
root / root
0755
garbd
1.63 MB
22 May 2026 3.37 AM
root / root
0755
gawk
698.172 KB
30 Mar 2022 10.25 PM
root / root
0755
gc
19.391 KB
3 Apr 2024 11.16 AM
root / root
0755
gcc
1.04 MB
4 Apr 2026 10.27 PM
root / root
0755
gcc-ar
27.672 KB
4 Apr 2026 10.27 PM
root / root
0755
gcc-nm
27.648 KB
4 Apr 2026 10.27 PM
root / root
0755
gcc-ranlib
27.672 KB
4 Apr 2026 10.27 PM
root / root
0755
gcov
477.125 KB
4 Apr 2026 10.27 PM
root / root
0755
gcov-dump
291.766 KB
4 Apr 2026 10.28 PM
root / root
0755
gcov-tool
320.469 KB
4 Apr 2026 10.27 PM
root / root
0755
gdbm_dump
28.219 KB
2 Oct 2024 9.50 PM
root / root
0755
gdbm_load
36.477 KB
2 Oct 2024 9.50 PM
root / root
0755
gdbmtool
149.258 KB
2 Oct 2024 9.50 PM
root / root
0755
gdbus
51.5 KB
8 Sep 2026 9.56 AM
root / root
0755
gdbus-codegen
1.99 KB
8 Sep 2026 9.52 AM
root / root
0755
gdk-pixbuf-query-loaders-64
15.164 KB
21 May 2026 11.01 AM
root / root
0755
gdk-pixbuf-thumbnailer
19.148 KB
21 May 2026 11.01 AM
root / root
0755
gen_grub_cfgstub
0.645 KB
6 Apr 2026 12.55 PM
root / root
0700
gencat
27.445 KB
3 Aug 2026 10.14 AM
root / root
0755
genfio
8.631 KB
23 May 2023 6.33 PM
root / root
0755
genl-ctrl-list
15.477 KB
17 Mar 2025 12.12 PM
root / root
0755
geqn
189.516 KB
1 Feb 2022 10.44 AM
root / root
0755
getconf
35.234 KB
3 Aug 2026 10.14 AM
root / root
0755
getent
35.859 KB
3 Aug 2026 10.14 AM
root / root
0755
getfacl
31.281 KB
21 Jul 2026 3.58 PM
root / root
0755
getfattr
27.266 KB
26 Aug 2026 4.52 PM
root / root
0755
getkeycodes
15.164 KB
20 Aug 2026 6.48 PM
root / root
0755
getopt
23.266 KB
4 Apr 2026 10.15 PM
root / root
0755
getopts
0.034 KB
30 Apr 2024 2.33 PM
root / root
0755
gettext
35.352 KB
27 Sep 2023 6.53 AM
root / root
0755
gettext.sh
5.069 KB
27 Sep 2023 6.50 AM
root / root
0755
gettextize
41.246 KB
27 Sep 2023 6.51 AM
root / root
0755
ghostscript
15.125 KB
14 May 2025 4.03 PM
root / root
0755
gio
91.82 KB
8 Sep 2026 9.56 AM
root / root
0755
gio-querymodules-64
15.133 KB
8 Sep 2026 9.56 AM
root / root
0755
git
22.29 MB
9 Jul 2025 9.55 PM
root / root
0755
git-receive-pack
22.29 MB
9 Jul 2025 9.55 PM
root / root
0755
git-shell
6.26 MB
9 Jul 2025 9.55 PM
root / root
0755
git-upload-archive
22.29 MB
9 Jul 2025 9.55 PM
root / root
0755
git-upload-pack
22.29 MB
9 Jul 2025 9.55 PM
root / root
0755
glib-compile-resources
43.344 KB
8 Sep 2026 9.56 AM
root / root
0755
glib-compile-schemas
51.469 KB
8 Sep 2026 9.56 AM
root / root
0755
glib-genmarshal
40.142 KB
8 Sep 2026 9.52 AM
root / root
0755
glib-gettextize
5.264 KB
8 Sep 2026 9.52 AM
root / root
0755
glib-mkenums
30.075 KB
8 Sep 2026 9.52 AM
root / root
0755
gmake
249.797 KB
2 Apr 2024 12.55 PM
root / root
0755
gml2gv
47.781 KB
3 Apr 2024 11.16 AM
root / root
0755
gneqn
0.895 KB
1 Feb 2022 10.44 AM
root / root
0755
gnroff
3.208 KB
1 Feb 2022 10.44 AM
root / root
0755
gobject-query
15.164 KB
8 Sep 2026 9.56 AM
root / root
0755
gpasswd
76.188 KB
8 Apr 2026 7.49 PM
root / root
4755
gpg
1.07 MB
15 Jan 2026 9.34 PM
root / root
0755
gpg-agent
342.273 KB
15 Jan 2026 9.34 PM
root / root
0755
gpg-card
170.133 KB
15 Jan 2026 9.34 PM
root / root
0755
gpg-connect-agent
84.75 KB
15 Jan 2026 9.34 PM
root / root
0755
gpg-error
36.102 KB
9 Feb 2022 11.24 PM
root / root
0755
gpg-error-config
1.977 KB
9 Feb 2022 11.24 PM
root / root
0755
gpg-wks-client
129.547 KB
15 Jan 2026 9.34 PM
root / root
0755
gpg-wks-server
113.328 KB
15 Jan 2026 9.34 PM
root / root
0755
gpg2
1.07 MB
15 Jan 2026 9.34 PM
root / root
0755
gpgconf
100.984 KB
15 Jan 2026 9.34 PM
root / root
0755
gpgme-json
84.625 KB
30 Mar 2022 7.37 PM
root / root
0755
gpgparsemail
35.328 KB
15 Jan 2026 9.34 PM
root / root
0755
gpgrt-config
13.135 KB
9 Feb 2022 11.24 PM
root / root
0755
gpgsplit
27.5 KB
15 Jan 2026 9.34 PM
root / root
0755
gpgtar
64.867 KB
15 Jan 2026 9.34 PM
root / root
0755
gpgv
295.43 KB
15 Jan 2026 9.34 PM
root / root
0755
gpgv2
295.43 KB
15 Jan 2026 9.34 PM
root / root
0755
gpic
201.719 KB
1 Feb 2022 10.44 AM
root / root
0755
gpio-event-mon
18.125 KB
11 Sep 2026 1.34 PM
root / root
0755
gpio-hammer
14.117 KB
11 Sep 2026 1.34 PM
root / root
0755
gpio-watch
14.117 KB
11 Sep 2026 1.34 PM
root / root
0755
gprof
101.484 KB
4 Apr 2026 9.15 PM
root / root
0755
gr2fonttest
28 KB
31 Jan 2022 1.10 PM
root / root
0755
graphml2gv
23.547 KB
3 Apr 2024 11.16 AM
root / root
0755
grep
154.492 KB
31 Jan 2022 8.22 PM
root / root
0755
gresource
23.281 KB
8 Sep 2026 9.56 AM
root / root
0755
groff
96.766 KB
1 Feb 2022 10.44 AM
root / root
0755
grops
167.258 KB
1 Feb 2022 10.44 AM
root / root
0755
grotty
122.195 KB
1 Feb 2022 10.44 AM
root / root
0755
groups
35.477 KB
10 Sep 2026 5.32 PM
root / root
0755
grub2-editenv
486.734 KB
6 Apr 2026 12.55 PM
root / root
0755
grub2-file
1.11 MB
6 Apr 2026 12.55 PM
root / root
0755
grub2-fstest
1.67 MB
6 Apr 2026 12.55 PM
root / root
0755
grub2-glue-efi
301.344 KB
6 Apr 2026 12.55 PM
root / root
0755
grub2-kbdcomp
1.633 KB
6 Apr 2026 12.55 PM
root / root
0755
grub2-menulst2cfg
284.516 KB
6 Apr 2026 12.55 PM
root / root
0755
grub2-mkfont
334.023 KB
6 Apr 2026 12.55 PM
root / root
0755
grub2-mkimage
465.641 KB
6 Apr 2026 12.55 PM
root / root
0755
grub2-mklayout
311.445 KB
6 Apr 2026 12.55 PM
root / root
0755
grub2-mknetdir
532.594 KB
6 Apr 2026 12.55 PM
root / root
0755
grub2-mkpasswd-pbkdf2
314.008 KB
6 Apr 2026 12.55 PM
root / root
0755
grub2-mkrelpath
301.164 KB
6 Apr 2026 12.55 PM
root / root
0755
grub2-mkrescue
1.34 MB
6 Apr 2026 12.55 PM
root / root
0755
grub2-mkstandalone
636.961 KB
6 Apr 2026 12.55 PM
root / root
0755
grub2-mount
1.02 MB
6 Apr 2026 12.55 PM
root / root
0755
grub2-render-label
1.11 MB
6 Apr 2026 12.55 PM
root / root
0755
grub2-script-check
333.945 KB
6 Apr 2026 12.55 PM
root / root
0755
grub2-syslinux2cfg
1.04 MB
6 Apr 2026 12.55 PM
root / root
0755
gs
15.125 KB
14 May 2025 4.03 PM
root / root
0755
gsbj
0.346 KB
14 May 2025 4.03 PM
root / root
0755
gsdj
0.348 KB
14 May 2025 4.03 PM
root / root
0755
gsdj500
0.348 KB
14 May 2025 4.03 PM
root / root
0755
gsettings
31.383 KB
8 Sep 2026 9.56 AM
root / root
0755
gsf-office-thumbnailer
20.07 KB
9 Feb 2022 11.44 PM
root / root
0755
gslj
0.349 KB
14 May 2025 4.03 PM
root / root
0755
gslp
0.346 KB
14 May 2025 4.03 PM
root / root
0755
gsnd
0.274 KB
14 May 2025 4.03 PM
root / root
0755
gsoelim
32.18 KB
1 Feb 2022 10.44 AM
root / root
0755
gst-inspect-1.0
71.75 KB
13 Mar 2025 9.20 AM
root / root
0755
gst-launch-1.0
39.477 KB
13 Mar 2025 9.20 AM
root / root
0755
gst-stats-1.0
35.641 KB
13 Mar 2025 9.20 AM
root / root
0755
gst-typefind-1.0
19.336 KB
13 Mar 2025 9.20 AM
root / root
0755
gtar
522.289 KB
31 Aug 2026 2.49 PM
root / root
0755
gtbl
130.859 KB
1 Feb 2022 10.44 AM
root / root
0755
gtester
31.289 KB
8 Sep 2026 9.56 AM
root / root
0755
gtester-report
18.643 KB
8 Sep 2026 9.52 AM
root / root
0755
gtk-launch
19.281 KB
26 Aug 2026 1.29 PM
root / root
0755
gtk-query-immodules-2.0-64
19.172 KB
7 Apr 2023 7.55 AM
root / root
0755
gtk-query-immodules-3.0-64
23.273 KB
26 Aug 2026 1.29 PM
root / root
0755
gtk-update-icon-cache
39.828 KB
26 Aug 2026 1.29 PM
root / root
0755
gtroff
732.07 KB
1 Feb 2022 10.44 AM
root / root
0755
gunzip
2.295 KB
31 Aug 2026 4.16 PM
root / root
0755
gv2gml
23.406 KB
3 Apr 2024 11.16 AM
root / root
0755
gv2gxl
39.93 KB
3 Apr 2024 11.16 AM
root / root
0755
gvcolor
49.586 KB
3 Apr 2024 11.16 AM
root / root
0755
gvgen
23.414 KB
3 Apr 2024 11.16 AM
root / root
0755
gvmap
2.75 MB
3 Apr 2024 11.16 AM
root / root
0755
gvmap.sh
2.143 KB
3 Apr 2024 11.16 AM
root / root
0755
gvpack
398.141 KB
3 Apr 2024 11.16 AM
root / root
0755
gvpr
15.203 KB
3 Apr 2024 11.16 AM
root / root
0755
gxl2dot
39.93 KB
3 Apr 2024 11.16 AM
root / root
0755
gxl2gv
39.93 KB
3 Apr 2024 11.16 AM
root / root
0755
gzexe
6.332 KB
31 Aug 2026 4.16 PM
root / root
0755
gzip
88.953 KB
31 Aug 2026 4.16 PM
root / root
0755
h2ph
28.693 KB
28 Jul 2025 3.54 AM
root / root
0755
h2xs
59.503 KB
28 Jul 2025 3.53 AM
root / root
0755
hardlink
35.43 KB
4 Apr 2026 10.15 PM
root / root
0755
hash
0.031 KB
30 Apr 2024 2.33 PM
root / root
0755
hb-ot-shape-closure
43.656 KB
2 Apr 2024 5.02 PM
root / root
0755
hb-shape
47.906 KB
2 Apr 2024 5.02 PM
root / root
0755
hb-subset
39.656 KB
2 Apr 2024 5.02 PM
root / root
0755
hb-view
64.008 KB
2 Apr 2024 5.02 PM
root / root
0755
head
39.609 KB
10 Sep 2026 5.32 PM
root / root
0755
hex2hcd
19.078 KB
26 Aug 2026 12.13 PM
root / root
0755
hexdump
51.406 KB
4 Apr 2026 10.15 PM
root / root
0755
host
108.57 KB
13 Aug 2026 11.36 AM
root / root
0755
hostid
31.469 KB
10 Sep 2026 5.32 PM
root / root
0755
hostname
23.836 KB
14 Feb 2022 11.22 AM
root / root
0755
hostnamectl
31.492 KB
25 Jun 2026 12.28 AM
root / root
0755
htdbm
38.531 KB
8 Sep 2026 10.56 PM
root / root
0755
htdigest
25.711 KB
8 Sep 2026 10.56 PM
root / root
0755
html2text
0.957 KB
26 Mar 2022 2.11 PM
root / root
0755
htpasswd
38.656 KB
8 Sep 2026 10.56 PM
root / root
0755
httxt2dbm
24.727 KB
8 Sep 2026 10.56 PM
root / root
0755
hunspell
102.672 KB
31 Jan 2022 8.22 PM
root / root
0755
i386
27.477 KB
4 Apr 2026 10.15 PM
root / root
0755
iconv
64.086 KB
3 Aug 2026 10.14 AM
root / root
0755
icu-config
0.2 KB
29 Jul 2025 4.13 PM
root / root
0755
icu-config-64
21.669 KB
29 Jul 2025 4.16 PM
root / root
0755
icuinfo
15.492 KB
29 Jul 2025 4.17 PM
root / root
0755
id
39.523 KB
10 Sep 2026 5.32 PM
root / root
0755
identify
15.102 KB
22 Jul 2026 8.31 AM
root / root
0755
idiag-socket-details
15.516 KB
17 Mar 2025 12.12 PM
root / root
0755
idn
36.461 KB
14 Feb 2022 3.33 PM
root / root
0755
ifnames
4.031 KB
21 Sep 2025 12.23 PM
root / root
0755
iio_event_monitor
30.133 KB
11 Sep 2026 1.34 PM
root / root
0755
iio_generic_buffer
34.141 KB
11 Sep 2026 1.34 PM
root / root
0755
ima-add-sigs
3.675 KB
21 Sep 2025 9.11 AM
root / root
0755
ima-setup
3.711 KB
21 Sep 2025 9.11 AM
root / root
0755
import
15.094 KB
22 Jul 2026 8.31 AM
root / root
0755
imunify-agent-proxy
13.14 MB
19 Aug 2026 7.51 AM
root / root
0755
imunify-antivirus
1 KB
5 Aug 2026 11.19 AM
root / root
0755
imunify-fgw-dump
7.8 MB
21 Aug 2026 2.07 PM
root / root
0755
imunify-service
0.996 KB
5 Aug 2026 11.19 AM
root / root
0755
imunify360-agent
1 KB
5 Aug 2026 11.19 AM
root / root
0755
imunify360-command-wrapper
11.924 KB
12 Aug 2026 7.44 AM
root / root
0755
info
312.734 KB
1 May 2022 1.12 PM
root / root
0755
infocmp
63.68 KB
21 Sep 2025 9.23 AM
root / root
0755
infotocap
87.789 KB
21 Sep 2025 9.23 AM
root / root
0755
innochecksum
4.52 MB
19 Aug 2026 10.03 AM
root / root
0755
install
149.078 KB
10 Sep 2026 5.32 PM
root / root
0755
instmodsh
4.096 KB
24 Feb 2022 9.56 AM
root / root
0755
intel-speed-select
116.664 KB
11 Sep 2026 1.34 PM
root / root
0755
ionice
15.211 KB
4 Apr 2026 10.15 PM
root / root
0755
iostat
55.695 KB
15 Apr 2026 10.16 AM
root / root
0755
ipcalc
56.086 KB
25 Mar 2022 10.49 AM
root / root
0755
ipcmk
23.289 KB
4 Apr 2026 10.15 PM
root / root
0755
ipcrm
19.227 KB
4 Apr 2026 10.15 PM
root / root
0755
ipcs
39.336 KB
4 Apr 2026 10.15 PM
root / root
0755
iperf3
15.125 KB
31 Aug 2026 4.12 PM
root / root
0755
ipmitool
915.305 KB
26 Sep 2023 5.44 PM
root / root
0755
iptc
29.305 KB
1 Oct 2024 4.48 PM
root / root
0755
irqtop
35.273 KB
4 Apr 2026 10.15 PM
root / root
0755
isosize
15.148 KB
4 Apr 2026 10.15 PM
root / root
0755
ispell
0.969 KB
8 Oct 2019 12.15 AM
root / root
0755
isql
39.344 KB
9 Sep 2026 8.12 AM
root / root
0755
iusql
31.305 KB
9 Sep 2026 8.12 AM
root / root
0755
jcat-tool
44.211 KB
11 Feb 2022 8.37 PM
root / root
0755
jobs
0.031 KB
30 Apr 2024 2.33 PM
root / root
0755
join
51.688 KB
10 Sep 2026 5.32 PM
root / root
0755
journalctl
88.109 KB
25 Jun 2026 12.28 AM
root / root
0755
jq
31.18 KB
20 May 2026 9.55 AM
root / root
0755
json_pp
4.781 KB
16 Feb 2022 1.39 PM
root / root
0755
json_reformat
19.516 KB
12 Mar 2025 8.01 PM
root / root
0755
json_verify
15.305 KB
12 Mar 2025 8.01 PM
root / root
0755
json_xs
6.849 KB
2 Oct 2025 11.42 AM
root / root
0755
kbd_mode
15.508 KB
20 Aug 2026 6.48 PM
root / root
0755
kbdinfo
19.195 KB
20 Aug 2026 6.48 PM
root / root
0755
kbdrate
19.203 KB
20 Aug 2026 6.48 PM
root / root
0755
kdumpctl
59.84 KB
8 Apr 2026 6.11 PM
root / root
0755
kernel-install
13.701 KB
25 Jun 2026 12.27 AM
root / root
0755
keyctl
64.023 KB
5 Apr 2023 7.15 PM
root / root
0755
kill
31.281 KB
4 Apr 2026 10.15 PM
root / root
0755
killall
32.945 KB
25 Mar 2022 3.53 PM
root / root
0755
kmod
165.57 KB
18 Sep 2025 11.41 AM
root / root
0755
krb5-config
6.588 KB
20 May 2026 11.47 PM
root / root
0755
kvm_stat
62.917 KB
3 Sep 2026 2.18 PM
root / root
0755
l2ping
15.18 KB
26 Aug 2026 12.13 PM
root / root
0755
last
35.289 KB
4 Apr 2026 10.15 PM
root / root
0755
lastb
35.289 KB
4 Apr 2026 10.15 PM
root / root
0755
lastlog
28.633 KB
8 Apr 2026 7.49 PM
root / root
0755
lchfn
23.125 KB
21 Sep 2025 10.53 AM
root / root
0755
lchsh
23.125 KB
21 Sep 2025 10.53 AM
root / root
0755
ld
1.71 MB
4 Apr 2026 9.15 PM
root / root
0755
ld.bfd
1.71 MB
4 Apr 2026 9.15 PM
root / root
0755
ld.gold
2.03 MB
4 Apr 2026 9.15 PM
root / root
0755
ld.so
916.789 KB
3 Aug 2026 10.14 AM
root / root
0755
ldd
5.318 KB
3 Aug 2026 10.12 AM
root / root
0755
lefty
300.445 KB
3 Apr 2024 11.16 AM
root / root
0755
less
197.695 KB
21 Sep 2025 12.35 PM
root / root
0755
lessecho
15.172 KB
21 Sep 2025 12.35 PM
root / root
0755
lesskey
24.609 KB
21 Sep 2025 12.35 PM
root / root
0755
lesspipe.sh
3.496 KB
21 Sep 2025 11.44 AM
root / root
0755
lex
412.641 KB
30 Jan 2022 8.23 AM
root / root
0755
lexgrog
88.188 KB
21 Sep 2025 12.57 PM
root / root
0755
libnetcfg
15.405 KB
28 Jul 2025 3.54 AM
root / root
0755
libpng-config
2.383 KB
25 Jun 2026 12.19 AM
root / root
0755
libpng16-config
2.383 KB
25 Jun 2026 12.19 AM
root / root
0755
libtool
359.182 KB
1 Oct 2024 5.49 PM
root / root
0755
libtoolize
126.172 KB
1 Oct 2024 5.49 PM
root / root
0755
libwmf-fontmap
13.031 KB
15 Oct 2022 12.42 PM
root / root
0755
link
31.477 KB
10 Sep 2026 5.32 PM
root / root
0755
linux-boot-prober
5.856 KB
4 Feb 2025 9.32 AM
root / root
0755
linux32
27.477 KB
4 Apr 2026 10.15 PM
root / root
0755
linux64
27.477 KB
4 Apr 2026 10.15 PM
root / root
0755
ln
55.945 KB
10 Sep 2026 5.32 PM
root / root
0755
lneato
1.515 KB
3 Apr 2024 11.16 AM
root / root
0755
loadkeys
200.367 KB
20 Aug 2026 6.48 PM
root / root
0755
loadunimap
31.43 KB
20 Aug 2026 6.48 PM
root / root
0755
locale
59.078 KB
3 Aug 2026 10.14 AM
root / root
0755
localectl
31.445 KB
25 Jun 2026 12.28 AM
root / root
0755
localedef
314.047 KB
3 Aug 2026 10.14 AM
root / root
0755
logger
35.977 KB
4 Apr 2026 10.15 PM
root / root
0755
login
43.461 KB
4 Apr 2026 10.15 PM
root / root
0755
loginctl
67.961 KB
25 Jun 2026 12.28 AM
root / root
0755
logname
31.469 KB
10 Sep 2026 5.32 PM
root / root
0755
logresolve
25.063 KB
8 Sep 2026 10.56 PM
root / root
0755
look
19.172 KB
4 Apr 2026 10.15 PM
root / root
0755
ls
137.445 KB
10 Sep 2026 5.32 PM
root / root
0755
lsattr
15.18 KB
21 Sep 2025 3.03 PM
root / root
0755
lsblk
124.367 KB
4 Apr 2026 10.15 PM
root / root
0755
lscpu
108.234 KB
4 Apr 2026 10.15 PM
root / root
0755
lsgpio
14.297 KB
11 Sep 2026 1.34 PM
root / root
0755
lsiio
22.141 KB
11 Sep 2026 1.34 PM
root / root
0755
lsinitrd
11.853 KB
14 Aug 2026 12.41 AM
root / root
0755
lsipc
51.5 KB
4 Apr 2026 10.15 PM
root / root
0755
lsirq
23.234 KB
4 Apr 2026 10.15 PM
root / root
0755
lslocks
31.594 KB
4 Apr 2026 10.15 PM
root / root
0755
lslogins
51.5 KB
4 Apr 2026 10.15 PM
root / root
0755
lsmem
35.523 KB
4 Apr 2026 10.15 PM
root / root
0755
lsns
39.328 KB
4 Apr 2026 10.15 PM
root / root
0755
lsof
175.063 KB
10 Feb 2022 6.42 AM
root / root
0755
lsphp
0.915 KB
18 May 2026 4.41 PM
root / root
0755
lsscsi
89.438 KB
11 Feb 2022 8.15 AM
root / root
0755
lto-dump
26.59 MB
4 Apr 2026 10.27 PM
root / root
0755
lua
23.227 KB
26 Sep 2023 6.28 PM
root / root
0755
luac
157.688 KB
26 Sep 2023 6.28 PM
root / root
0755
lwp-download
10.051 KB
25 Mar 2022 8.00 AM
root / root
0755
lwp-dump
2.647 KB
25 Mar 2022 8.00 AM
root / root
0755
lwp-mirror
2.356 KB
25 Mar 2022 8.00 AM
root / root
0755
lwp-request
15.82 KB
25 Mar 2022 8.00 AM
root / root
0755
m4
240.398 KB
31 Mar 2022 7.28 AM
root / root
0755
mail
1013.25 KB
17 Dec 2025 11.27 AM
root / root
0755
mailx
1013.25 KB
17 Dec 2025 11.27 AM
root / root
0755
mailx.s-nail
1013.25 KB
17 Dec 2025 11.27 AM
root / root
0755
make
249.797 KB
2 Apr 2024 12.55 PM
root / root
0755
make-dummy-cert
0.6 KB
27 Jul 2026 6.12 PM
root / root
0755
man
114.914 KB
21 Sep 2025 12.57 PM
root / root
0755
man-recode
28.008 KB
21 Sep 2025 12.57 PM
root / root
0755
man.man-db
114.914 KB
21 Sep 2025 12.57 PM
root / root
0755
mandb
133.008 KB
21 Sep 2025 12.57 PM
root / root
0755
manpath
31.82 KB
21 Sep 2025 12.57 PM
root / root
0755
mapscrn
31.391 KB
20 Aug 2026 6.48 PM
root / root
0755
mariadb
5 MB
19 Aug 2026 9.49 AM
root / root
0755
mariadb-access
109.337 KB
19 Aug 2026 9.01 AM
root / root
0755
mariadb-admin
4.78 MB
19 Aug 2026 9.49 AM
root / root
0755
mariadb-binlog
5.06 MB
19 Aug 2026 9.49 AM
root / root
0755
mariadb-check
4.78 MB
19 Aug 2026 9.49 AM
root / root
0755
mariadb-config
15.641 KB
19 Aug 2026 9.55 AM
root / root
0755
mariadb-conv
4.51 MB
19 Aug 2026 9.49 AM
root / root
0755
mariadb-convert-table-format
4.121 KB
19 Aug 2026 9.01 AM
root / root
0755
mariadb-dump
4.87 MB
19 Aug 2026 9.49 AM
root / root
0755
mariadb-dumpslow
8.049 KB
19 Aug 2026 9.01 AM
root / root
0755
mariadb-embedded
23.28 MB
19 Aug 2026 9.49 AM
root / root
0755
mariadb-find-rows
3.213 KB
19 Aug 2026 9.01 AM
root / root
0755
mariadb-fix-extensions
1.221 KB
19 Aug 2026 9.01 AM
root / root
0755
mariadb-hotcopy
34.53 KB
19 Aug 2026 9.01 AM
root / root
0755
mariadb-import
4.77 MB
19 Aug 2026 9.49 AM
root / root
0755
mariadb-install-db
22.164 KB
19 Aug 2026 9.01 AM
root / root
0755
mariadb-plugin
4.49 MB
19 Aug 2026 9.49 AM
root / root
0755
mariadb-secure-installation
13.479 KB
19 Aug 2026 9.01 AM
root / root
0755
mariadb-service-convert
2.451 KB
19 Aug 2026 6.22 AM
root / root
0755
mariadb-setpermission
17.556 KB
19 Aug 2026 9.01 AM
root / root
0755
mariadb-show
4.77 MB
19 Aug 2026 9.49 AM
root / root
0755
mariadb-slap
4.79 MB
19 Aug 2026 9.49 AM
root / root
0755
mariadb-tzinfo-to-sql
4.49 MB
19 Aug 2026 9.49 AM
root / root
0755
mariadb-upgrade
4.93 MB
19 Aug 2026 10.03 AM
root / root
0755
mariadb-waitpid
4.48 MB
19 Aug 2026 9.49 AM
root / root
0755
mariadb_config
15.641 KB
19 Aug 2026 9.55 AM
root / root
0755
mariadbd-multi
26.782 KB
19 Aug 2026 9.01 AM
root / root
0755
mariadbd-safe
30.486 KB
19 Aug 2026 9.01 AM
root / root
0755
mariadbd-safe-helper
4.45 MB
19 Aug 2026 10.03 AM
root / root
0755
mcookie
27.305 KB
4 Apr 2026 10.15 PM
root / root
0755
md5sum
39.445 KB
10 Sep 2026 5.32 PM
root / root
0755
mdb_copy
15.703 KB
10 Feb 2022 7.49 AM
root / root
0755
mdb_dump
15.836 KB
10 Feb 2022 7.49 AM
root / root
0755
mdb_load
23.836 KB
10 Feb 2022 7.49 AM
root / root
0755
mdb_stat
15.805 KB
10 Feb 2022 7.49 AM
root / root
0755
mdig
51.305 KB
13 Aug 2026 11.36 AM
root / root
0755
memtester
27.867 KB
24 Jan 2025 9.25 AM
root / root
0755
mesg
15.141 KB
4 Apr 2026 10.15 PM
root / root
0755
mkdir
68.125 KB
10 Sep 2026 5.32 PM
root / root
0755
mkfifo
39.641 KB
10 Sep 2026 5.32 PM
root / root
0755
mkfontdir
0.067 KB
11 Feb 2022 10.35 PM
root / root
0755
mkfontscale
44.773 KB
11 Feb 2022 10.35 PM
root / root
0755
mknod
43.68 KB
10 Sep 2026 5.32 PM
root / root
0755
mktemp
39.617 KB
10 Sep 2026 5.32 PM
root / root
0755
mm2gv
39.445 KB
3 Apr 2024 11.16 AM
root / root
0755
mmdblookup
27.719 KB
1 Oct 2024 4.54 PM
root / root
0755
modulecmd
654.006 KB
21 Sep 2025 9.06 AM
root / root
0755
modulemd-validator
28.391 KB
9 Feb 2022 11.30 PM
root / root
0755
modutil
91.906 KB
20 Aug 2026 2.11 AM
root / root
0755
mogrify
15.102 KB
22 Jul 2026 8.31 AM
root / root
0755
mokutil
61.219 KB
9 Apr 2026 10.34 PM
root / root
0755
montage
15.102 KB
22 Jul 2026 8.31 AM
root / root
0755
more
43.422 KB
4 Apr 2026 10.15 PM
root / root
0755
mount
47.344 KB
4 Apr 2026 10.15 PM
root / root
4755
mountpoint
19.18 KB
4 Apr 2026 10.15 PM
root / root
0755
mpris-proxy
101.156 KB
26 Aug 2026 12.13 PM
root / root
0755
mpstat
51.594 KB
15 Apr 2026 10.16 AM
root / root
0755
msgattrib
27.172 KB
27 Sep 2023 6.53 AM
root / root
0755
msgcat
27.141 KB
27 Sep 2023 6.53 AM
root / root
0755
msgcmp
27.266 KB
27 Sep 2023 6.53 AM
root / root
0755
msgcomm
27.156 KB
27 Sep 2023 6.53 AM
root / root
0755
msgconv
23.148 KB
27 Sep 2023 6.53 AM
root / root
0755
msgen
23.148 KB
27 Sep 2023 6.53 AM
root / root
0755
msgexec
23.148 KB
27 Sep 2023 6.53 AM
root / root
0755
msgfilter
35.313 KB
27 Sep 2023 6.53 AM
root / root
0755
msgfmt
84.094 KB
27 Sep 2023 6.53 AM
root / root
0755
msgfmt.py
7.412 KB
31 Oct 2025 6.40 PM
root / root
0755
msgfmt3.9.py
7.412 KB
31 Oct 2025 6.40 PM
root / root
0755
msgfmt3.py
7.412 KB
31 Oct 2025 6.40 PM
root / root
0755
msggrep
116.406 KB
27 Sep 2023 6.53 AM
root / root
0755
msginit
67.438 KB
27 Sep 2023 6.53 AM
root / root
0755
msgmerge
75.484 KB
27 Sep 2023 6.53 AM
root / root
0755
msgunfmt
35.328 KB
27 Sep 2023 6.53 AM
root / root
0755
msguniq
23.148 KB
27 Sep 2023 6.53 AM
root / root
0755
msql2mysql
1.416 KB
19 Aug 2026 9.01 AM
root / root
0755
mv
140.945 KB
10 Sep 2026 5.32 PM
root / root
0755
my_print_defaults
4.48 MB
19 Aug 2026 9.49 AM
root / root
0755
myisam_ftdump
4.77 MB
19 Aug 2026 10.03 AM
root / root
0755
myisamchk
4.88 MB
19 Aug 2026 10.03 AM
root / root
0755
myisamlog
4.75 MB
19 Aug 2026 10.03 AM
root / root
0755
myisampack
4.79 MB
19 Aug 2026 10.03 AM
root / root
0755
mysql
5 MB
19 Aug 2026 9.49 AM
root / root
0755
mysql_config
4.5 KB
19 Aug 2026 9.01 AM
root / root
0755
mysql_embedded
23.28 MB
19 Aug 2026 9.49 AM
root / root
0755
mysql_find_rows
3.213 KB
19 Aug 2026 9.01 AM
root / root
0755
mysql_fix_extensions
1.221 KB
19 Aug 2026 9.01 AM
root / root
0755
mysql_install_db
22.164 KB
19 Aug 2026 9.01 AM
root / root
0755
mysql_plugin
4.49 MB
19 Aug 2026 9.49 AM
root / root
0755
mysql_tzinfo_to_sql
4.49 MB
19 Aug 2026 9.49 AM
root / root
0755
mysql_upgrade
4.93 MB
19 Aug 2026 10.03 AM
root / root
0755
mysql_waitpid
4.48 MB
19 Aug 2026 9.49 AM
root / root
0755
mysqlaccess
109.337 KB
19 Aug 2026 9.01 AM
root / root
0755
mysqladmin
4.78 MB
19 Aug 2026 9.49 AM
root / root
0755
mysqlbinlog
5.06 MB
19 Aug 2026 9.49 AM
root / root
0755
mysqlcheck
4.78 MB
19 Aug 2026 9.49 AM
root / root
0755
mysqld_multi
26.782 KB
19 Aug 2026 9.01 AM
root / root
0755
mysqld_safe
30.486 KB
19 Aug 2026 9.01 AM
root / root
0755
mysqld_safe_helper
4.45 MB
19 Aug 2026 10.03 AM
root / root
0755
mysqldump
4.87 MB
19 Aug 2026 9.49 AM
root / root
0755
mysqlimport
4.77 MB
19 Aug 2026 9.49 AM
root / root
0755
mysqlshow
4.77 MB
19 Aug 2026 9.49 AM
root / root
0755
mysqlslap
4.79 MB
19 Aug 2026 9.49 AM
root / root
0755
mytop
72.028 KB
19 Aug 2026 9.01 AM
root / root
0755
nail
1013.25 KB
17 Dec 2025 11.27 AM
root / root
0755
named-rrchecker
23.141 KB
13 Aug 2026 11.36 AM
root / root
0755
namei
23.227 KB
4 Apr 2026 10.15 PM
root / root
0755
nano
346.195 KB
13 Mar 2025 3.12 AM
root / root
0755
nbdcopy
56.883 KB
21 Sep 2025 2.33 PM
root / root
0755
nbddump
23.219 KB
21 Sep 2025 2.33 PM
root / root
0755
nbdinfo
39.367 KB
21 Sep 2025 2.33 PM
root / root
0755
nc
51.859 KB
20 May 2026 9.15 AM
root / root
0755
ncurses6-config
8.126 KB
21 Sep 2025 9.23 AM
root / root
0755
ncursesw6-config
8.129 KB
21 Sep 2025 9.23 AM
root / root
0755
ndptool
27.422 KB
1 Oct 2024 5.03 PM
root / root
0755
neato
15.234 KB
3 Apr 2024 11.16 AM
root / root
0755
needs-restarting
3.604 KB
15 Apr 2026 12.44 PM
root / root
0755
neqn
0.895 KB
1 Feb 2022 10.44 AM
root / root
0755
netcat
51.859 KB
20 May 2026 9.15 AM
root / root
0755
netstat
156.852 KB
2 Oct 2024 7.02 PM
root / root
0755
newgidmap
41.953 KB
8 Apr 2026 7.49 PM
root / root
0755
newgrp
40.766 KB
8 Apr 2026 7.49 PM
root / root
4755
newuidmap
37.93 KB
8 Apr 2026 7.49 PM
root / root
0755
nf-ct-add
15.891 KB
17 Mar 2025 12.12 PM
root / root
0755
nf-ct-events
15.328 KB
17 Mar 2025 12.12 PM
root / root
0755
nf-ct-list
15.93 KB
17 Mar 2025 12.12 PM
root / root
0755
nf-exp-add
20.305 KB
17 Mar 2025 12.12 PM
root / root
0755
nf-exp-delete
16.086 KB
17 Mar 2025 12.12 PM
root / root
0755
nf-exp-list
15.93 KB
17 Mar 2025 12.12 PM
root / root
0755
nf-log
15.313 KB
17 Mar 2025 12.12 PM
root / root
0755
nf-monitor
15.328 KB
17 Mar 2025 12.12 PM
root / root
0755
nf-queue
15.32 KB
17 Mar 2025 12.12 PM
root / root
0755
ngettext
35.344 KB
27 Sep 2023 6.53 AM
root / root
0755
nice
35.484 KB
10 Sep 2026 5.32 PM
root / root
0755
nisdomainname
23.836 KB
14 Feb 2022 11.22 AM
root / root
0755
nl
100.508 KB
10 Sep 2026 5.32 PM
root / root
0755
nl-addr-add
15.766 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-addr-delete
15.82 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-addr-list
19.836 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-class-add
15.75 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-class-delete
15.664 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-class-list
15.633 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-classid-lookup
15.5 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-cls-add
19.813 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-cls-delete
15.734 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-cls-list
15.688 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-fib-lookup
15.523 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-link-enslave
15.289 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-link-ifindex2name
15.289 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-link-list
15.672 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-link-name2ifindex
15.289 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-link-release
15.289 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-link-set
15.742 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-link-stats
15.531 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-list-caches
15.305 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-list-sockets
15.289 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-monitor
15.484 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-neigh-add
15.664 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-neigh-delete
15.695 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-neigh-list
15.609 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-neightbl-list
15.445 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-nh-list
15.477 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-pktloc-lookup
15.531 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-qdisc-add
15.695 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-qdisc-delete
15.664 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-qdisc-list
19.688 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-route-add
19.836 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-route-delete
19.914 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-route-get
15.313 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-route-list
15.859 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-rule-list
15.477 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-tctree-list
15.602 KB
17 Mar 2025 12.12 PM
root / root
0755
nl-util-addr
15.289 KB
17 Mar 2025 12.12 PM
root / root
0755
nm
44.719 KB
4 Apr 2026 9.15 PM
root / root
0755
nm-online
23.383 KB
24 Aug 2026 11.56 AM
root / root
0755
nmcli
1.03 MB
24 Aug 2026 11.56 AM
root / root
0755
nmtui
842.438 KB
24 Aug 2026 11.56 AM
root / root
0755
nmtui-connect
842.438 KB
24 Aug 2026 11.56 AM
root / root
0755
nmtui-edit
842.438 KB
24 Aug 2026 11.56 AM
root / root
0755
nmtui-hostname
842.438 KB
24 Aug 2026 11.56 AM
root / root
0755
nohup
35.398 KB
10 Sep 2026 5.32 PM
root / root
0755
nop
15.328 KB
3 Apr 2024 11.16 AM
root / root
0755
notify-send
19.75 KB
10 Feb 2022 2.06 AM
root / root
0755
nproc
35.5 KB
10 Sep 2026 5.32 PM
root / root
0755
nroff
3.208 KB
1 Feb 2022 10.44 AM
root / root
0755
nsenter
27.469 KB
4 Apr 2026 10.15 PM
root / root
0755
nslookup
112.523 KB
13 Aug 2026 11.36 AM
root / root
0755
nss-policy-check
15.156 KB
20 Aug 2026 2.11 AM
root / root
0755
nsupdate
71.805 KB
13 Aug 2026 11.36 AM
root / root
0755
numfmt
55.633 KB
10 Sep 2026 5.32 PM
root / root
0755
objcopy
185.367 KB
4 Apr 2026 9.15 PM
root / root
0755
objdump
413.086 KB
4 Apr 2026 9.15 PM
root / root
0755
od
63.875 KB
10 Sep 2026 5.32 PM
root / root
0755
odbc_config
15.109 KB
9 Sep 2026 8.12 AM
root / root
0755
odbcinst
23.172 KB
9 Sep 2026 8.12 AM
root / root
0755
oddjob_request
23.203 KB
7 Apr 2023 12.20 AM
root / root
0755
openssl
1.07 MB
27 Jul 2026 6.12 PM
root / root
0755
openvt
23.555 KB
20 Aug 2026 6.48 PM
root / root
0755
orc-bugreport
23.313 KB
2 Oct 2024 9.27 PM
root / root
0755
os-prober
5.78 KB
4 Feb 2025 9.32 AM
root / root
0755
osage
15.234 KB
3 Apr 2024 11.16 AM
root / root
0755
osinfo-db-export
27.352 KB
5 Apr 2023 9.38 PM
root / root
0755
osinfo-db-import
27.305 KB
5 Apr 2023 9.38 PM
root / root
0755
osinfo-db-path
15.305 KB
5 Apr 2023 9.38 PM
root / root
0755
osinfo-db-validate
23.398 KB
5 Apr 2023 9.38 PM
root / root
0755
osinfo-detect
27.398 KB
5 Apr 2023 8.51 PM
root / root
0755
osinfo-install-script
31.773 KB
5 Apr 2023 8.51 PM
root / root
0755
osinfo-query
32.188 KB
5 Apr 2023 8.51 PM
root / root
0755
osql
9.479 KB
11 Aug 2026 8.13 PM
root / root
0755
p11-kit
240.141 KB
3 Aug 2026 2.23 PM
root / root
0755
package-cleanup
3.604 KB
15 Apr 2026 12.44 PM
root / root
0755
page_owner_sort
26.125 KB
11 Sep 2026 1.34 PM
root / root
0755
pango-list
19.109 KB
7 Apr 2023 10.19 AM
root / root
0755
pango-segmentation
19.125 KB
7 Apr 2023 10.19 AM
root / root
0755
pango-view
60.172 KB
7 Apr 2023 10.19 AM
root / root
0755
paperconf
15.805 KB
10 Feb 2022 1.15 AM
root / root
0755
passwd
31.891 KB
14 Apr 2022 2.45 PM
root / root
4755
paste
35.391 KB
10 Sep 2026 5.32 PM
root / root
0755
patch
195.016 KB
25 Mar 2022 3.42 PM
root / root
0755
patchwork
15.234 KB
3 Apr 2024 11.16 AM
root / root
0755
pathchk
35.477 KB
10 Sep 2026 5.32 PM
root / root
0755
pathfix.py
6.627 KB
31 Oct 2025 6.40 PM
root / root
0755
pathfix3.9.py
6.627 KB
31 Oct 2025 6.40 PM
root / root
0755
pcre-config
2.092 KB
2 Oct 2024 9.53 PM
root / root
0755
pcre2-config
1.908 KB
2 Oct 2024 9.57 PM
root / root
0755
pdf2dsc
0.685 KB
14 May 2025 4.03 PM
root / root
0755
pdf2ps
0.892 KB
14 May 2025 4.03 PM
root / root
0755
pdns_control
480.023 KB
10 Aug 2026 7.14 PM
root / root
0755
pdnsutil
4.82 MB
10 Aug 2026 7.14 PM
root / root
0755
peekfd
15.805 KB
25 Mar 2022 3.53 PM
root / root
0755
perl
15.133 KB
28 Jul 2025 3.54 AM
root / root
0755
perl5.32.1
15.133 KB
28 Jul 2025 3.54 AM
root / root
0755
perlbug
43.812 KB
28 Jul 2025 3.54 AM
root / root
0755
perldoc
0.115 KB
14 Feb 2022 11.51 PM
root / root
0755
perlivp
10.56 KB
28 Jul 2025 3.53 AM
root / root
0755
perlml
14.492 KB
2 Oct 2025 7.40 PM
root / root
0755
perlthanks
43.812 KB
28 Jul 2025 3.54 AM
root / root
0755
perror
4.68 MB
19 Aug 2026 10.03 AM
root / root
0755
pf2afm
0.49 KB
14 May 2025 4.03 PM
root / root
0755
pfbtopfa
0.508 KB
14 May 2025 4.03 PM
root / root
0755
pftp
100.656 KB
30 Jan 2022 11.49 PM
root / root
0755
pgrep
31.422 KB
30 Apr 2024 4.43 PM
root / root
0755
php
0.915 KB
18 May 2026 4.41 PM
root / root
0755
pic
201.719 KB
1 Feb 2022 10.44 AM
root / root
0755
piconv
8.077 KB
11 Feb 2022 4.42 PM
root / root
0755
pidof
23.328 KB
30 Apr 2024 4.43 PM
root / root
0755
pidstat
51.594 KB
15 Apr 2026 10.16 AM
root / root
0755
pidwait
31.422 KB
30 Apr 2024 4.43 PM
root / root
0755
pigz
132.836 KB
12 Mar 2025 11.06 PM
root / root
0755
ping
89.328 KB
20 Oct 2025 12.44 PM
root / root
0755
pinky
35.414 KB
10 Sep 2026 5.32 PM
root / root
0755
pip
0.633 KB
23 May 2026 8.59 AM
root / root
0755
pip-3
0.633 KB
23 May 2026 8.59 AM
root / root
0755
pip-3.9
0.633 KB
23 May 2026 8.59 AM
root / root
0755
pip3
0.633 KB
23 May 2026 8.59 AM
root / root
0755
pip3.9
0.633 KB
23 May 2026 8.59 AM
root / root
0755
pipewire
15.156 KB
2 Sep 2026 6.52 AM
root / root
0755
pipewire-aes67
15.156 KB
2 Sep 2026 6.52 AM
root / root
0755
pipewire-avb
15.156 KB
2 Sep 2026 6.52 AM
root / root
0755
pipewire-pulse
15.156 KB
2 Sep 2026 6.52 AM
root / root
0755
pipewire-vulkan
15.156 KB
2 Sep 2026 6.52 AM
root / root
0755
pk12util
72.453 KB
20 Aug 2026 2.11 AM
root / root
0755
pkaction
19.164 KB
21 Sep 2025 9.51 AM
root / root
0755
pkcheck
23.172 KB
21 Sep 2025 9.51 AM
root / root
0755
pkexec
31.18 KB
21 Sep 2025 9.51 AM
root / root
0755
pkg-config
0.327 KB
6 Apr 2023 8.27 PM
root / root
0755
pkgconf
45.359 KB
6 Apr 2023 8.27 PM
root / root
0755
pkill
31.422 KB
30 Apr 2024 4.43 PM
root / root
0755
pkla-admin-identities
23.961 KB
25 Mar 2022 8.04 PM
root / root
0755
pkla-check-authorization
36.102 KB
25 Mar 2022 8.04 PM
root / root
0755
pkttyagent
23.156 KB
21 Sep 2025 9.51 AM
root / root
0755
pl2pm
4.427 KB
28 Jul 2025 3.54 AM
root / root
0755
pldd
23.367 KB
3 Aug 2026 10.14 AM
root / root
0755
pmap
35.391 KB
30 Apr 2024 4.43 PM
root / root
0755
png-fix-itxt
15.109 KB
25 Jun 2026 12.20 AM
root / root
0755
pngfix
59.563 KB
25 Jun 2026 12.20 AM
root / root
0755
pod2html
4.037 KB
28 Jul 2025 3.54 AM
root / root
0755
pod2man
14.682 KB
25 Mar 2022 12.10 PM
root / root
0755
pod2text
10.55 KB
25 Mar 2022 12.10 PM
root / root
0755
pod2usage
4.011 KB
11 Feb 2022 4.01 PM
root / root
0755
podchecker
3.572 KB
11 Feb 2022 7.01 PM
root / root
0755
post-grohtml
199.758 KB
1 Feb 2022 10.44 AM
root / root
0755
powernow-k8-decode
14.125 KB
11 Sep 2026 1.34 PM
root / root
0755
pphs
0.398 KB
14 May 2025 4.03 PM
root / root
0755
pr
72.102 KB
10 Sep 2026 5.32 PM
root / root
0755
pre-grohtml
92.922 KB
1 Feb 2022 10.44 AM
root / root
0755
precat
5.527 KB
8 Oct 2019 12.15 AM
root / root
0755
preconv
56.266 KB
1 Feb 2022 10.44 AM
root / root
0755
preunzip
5.527 KB
8 Oct 2019 12.15 AM
root / root
0755
prezip
5.527 KB
8 Oct 2019 12.15 AM
root / root
0755
prezip-bin
15.688 KB
26 Jan 2022 9.47 PM
root / root
0755
printafm
0.39 KB
14 May 2025 4.03 PM
root / root
0755
printenv
31.289 KB
10 Sep 2026 5.32 PM
root / root
0755
printf
51.578 KB
10 Sep 2026 5.32 PM
root / root
0755
prlimit
27.75 KB
4 Apr 2026 10.15 PM
root / root
0755
procan
35.43 KB
12 Feb 2026 6.05 PM
root / root
0755
protoc
23.32 KB
23 Feb 2026 10.25 PM
root / root
0755
protoc-c
158.195 KB
26 Sep 2023 8.08 PM
root / root
0755
protoc-gen-c
158.195 KB
26 Sep 2023 8.08 PM
root / root
0755
prove
13.244 KB
16 Feb 2022 11.58 AM
root / root
0755
prtstat
23.844 KB
25 Mar 2022 3.53 PM
root / root
0755
prune
15.406 KB
3 Apr 2024 11.16 AM
root / root
0755
ps
141.148 KB
30 Apr 2024 4.43 PM
root / root
0755
ps2ascii
0.62 KB
14 May 2025 4.03 PM
root / root
0755
ps2epsi
1.238 KB
14 May 2025 4.03 PM
root / root
0755
ps2pdf
0.27 KB
14 May 2025 4.03 PM
root / root
0755
ps2pdf12
0.214 KB
14 May 2025 4.03 PM
root / root
0755
ps2pdf13
0.214 KB
14 May 2025 4.03 PM
root / root
0755
ps2pdf14
0.214 KB
14 May 2025 4.03 PM
root / root
0755
ps2pdfwr
1.057 KB
14 May 2025 4.03 PM
root / root
0755
ps2ps
0.636 KB
14 May 2025 4.03 PM
root / root
0755
ps2ps2
0.657 KB
14 May 2025 4.03 PM
root / root
0755
psfaddtable
31.258 KB
20 Aug 2026 6.48 PM
root / root
0755
psfgettable
31.258 KB
20 Aug 2026 6.48 PM
root / root
0755
psfstriptable
31.258 KB
20 Aug 2026 6.48 PM
root / root
0755
psfxtable
31.258 KB
20 Aug 2026 6.48 PM
root / root
0755
pslog
15.703 KB
25 Mar 2022 3.53 PM
root / root
0755
pstree
36.898 KB
25 Mar 2022 3.53 PM
root / root
0755
pstree.x11
36.898 KB
25 Mar 2022 3.53 PM
root / root
0755
ptar
3.389 KB
3 Aug 2026 4.41 AM
root / root
0755
ptardiff
2.489 KB
3 Aug 2026 4.41 AM
root / root
0755
ptargrep
4.198 KB
3 Aug 2026 4.41 AM
root / root
0755
ptx
128.82 KB
10 Sep 2026 5.32 PM
root / root
0755
pv
65.352 KB
15 Dec 2021 1.55 PM
root / root
0755
pw-jack
1.32 KB
2 Sep 2026 6.51 AM
root / root
0755
pwd
35.523 KB
10 Sep 2026 5.32 PM
root / root
0755
pwdx
15.281 KB
30 Apr 2024 4.43 PM
root / root
0755
pwmake
15.703 KB
10 Feb 2022 3.37 AM
root / root
0755
pwscore
15.703 KB
10 Feb 2022 3.37 AM
root / root
0755
pydoc
0.076 KB
12 Aug 2026 3.51 PM
root / root
0755
pydoc3
0.076 KB
12 Aug 2026 3.51 PM
root / root
0755
pydoc3.9
0.076 KB
12 Aug 2026 3.51 PM
root / root
0755
pygettext.py
21.032 KB
31 Oct 2025 6.40 PM
root / root
0755
pygettext3.9.py
21.032 KB
31 Oct 2025 6.40 PM
root / root
0755
pygettext3.py
21.032 KB
31 Oct 2025 6.40 PM
root / root
0755
python
15.086 KB
12 Aug 2026 3.51 PM
root / root
0755
python-config
0.06 KB
12 Aug 2026 3.51 PM
root / root
0755
python-html2text
0.957 KB
26 Mar 2022 2.11 PM
root / root
0755
python3
15.086 KB
12 Aug 2026 3.51 PM
root / root
0755
python3-config
0.06 KB
12 Aug 2026 3.51 PM
root / root
0755
python3-html2text
0.957 KB
26 Mar 2022 2.11 PM
root / root
0755
python3.9
15.086 KB
12 Aug 2026 3.51 PM
root / root
0755
python3.9-config
0.06 KB
12 Aug 2026 3.51 PM
root / root
0755
python3.9-x86_64-config
3.539 KB
12 Aug 2026 3.46 PM
root / root
0755
quota
81.672 KB
12 Mar 2025 8.44 PM
root / root
4755
quotasync
64.875 KB
12 Mar 2025 8.44 PM
root / root
0755
ranlib
55.992 KB
4 Apr 2026 9.15 PM
root / root
0755
read
0.031 KB
30 Apr 2024 2.33 PM
root / root
0755
readelf
667.281 KB
4 Apr 2026 9.15 PM
root / root
0755
readlink
39.508 KB
10 Sep 2026 5.32 PM
root / root
0755
realpath
39.586 KB
10 Sep 2026 5.32 PM
root / root
0755
recode-sr-latin
15.133 KB
27 Sep 2023 6.53 AM
root / root
0755
red
0.09 KB
30 Jan 2022 5.02 AM
root / root
0755
rename
23.227 KB
4 Apr 2026 10.15 PM
root / root
0755
renew-dummy-cert
0.712 KB
27 Jul 2026 6.12 PM
root / root
0755
renice
15.164 KB
4 Apr 2026 10.15 PM
root / root
0755
replace
4.46 MB
19 Aug 2026 9.49 AM
root / root
0755
repo-graph
3.604 KB
15 Apr 2026 12.44 PM
root / root
0755
repoclosure
3.604 KB
15 Apr 2026 12.44 PM
root / root
0755
repodiff
3.604 KB
15 Apr 2026 12.44 PM
root / root
0755
repomanage
3.604 KB
15 Apr 2026 12.44 PM
root / root
0755
repoquery
3.604 KB
15 Apr 2026 12.44 PM
root / root
0755
reposync
3.604 KB
15 Apr 2026 12.44 PM
root / root
0755
repotrack
3.604 KB
15 Apr 2026 12.44 PM
root / root
0755
rescan-scsi-bus.sh
38.088 KB
4 Aug 2026 10.02 PM
root / root
0755
reset
27.336 KB
21 Sep 2025 9.23 AM
root / root
0755
resizecons
27.375 KB
20 Aug 2026 6.48 PM
root / root
0755
resolve_stack_dump
4.48 MB
19 Aug 2026 10.03 AM
root / root
0755
resolveip
4.48 MB
19 Aug 2026 10.03 AM
root / root
0755
rev
15.156 KB
4 Apr 2026 10.15 PM
root / root
0755
rm
59.992 KB
10 Sep 2026 5.32 PM
root / root
0755
rmdir
43.422 KB
10 Sep 2026 5.32 PM
root / root
0755
rnano
346.195 KB
13 Mar 2025 3.12 AM
root / root
0755
rpcbind
59.891 KB
3 Apr 2024 1.53 PM
root / root
0755
rpcinfo
35.578 KB
3 Apr 2024 1.53 PM
root / root
0755
rpm
23.633 KB
5 Apr 2026 1.49 AM
root / root
0755
rpm2archive
23.32 KB
5 Apr 2026 1.49 AM
root / root
0755
rpm2cpio
15.117 KB
5 Apr 2026 1.49 AM
root / root
0755
rpmdb
19.742 KB
5 Apr 2026 1.49 AM
root / root
0755
rpmkeys
15.594 KB
5 Apr 2026 1.49 AM
root / root
0755
rpmquery
23.633 KB
5 Apr 2026 1.49 AM
root / root
0755
rpmverify
23.633 KB
5 Apr 2026 1.49 AM
root / root
0755
rsync
574.773 KB
16 Jun 2026 6.30 PM
root / root
0755
rsync-ssl
5.012 KB
26 Sep 2021 11.44 PM
root / root
0755
run-parts
1.94 KB
11 Apr 2022 7.54 PM
root / root
0755
run-with-aspell
0.087 KB
26 Jan 2022 9.47 PM
root / root
0755
runcon
35.461 KB
10 Sep 2026 5.32 PM
root / root
0755
rvi
1.38 MB
10 Sep 2026 5.27 PM
root / root
0755
rview
1.38 MB
10 Sep 2026 5.27 PM
root / root
0755
s-nail
1013.25 KB
17 Dec 2025 11.27 AM
root / root
0755
sadf
458.844 KB
15 Apr 2026 10.16 AM
root / root
0755
sar
135.672 KB
15 Apr 2026 10.16 AM
root / root
0755
sccmap
23.367 KB
3 Apr 2024 11.16 AM
root / root
0755
scl
39.547 KB
7 Apr 2023 1.57 AM
root / root
0755
scl_enabled
0.256 KB
27 Jul 2021 3.14 PM
root / root
0755
scl_source
1.884 KB
27 Jul 2021 3.14 PM
root / root
0755
scp
132.914 KB
29 Jul 2026 11.09 PM
root / root
0755
screen
484.211 KB
4 Jan 2022 7.53 AM
root / screen
2755
script
51.578 KB
4 Apr 2026 10.15 PM
root / root
0755
scriptlive
43.477 KB
4 Apr 2026 10.15 PM
root / root
0755
scriptreplay
35.297 KB
4 Apr 2026 10.15 PM
root / root
0755
scsi-rescan
38.088 KB
4 Aug 2026 10.02 PM
root / root
0755
scsi_logging_level
8.387 KB
25 Mar 2016 2.46 AM
root / root
0755
scsi_mandat
3.521 KB
22 Oct 2017 5.32 PM
root / root
0755
scsi_readcap
1.3 KB
15 May 2013 1.35 PM
root / root
0755
scsi_ready
1.099 KB
15 May 2013 1.35 PM
root / root
0755
scsi_satl
3.744 KB
17 Jul 2020 3.50 AM
root / root
0755
scsi_start
1.259 KB
15 May 2013 1.35 PM
root / root
0755
scsi_stop
1.443 KB
15 May 2013 1.35 PM
root / root
0755
scsi_temperature
0.918 KB
15 May 2013 1.35 PM
root / root
0755
sctp_darn
43.984 KB
30 Apr 2024 8.27 PM
root / root
0755
sctp_status
31.43 KB
30 Apr 2024 8.27 PM
root / root
0755
sctp_test
35.5 KB
30 Apr 2024 8.27 PM
root / root
0755
sdiff
44.203 KB
29 Jan 2022 6.15 PM
root / root
0755
secon
28.25 KB
4 Apr 2026 11.52 PM
root / root
0755
sed
112.836 KB
4 Apr 2026 8.24 PM
root / root
0755
sedismod
289.016 KB
3 Apr 2024 10.07 AM
root / root
0755
sedispol
219.93 KB
3 Apr 2024 10.07 AM
root / root
0755
semodule_expand
15.117 KB
4 Apr 2026 11.52 PM
root / root
0755
semodule_link
15.133 KB
4 Apr 2026 11.52 PM
root / root
0755
semodule_package
19.164 KB
4 Apr 2026 11.52 PM
root / root
0755
semodule_unpackage
15.125 KB
4 Apr 2026 11.52 PM
root / root
0755
sensors
32.352 KB
10 Feb 2022 7.46 AM
root / root
0755
sensors-conf-convert
13.327 KB
10 Feb 2022 7.46 AM
root / root
0755
seq
47.594 KB
10 Sep 2026 5.32 PM
root / root
0755
sestatus
23.125 KB
4 Apr 2026 11.52 PM
root / root
0755
setarch
27.477 KB
4 Apr 2026 10.15 PM
root / root
0755
setfacl
43.375 KB
21 Jul 2026 3.58 PM
root / root
0755
setfattr
27.211 KB
26 Aug 2026 4.52 PM
root / root
0755
setfont
51.641 KB
20 Aug 2026 6.48 PM
root / root
0755
setkeycodes
15.203 KB
20 Aug 2026 6.48 PM
root / root
0755
setleds
19.273 KB
20 Aug 2026 6.48 PM
root / root
0755
setmetamode
15.305 KB
20 Aug 2026 6.48 PM
root / root
0755
setpriv
39.344 KB
4 Apr 2026 10.15 PM
root / root
0755
setsid
15.148 KB
4 Apr 2026 10.15 PM
root / root
0755
setterm
35.328 KB
4 Apr 2026 10.15 PM
root / root
0755
setup-nsssysinit
1.507 KB
20 Aug 2026 2.10 AM
root / root
0755
setup-nsssysinit.sh
1.507 KB
20 Aug 2026 2.10 AM
root / root
0755
setvtrgb
15.266 KB
20 Aug 2026 6.48 PM
root / root
0755
sfdp
15.234 KB
3 Apr 2024 11.16 AM
root / root
0755
sftp
157.094 KB
29 Jul 2026 11.09 PM
root / root
0755
sg
40.766 KB
8 Apr 2026 7.49 PM
root / root
4755
sg_bg_ctl
15.344 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_compare_and_write
27.766 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_copy_results
24.07 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_dd
55.383 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_decode_sense
15.664 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_emc_trespass
15.133 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_format
40.234 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_get_config
36.172 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_get_elem_status
27.641 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_get_lba_status
23.805 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_ident
15.43 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_inq
120.703 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_logs
152.898 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_luns
23.664 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_map
19.188 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_map26
27.656 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_modes
46.992 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_opcodes
35.953 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_persist
36.93 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_prevent
15.328 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_raw
27.758 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_rbuf
23.609 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_rdac
15.117 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_read
27.195 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_read_attr
37.523 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_read_block_limits
15.375 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_read_buffer
28.352 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_read_long
15.539 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_readcap
23.656 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_reassign
15.492 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_referrals
15.508 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_rep_pip
15.414 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_rep_zones
27.836 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_requests
23.602 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_reset
15.523 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_reset_wp
15.445 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_rmsn
15.336 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_rtpg
15.438 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_safte
23.547 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_sanitize
27.859 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_sat_identify
19.586 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_sat_phy_event
19.859 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_sat_read_gplog
19.57 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_sat_set_features
19.531 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_scan
19.188 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_seek
19.734 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_senddiag
28.094 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_ses
121.055 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_ses_microcode
28.25 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_start
19.719 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_stpg
23.555 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_stream_ctl
19.547 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_sync
15.508 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_test_rwbuf
19.516 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_timestamp
23.633 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_turs
27.617 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_unmap
23.625 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_verify
19.75 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_vpd
119.492 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_wr_mode
23.555 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_write_buffer
28.094 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_write_long
15.594 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_write_same
27.82 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_write_verify
27.656 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_write_x
60.578 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_xcopy
43.367 KB
4 Aug 2026 10.03 PM
root / root
0755
sg_zone
19.641 KB
4 Aug 2026 10.03 PM
root / root
0755
sginfo
73.594 KB
4 Aug 2026 10.03 PM
root / root
0755
sgm_dd
39.344 KB
4 Aug 2026 10.03 PM
root / root
0755
sgp_dd
43.547 KB
4 Aug 2026 10.03 PM
root / root
0755
sh
1.32 MB
30 Apr 2024 2.33 PM
root / root
0755
sha1hmac
35.266 KB
1 Apr 2024 7.12 PM
root / root
0755
sha1sum
39.445 KB
10 Sep 2026 5.32 PM
root / root
0755
sha224hmac
35.266 KB
1 Apr 2024 7.12 PM
root / root
0755
sha224sum
39.445 KB
10 Sep 2026 5.32 PM
root / root
0755
sha256hmac
35.266 KB
1 Apr 2024 7.12 PM
root / root
0755
sha256sum
39.445 KB
10 Sep 2026 5.32 PM
root / root
0755
sha384hmac
35.266 KB
1 Apr 2024 7.12 PM
root / root
0755
sha384sum
39.445 KB
10 Sep 2026 5.32 PM
root / root
0755
sha512hmac
35.266 KB
1 Apr 2024 7.12 PM
root / root
0755
sha512sum
39.445 KB
10 Sep 2026 5.32 PM
root / root
0755
shasum
9.66 KB
11 Feb 2022 4.24 PM
root / root
0755
showconsolefont
19.289 KB
20 Aug 2026 6.48 PM
root / root
0755
showkey
19.227 KB
20 Aug 2026 6.48 PM
root / root
0755
shred
51.68 KB
10 Sep 2026 5.32 PM
root / root
0755
shuf
47.805 KB
10 Sep 2026 5.32 PM
root / root
0755
sieve-dump
37.883 KB
31 Aug 2026 4.03 PM
root / root
0755
sieve-filter
43.344 KB
31 Aug 2026 4.03 PM
root / root
0755
sieve-test
43.273 KB
31 Aug 2026 4.03 PM
root / root
0755
sievec
38.133 KB
31 Aug 2026 4.03 PM
root / root
0755
signver
39.602 KB
20 Aug 2026 2.11 AM
root / root
0755
size
31.609 KB
4 Apr 2026 9.15 PM
root / root
0755
skill
31.398 KB
30 Apr 2024 4.43 PM
root / root
0755
slabinfo
42.953 KB
11 Sep 2026 1.34 PM
root / root
0755
slabtop
23.422 KB
30 Apr 2024 4.43 PM
root / root
0755
sleep
31.469 KB
10 Sep 2026 5.32 PM
root / root
0755
slencheck
15.125 KB
9 Sep 2026 8.12 AM
root / root
0755
sm3hmac
35.266 KB
1 Apr 2024 7.12 PM
root / root
0755
snice
31.398 KB
30 Apr 2024 4.43 PM
root / root
0755
socat
386.922 KB
12 Feb 2026 6.05 PM
root / root
0755
soelim
32.18 KB
1 Feb 2022 10.44 AM
root / root
0755
soelim.groff
32.18 KB
1 Feb 2022 10.44 AM
root / root
0755
sort
112.898 KB
10 Sep 2026 5.32 PM
root / root
0755
sotruss
4.182 KB
3 Aug 2026 10.12 AM
root / root
0755
spell
0.122 KB
8 Oct 2019 12.15 AM
root / root
0755
splain
18.956 KB
28 Jul 2025 3.54 AM
root / root
0755
split
52.109 KB
10 Sep 2026 5.32 PM
root / root
0755
sprof
35.445 KB
3 Aug 2026 10.14 AM
root / root
0755
sqlite3
1.54 MB
24 Aug 2026 12.07 PM
root / root
0755
ssh
896.383 KB
29 Jul 2026 11.09 PM
root / root
0755
ssh-add
305.719 KB
29 Jul 2026 11.09 PM
root / root
0755
ssh-agent
317.703 KB
29 Jul 2026 11.09 PM
root / root
0755
ssh-copy-id
13.842 KB
29 Jul 2026 11.09 PM
root / root
0755
ssh-keygen
475.414 KB
29 Jul 2026 11.09 PM
root / root
0755
ssh-keyscan
338.234 KB
29 Jul 2026 11.09 PM
root / root
0755
ssltap
71.539 KB
20 Aug 2026 2.11 AM
root / root
0755
sss_ssh_authorizedkeys
23.289 KB
23 Jul 2026 7.31 PM
root / root
0755
sss_ssh_knownhostsproxy
27.297 KB
23 Jul 2026 7.31 PM
root / root
0755
stat
79.852 KB
10 Sep 2026 5.32 PM
root / root
0755
stdbuf
43.555 KB
10 Sep 2026 5.32 PM
root / root
0755
strace
2.08 MB
12 Mar 2025 7.11 PM
root / root
0755
strace-log-merge
1.835 KB
19 Jul 2024 12.18 PM
root / root
0755
stream
15.094 KB
22 Jul 2026 8.31 AM
root / root
0755
streamzip
7.661 KB
29 Jun 2026 5.31 AM
root / root
0755
strings
31.742 KB
4 Apr 2026 9.15 PM
root / root
0755
strip
185.359 KB
4 Apr 2026 9.15 PM
root / root
0755
stty
75.641 KB
10 Sep 2026 5.32 PM
root / root
0755
stunnel
239.32 KB
2 Oct 2024 9.15 PM
root / root
0755
su
55.602 KB
4 Apr 2026 10.15 PM
root / wheel
4750
sudo
290.711 KB
21 May 2026 1.23 AM
root / root
4111
sudoedit
290.711 KB
21 May 2026 1.23 AM
root / root
4111
sudoreplay
97.547 KB
21 May 2026 1.23 AM
root / root
0111
sum
35.383 KB
10 Sep 2026 5.32 PM
root / root
0755
sw-engine
24.14 MB
1 Jan 1990 12.00 PM
root / root
0755
sxpm
31.578 KB
1 Apr 2024 6.32 PM
root / root
0755
sync
35.352 KB
10 Sep 2026 5.32 PM
root / root
0755
systemctl
298.414 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-analyze
201.578 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-ask-password
19.461 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-cat
19.266 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-cgls
23.469 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-cgtop
39.414 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-creds
43.805 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-cryptenroll
72.078 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-delta
27.313 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-detect-virt
19.258 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-dissect
47.781 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-escape
23.258 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-firstboot
56.086 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-hwdb
15.281 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-id128
27.375 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-inhibit
23.313 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-machine-id-setup
19.547 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-mount
60.031 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-notify
23.313 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-path
19.258 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-repart
169.266 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-run
64.023 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-socket-activate
27.352 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-stdio-bridge
23.266 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-sysext
47.758 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-sysusers
72.352 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-tmpfiles
124.539 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-tty-ask-password-agent
39.367 KB
25 Jun 2026 12.28 AM
root / root
0755
systemd-umount
60.031 KB
25 Jun 2026 12.28 AM
root / root
0755
tabs
19.164 KB
21 Sep 2025 9.23 AM
root / root
0755
tac
100.398 KB
10 Sep 2026 5.32 PM
root / root
0755
tail
67.906 KB
10 Sep 2026 5.32 PM
root / root
0755
tapestat
27.367 KB
15 Apr 2026 10.16 AM
root / root
0755
tar
522.289 KB
31 Aug 2026 2.49 PM
root / root
0755
taskset
23.227 KB
4 Apr 2026 10.15 PM
root / root
0755
tbl
130.859 KB
1 Feb 2022 10.44 AM
root / root
0755
tclsh
15.688 KB
15 Oct 2022 9.29 PM
root / root
0755
tclsh8.6
15.688 KB
15 Oct 2022 9.29 PM
root / root
0755
tcptraceroute
1.552 KB
12 Mar 2025 11.57 PM
root / root
0755
tdspool
257.859 KB
11 Aug 2026 8.13 PM
root / root
0755
team2bond
15.76 KB
23 Jan 2023 7.53 PM
root / root
0755
teamd
166.594 KB
23 Jan 2023 7.53 PM
root / root
0755
teamdctl
37.117 KB
23 Jan 2023 7.53 PM
root / root
0755
teamnl
23.258 KB
23 Jan 2023 7.53 PM
root / root
0755
tee
35.492 KB
10 Sep 2026 5.32 PM
root / root
0755
test
43.617 KB
10 Sep 2026 5.32 PM
root / root
0755
tic
87.789 KB
21 Sep 2025 9.23 AM
root / root
0755
timedatectl
47.664 KB
25 Jun 2026 12.28 AM
root / root
0755
timeout
35.984 KB
10 Sep 2026 5.32 PM
root / root
0755
tload
19.336 KB
30 Apr 2024 4.43 PM
root / root
0755
tmon
42.484 KB
11 Sep 2026 1.34 PM
root / root
0755
tmpwatch
36.031 KB
11 Feb 2022 11.52 AM
root / root
0755
toe
23.227 KB
21 Sep 2025 9.23 AM
root / root
0755
top
132.273 KB
30 Apr 2024 4.43 PM
root / root
0755
touch
91.844 KB
10 Sep 2026 5.32 PM
root / root
0755
tput
27.25 KB
21 Sep 2025 9.23 AM
root / root
0755
tr
43.68 KB
10 Sep 2026 5.32 PM
root / root
0755
tracepath
19.219 KB
20 Oct 2025 12.44 PM
root / root
0755
traceroute
77.289 KB
12 Mar 2025 11.57 PM
root / root
0755
traceroute6
77.289 KB
12 Mar 2025 11.57 PM
root / root
0755
tracker3
611.078 KB
23 Jan 2023 3.49 PM
root / root
0755
tred
15.352 KB
3 Apr 2024 11.16 AM
root / root
0755
troff
732.07 KB
1 Feb 2022 10.44 AM
root / root
0755
true
27.281 KB
10 Sep 2026 5.32 PM
root / root
0755
truncate
35.477 KB
10 Sep 2026 5.32 PM
root / root
0755
trust
268.883 KB
3 Aug 2026 2.23 PM
root / root
0755
tset
27.336 KB
21 Sep 2025 9.23 AM
root / root
0755
tsort
47.602 KB
10 Sep 2026 5.32 PM
root / root
0755
tsql
253.75 KB
11 Aug 2026 8.13 PM
root / root
0755
tty
31.469 KB
10 Sep 2026 5.32 PM
root / root
0755
turbostat
168.563 KB
11 Sep 2026 1.34 PM
root / root
0755
twopi
15.234 KB
3 Apr 2024 11.16 AM
root / root
0755
type
0.031 KB
30 Apr 2024 2.33 PM
root / root
0755
tzselect
14.992 KB
3 Aug 2026 10.11 AM
root / root
0755
uapi
3.32 MB
18 Aug 2026 4.57 AM
root / root
0755
udevadm
587.852 KB
25 Jun 2026 12.28 AM
root / root
0755
udisksctl
59.602 KB
20 Oct 2025 1.58 PM
root / root
0755
ul
23.258 KB
4 Apr 2026 10.15 PM
root / root
0755
ulimit
0.033 KB
30 Apr 2024 2.33 PM
root / root
0755
ulockmgr_server
19.375 KB
12 Mar 2025 7.30 PM
root / root
0755
umask
0.032 KB
30 Apr 2024 2.33 PM
root / root
0755
umount
35.266 KB
4 Apr 2026 10.15 PM
root / root
4755
unalias
0.034 KB
30 Apr 2024 2.33 PM
root / root
0755
uname
31.477 KB
10 Sep 2026 5.32 PM
root / root
0755
uname26
27.477 KB
4 Apr 2026 10.15 PM
root / root
0755
unexpand
39.531 KB
10 Sep 2026 5.32 PM
root / root
0755
unflatten
15.367 KB
3 Apr 2024 11.16 AM
root / root
0755
unicode_start
2.571 KB
20 Aug 2026 6.47 PM
root / root
0755
unicode_stop
0.358 KB
27 Feb 2012 10.27 AM
root / root
0755
uniq
43.633 KB
10 Sep 2026 5.32 PM
root / root
0755
unlink
31.469 KB
10 Sep 2026 5.32 PM
root / root
0755
unpigz
132.836 KB
12 Mar 2025 11.06 PM
root / root
0755
unshare
31.555 KB
4 Apr 2026 10.15 PM
root / root
0755
unxz
84.938 KB
8 Jun 2022 8.30 AM
root / root
0755
unzip
195.984 KB
9 Apr 2026 11.24 AM
root / root
0755
unzipsfx
87.703 KB
9 Apr 2026 11.24 AM
root / root
0755
update-ca-trust
4.361 KB
19 Nov 2025 9.34 AM
root / root
0755
update-crypto-policies
0.085 KB
24 Feb 2026 11.47 AM
root / root
0755
update-gtk-immodules
0.309 KB
7 Apr 2023 7.55 AM
root / root
0755
update-mime-database
59.867 KB
6 Apr 2023 11.20 PM
root / root
0755
upower
23.875 KB
11 Feb 2022 7.06 AM
root / root
0755
uptime
15.289 KB
30 Apr 2024 4.43 PM
root / root
0755
users
31.5 KB
10 Sep 2026 5.32 PM
root / root
0755
usleep
15.289 KB
12 Mar 2025 7.47 PM
root / root
0755
utmpdump
23.211 KB
4 Apr 2026 10.15 PM
root / root
0755
uuidgen
19.156 KB
4 Apr 2026 10.15 PM
root / root
0755
uuidparse
23.211 KB
4 Apr 2026 10.15 PM
root / root
0755
vdir
137.453 KB
10 Sep 2026 5.32 PM
root / root
0755
vi
1.38 MB
10 Sep 2026 5.27 PM
root / root
0755
view
0.143 KB
10 Sep 2026 5.27 PM
root / root
0755
vimdot
1.061 KB
3 Apr 2024 11.16 AM
root / root
0755
vlock
23.453 KB
20 Aug 2026 6.48 PM
root / root
0755
vmstat
39.414 KB
30 Apr 2024 4.43 PM
root / root
0755
w
23.367 KB
30 Apr 2024 4.43 PM
root / root
0755
wait
0.031 KB
30 Apr 2024 2.33 PM
root / root
0755
wall
23.227 KB
4 Apr 2026 10.15 PM
root / root
0755
watch
27.867 KB
30 Apr 2024 4.43 PM
root / root
0755
watchgnupg
23.203 KB
15 Jan 2026 9.34 PM
root / root
0755
wc
43.531 KB
10 Sep 2026 5.32 PM
root / root
0755
wdctl
31.328 KB
4 Apr 2026 10.15 PM
root / root
0755
wget
521.211 KB
1 Sep 2026 4.41 PM
root / root
0755
whatis
48.523 KB
21 Sep 2025 12.57 PM
root / root
0755
whatis.man-db
48.523 KB
21 Sep 2025 12.57 PM
root / root
0755
whereis
31.844 KB
4 Apr 2026 10.15 PM
root / root
0755
which
27.891 KB
5 Aug 2025 6.19 AM
root / root
0755
whiptail
31.93 KB
10 Feb 2022 1.07 PM
root / root
0755
who
51.594 KB
10 Sep 2026 5.32 PM
root / root
0755
whoami
31.469 KB
10 Sep 2026 5.32 PM
root / root
0755
wireplumber
23.625 KB
15 Apr 2026 10.19 AM
root / root
0755
withsctp
0.244 KB
30 Apr 2024 8.27 PM
root / root
0755
wmf2eps
19.719 KB
15 Oct 2022 12.42 PM
root / root
0755
wmf2fig
19.813 KB
15 Oct 2022 12.42 PM
root / root
0755
wmf2gd
15.813 KB
15 Oct 2022 12.42 PM
root / root
0755
wmf2svg
19.82 KB
15 Oct 2022 12.42 PM
root / root
0755
wmf2x
15.703 KB
15 Oct 2022 12.42 PM
root / root
0755
word-list-compress
15.703 KB
26 Jan 2022 9.47 PM
root / root
0755
wpctl
72.031 KB
15 Apr 2026 10.19 AM
root / root
0755
wpexec
19.602 KB
15 Apr 2026 10.19 AM
root / root
0755
write
23.242 KB
4 Apr 2026 10.15 PM
root / tty
2755
wsrep_sst_backup
2.39 KB
19 Aug 2026 9.01 AM
root / root
0755
wsrep_sst_common
68.497 KB
19 Aug 2026 9.01 AM
root / root
0644
wsrep_sst_mariabackup
52.993 KB
19 Aug 2026 9.01 AM
root / root
0755
wsrep_sst_mysqldump
8.102 KB
19 Aug 2026 9.01 AM
root / root
0755
wsrep_sst_rsync
30.735 KB
19 Aug 2026 9.01 AM
root / root
0755
wsrep_sst_rsync_wan
30.735 KB
19 Aug 2026 9.01 AM
root / root
0755
x86_64
27.477 KB
4 Apr 2026 10.15 PM
root / root
0755
x86_64-redhat-linux-c++
1.05 MB
4 Apr 2026 10.27 PM
root / root
0755
x86_64-redhat-linux-g++
1.05 MB
4 Apr 2026 10.27 PM
root / root
0755
x86_64-redhat-linux-gcc
1.04 MB
4 Apr 2026 10.27 PM
root / root
0755
x86_64-redhat-linux-gcc-11
1.04 MB
4 Apr 2026 10.27 PM
root / root
0755
x86_64-redhat-linux-gnu-pkg-config
0.81 KB
6 Apr 2023 8.27 PM
root / root
0755
x86_energy_perf_policy
38.727 KB
11 Sep 2026 1.34 PM
root / root
0755
xargs
64.094 KB
2 Oct 2024 9.04 PM
root / root
0755
xb-tool
31.469 KB
9 Apr 2026 12.26 PM
root / root
0755
xdg-dbus-proxy
56.539 KB
15 Oct 2022 8.05 PM
root / root
0755
xgettext
296.703 KB
27 Sep 2023 6.53 AM
root / root
0755
xml2-config
1.833 KB
31 Aug 2026 10.11 AM
root / root
0755
xmlcatalog
23.156 KB
31 Aug 2026 10.12 AM
root / root
0755
xmllint
80.555 KB
31 Aug 2026 10.12 AM
root / root
0755
xmlwf
39.625 KB
8 Sep 2026 9.58 AM
root / root
0755
xslt-config
2.577 KB
10 May 2015 2.11 PM
root / root
0755
xsltproc
31.234 KB
25 Jun 2026 12.22 AM
root / root
0755
xsubpp
4.961 KB
16 Feb 2022 8.56 AM
root / root
0755
xz
84.938 KB
8 Jun 2022 8.30 AM
root / root
0755
xzcat
84.938 KB
8 Jun 2022 8.30 AM
root / root
0755
xzcmp
6.481 KB
8 Jun 2022 8.30 AM
root / root
0755
xzdec
15.852 KB
8 Jun 2022 8.30 AM
root / root
0755
xzdiff
6.481 KB
8 Jun 2022 8.30 AM
root / root
0755
xzegrep
5.77 KB
8 Jun 2022 8.30 AM
root / root
0755
xzfgrep
5.77 KB
8 Jun 2022 8.30 AM
root / root
0755
xzgrep
5.77 KB
8 Jun 2022 8.30 AM
root / root
0755
xzless
1.761 KB
8 Jun 2022 8.30 AM
root / root
0755
xzmore
2.115 KB
8 Jun 2022 8.30 AM
root / root
0755
yat2m
40.039 KB
9 Feb 2022 11.24 PM
root / root
0755
yes
31.313 KB
10 Sep 2026 5.32 PM
root / root
0755
ypdomainname
23.836 KB
14 Feb 2022 11.22 AM
root / root
0755
yum
2.045 KB
20 May 2026 7.48 PM
root / root
0755
yum-builddep
3.604 KB
15 Apr 2026 12.44 PM
root / root
0755
yum-config-manager
3.604 KB
15 Apr 2026 12.44 PM
root / root
0755
yum-debug-dump
3.604 KB
15 Apr 2026 12.44 PM
root / root
0755
yum-debug-restore
3.604 KB
15 Apr 2026 12.44 PM
root / root
0755
yum-groups-manager
3.604 KB
15 Apr 2026 12.44 PM
root / root
0755
yumdownloader
3.604 KB
15 Apr 2026 12.44 PM
root / root
0755
zcat
1.941 KB
31 Aug 2026 4.16 PM
root / root
0755
zcmp
1.643 KB
31 Aug 2026 4.16 PM
root / root
0755
zdiff
6.3 KB
31 Aug 2026 4.16 PM
root / root
0755
zdump
27.344 KB
3 Aug 2026 10.14 AM
root / root
0755
zegrep
0.032 KB
31 Aug 2026 4.16 PM
root / root
0755
zfgrep
0.032 KB
31 Aug 2026 4.16 PM
root / root
0755
zforce
2.036 KB
31 Aug 2026 4.16 PM
root / root
0755
zgrep
7.926 KB
31 Aug 2026 4.16 PM
root / root
0755
zip
221.094 KB
7 Apr 2023 2.02 PM
root / root
0755
zipcloak
75.695 KB
7 Apr 2023 2.02 PM
root / root
0755
zipdetails
58.563 KB
29 Jun 2026 5.31 AM
root / root
0755
zipgrep
2.888 KB
10 Oct 2008 5.40 PM
root / root
0755
zipinfo
195.984 KB
9 Apr 2026 11.24 AM
root / root
0755
zipnote
67.609 KB
7 Apr 2023 2.02 PM
root / root
0755
zipsplit
63.578 KB
7 Apr 2023 2.02 PM
root / root
0755
zless
2.158 KB
31 Aug 2026 4.16 PM
root / root
0755
zmore
1.803 KB
31 Aug 2026 4.16 PM
root / root
0755
znew
4.474 KB
31 Aug 2026 4.16 PM
root / root
0755
zone2json
1.35 MB
10 Aug 2026 7.14 PM
root / root
0755
zone2sql
1.37 MB
10 Aug 2026 7.14 PM
root / root
0755
zsoelim
32.18 KB
1 Feb 2022 10.44 AM
root / root
0755

✘✘ GRAYBYTE WORDPRESS FILE MANAGER @ 2026 CONTACT ME ✘✘
Static GIF Static GIF