!C99Shell v.2.1 [PHP 7 Update] [1.12.2019]!

Software: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/5.4.16. PHP/5.4.16 

uname -a: Linux roko-bkp 3.10.0-1160.102.1.el7.x86_64 #1 SMP Tue Oct 17 15:42:21 UTC 2023 x86_64 

uid=48(apache) gid=48(apache) groups=48(apache),1003(webmaster) 

Safe-mode: OFF (not secure)

/usr/share/yum-cli/   drwxr-xr-x
Free 9.36 GB of 93.48 GB (10.02%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Feedback    Self remove    Logout    


Viewing file:     completion-helper.py (3.4 KB)      -rwxr-xr-x
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
#!/usr/bin/python -t
# -*- coding: utf-8 -*-
#
# Copyright (C) 2011 Ville Skyttä
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software Foundation,
# Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.


import shlex
import sys

import cli
import yumcommands
from yum.Errors import GroupsError, ConfigError, RepoError


class GroupsCompletionCommand(yumcommands.GroupsCommand):
    def doCommand(self, base, basecmd, extcmds):
        cmd, extcmds = self._grp_cmd(basecmd, extcmds)
        # case insensitivity is fine here because groupinstall etc are that too
        installed, available = base.doGroupLists(
            patterns=[get_pattern(extcmds)])
        if extcmds[0] in ("installed", "all"):
            for group in installed:
                print group.ui_name
        if extcmds[0] in ("available", "all"):
            for group in available:
                print group.ui_name

class ListCompletionCommand(yumcommands.ListCommand):
    def doCommand(self, base, basecmd, extcmds):
        def printPkgs(pkgs):
            for pkg in pkgs:
                if base.allowedMultipleInstalls(pkg):
                    print pkg.nvra
                else:
                    print pkg.na

        ypl = base.doPackageLists(pkgnarrow=extcmds[0],
                                  patterns=[get_pattern(extcmds)])
        if extcmds[0] in ("installed", "all"):
            printPkgs(ypl.installed)
        if extcmds[0] in ("available", "all"):
            printPkgs(ypl.available)

class RepoListCompletionCommand(yumcommands.RepoListCommand):
    def doCommand(self, base, basecmd, extcmds):
        import fnmatch
        pattern = get_pattern(extcmds)
        for repo in base.repos.repos.values():
            if fnmatch.fnmatch(repo.id, pattern) \
                    and (extcmds[0] == "all" or
                         (extcmds[0] == "enabled" and repo.isEnabled()) or
                         (extcmds[0] == "disabled" and not repo.isEnabled())):
                print repo.id


def get_pattern(extcmds):
    if len(extcmds) > 1:
        try: return shlex.split(extcmds[-1])[0] + "*"
        except (ValueError, IndexError): pass
    return "*"

def main(args):
    base = cli.YumBaseCli()
    base.setCacheDir = lambda *x: True # use the system cachedir
    base.yum_cli_commands.clear()
    base.registerCommand(GroupsCompletionCommand())
    base.registerCommand(ListCompletionCommand())
    base.registerCommand(RepoListCompletionCommand())
    base.getOptionsConfig(args)
    base.parseCommands()
    try:
        for repo in base.repos.listEnabled():
            repo.skip_if_unavailable = True
        base.doCommands()
    except (GroupsError, ConfigError, RepoError), e:
    # Any reason to not just catch YumBaseError ?
        base.logger.error(e)

if __name__ == "__main__":
    try:
        main(sys.argv[1:])
    except KeyboardInterrupt, e:
        sys.exit(1)

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ Read-Only ]

:: Make Dir ::
 
[ Read-Only ]
:: Make File ::
 
[ Read-Only ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v.2.1 [PHP 7 Update] [1.12.2019] maintained by KaizenLouie and updated by cermmik | C99Shell Github (MySQL update) | Generation time: 0.0039 ]--