Linux worldls-302.fr.planethoster.net 4.18.0-553.8.1.lve.el7h.x86_64 #1 SMP Thu Jul 4 15:19:33 UTC 2024 x86_64
LiteSpeed
Server IP : 10.185.0.203 & Your IP : 216.73.217.14
Domains :
Cant Read [ /etc/named.conf ]
User : gerathty
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
lib /
python2.7 /
site-packages /
yum /
Delete
Unzip
Name
Size
Permission
Date
Action
Errors.py
4.26
KB
-rwxr-xr-x
2022-08-15 15:42
Errors.pyc
9.08
KB
-rw-r--r--
2022-08-15 15:42
__init__.py
304.17
KB
-rwxr-xr-x
2022-08-15 15:42
__init__.pyc
199.58
KB
-rw-r--r--
2022-08-15 15:42
callbacks.py
5.64
KB
-rwxr-xr-x
2022-08-15 15:42
callbacks.pyc
6.23
KB
-rw-r--r--
2022-08-15 15:42
comps.py
31.59
KB
-rwxr-xr-x
2022-08-15 15:42
comps.pyc
26.87
KB
-rw-r--r--
2022-08-15 15:42
config.py
49.89
KB
-rwxr-xr-x
2022-08-15 15:42
config.pyc
48.02
KB
-rw-r--r--
2022-08-15 15:42
constants.py
4.94
KB
-rwxr-xr-x
2022-08-15 15:42
constants.pyc
3.46
KB
-rw-r--r--
2022-08-22 23:05
depsolve.py
74.05
KB
-rwxr-xr-x
2022-08-15 15:42
depsolve.pyc
46.75
KB
-rw-r--r--
2022-08-15 15:42
drpm.py
12.65
KB
-rwxr-xr-x
2022-08-15 15:42
drpm.pyc
10.69
KB
-rw-r--r--
2022-08-15 15:42
failover.py
5
KB
-rwxr-xr-x
2022-08-15 15:42
failover.pyc
5.24
KB
-rw-r--r--
2022-08-15 15:42
fssnapshots.py
10.16
KB
-rwxr-xr-x
2022-08-15 15:42
fssnapshots.pyc
9.75
KB
-rw-r--r--
2022-08-15 15:42
history.py
61.13
KB
-rwxr-xr-x
2022-08-15 15:42
history.pyc
53.31
KB
-rw-r--r--
2022-08-15 15:42
i18n.py
20.44
KB
-rwxr-xr-x
2022-08-15 15:42
i18n.pyc
16.05
KB
-rw-r--r--
2022-08-15 15:42
igroups.py
9.31
KB
-rwxr-xr-x
2022-08-15 15:42
igroups.pyc
10.22
KB
-rw-r--r--
2022-08-15 15:42
logginglevels.py
7.9
KB
-rwxr-xr-x
2022-08-15 15:42
logginglevels.pyc
6.51
KB
-rw-r--r--
2022-08-15 15:42
mdparser.py
6.26
KB
-rwxr-xr-x
2022-08-15 15:42
mdparser.pyc
7.58
KB
-rw-r--r--
2022-08-15 15:42
metalink.py
9.19
KB
-rwxr-xr-x
2022-08-15 15:42
metalink.pyc
8.84
KB
-rw-r--r--
2022-08-15 15:42
misc.py
39.57
KB
-rwxr-xr-x
2022-08-15 15:42
misc.pyc
39.58
KB
-rw-r--r--
2022-08-15 15:42
packageSack.py
40.79
KB
-rwxr-xr-x
2022-08-15 15:42
packageSack.pyc
41.88
KB
-rw-r--r--
2022-08-15 15:42
packages.py
84.1
KB
-rwxr-xr-x
2022-08-15 15:42
packages.pyc
84.51
KB
-rw-r--r--
2022-08-15 15:42
parser.py
7.97
KB
-rwxr-xr-x
2022-08-15 15:42
parser.pyc
6.5
KB
-rw-r--r--
2022-08-15 15:42
pgpmsg.py
53.5
KB
-rwxr-xr-x
2022-08-15 15:42
pgpmsg.pyc
38.27
KB
-rw-r--r--
2022-08-15 15:42
pkgtag_db.py
4.86
KB
-rwxr-xr-x
2022-08-15 15:42
pkgtag_db.pyc
5.06
KB
-rw-r--r--
2022-08-15 15:42
plugins.py
28.1
KB
-rwxr-xr-x
2022-08-15 15:42
plugins.pyc
29.1
KB
-rw-r--r--
2022-08-15 15:42
repoMDObject.py
11.23
KB
-rwxr-xr-x
2022-08-15 15:42
repoMDObject.pyc
9.17
KB
-rw-r--r--
2022-08-15 15:42
repos.py
16.53
KB
-rwxr-xr-x
2022-08-15 15:42
repos.pyc
17.38
KB
-rw-r--r--
2022-08-15 15:42
rpmsack.py
70.25
KB
-rwxr-xr-x
2022-08-15 15:42
rpmsack.pyc
58.36
KB
-rw-r--r--
2022-08-15 15:42
rpmtrans.py
24.84
KB
-rwxr-xr-x
2022-08-15 15:42
rpmtrans.pyc
22.54
KB
-rw-r--r--
2022-08-15 15:42
sqlitesack.py
69.76
KB
-rwxr-xr-x
2022-08-15 15:42
sqlitesack.pyc
53.75
KB
-rw-r--r--
2022-08-15 15:42
sqlutils.py
6.27
KB
-rwxr-xr-x
2022-08-15 15:42
sqlutils.pyc
5.6
KB
-rw-r--r--
2022-08-15 15:42
transactioninfo.py
33.78
KB
-rwxr-xr-x
2022-08-15 15:42
transactioninfo.pyc
30.29
KB
-rw-r--r--
2022-08-15 15:42
update_md.py
25.9
KB
-rwxr-xr-x
2022-08-15 15:42
update_md.pyc
21.72
KB
-rw-r--r--
2022-08-15 15:42
updateinfo.py
18.29
KB
-rwxr-xr-x
2022-08-15 15:42
updateinfo.pyc
16.36
KB
-rw-r--r--
2022-08-15 15:42
yumRepo.py
83.85
KB
-rwxr-xr-x
2022-08-15 15:42
yumRepo.pyc
64.83
KB
-rw-r--r--
2022-08-15 15:42
Save
Rename
#!/usr/bin/python -tt # 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 Library 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., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # Copyright 2009 Red Hat, Inc # written by seth vidal # parse sqlite tag database # return pkgnames and tag that was matched from sqlutils import sqlite, executeSQL, sql_esc from Errors import PkgTagsError import sqlutils import sys import misc def catchSqliteException(func): """This decorator converts sqlite exceptions into PkgTagsError""" def newFunc(*args, **kwargs): try: return func(*args, **kwargs) except sqlutils.sqlite.Error, e: # 2.4.x requires this, but 2.6.x complains about even hasattr() # of e.message ... *sigh* if sys.hexversion < 0x02050000: if hasattr(e,'message'): raise PkgTagsError, str(e.message) else: raise PkgTagsError, str(e) raise PkgTagsError, str(e) newFunc.__name__ = func.__name__ newFunc.__doc__ = func.__doc__ newFunc.__dict__.update(func.__dict__) return newFunc class PackageTagDB(object): @catchSqliteException def __init__(self, repoid, sqlite_file): self.sqlite_file = sqlite_file self.repoid = repoid # take a path to the sqlite tag db # open it and leave a cursor in place for the db self._conn = sqlite.connect(sqlite_file) self.cur = self._conn.cursor() def _getTagsCount(self): ''' Unused, so no need to cache. ''' for n in self._sql_exec("select count(*) from packagetags",): return n[0] count = property(fget=lambda self: self._getTagsCount(), doc="Number of entries in the pkgtag DB") @catchSqliteException def _sql_exec(self, sql, *args): """ Exec SQL against an MD of the repo, return a cursor. """ executeSQL(self.cur, sql, *args) return self.cur def search_tags(self, tag): """Search by tag name/glob Return dict of dict[packagename] = [stringmatched, stringmatched, ...]""" res = {} (tag, esc) = sql_esc(tag) query = "SELECT name, tag, score FROM packagetags where tag like ? %s" % esc tag = '%' + tag + '%' rows = self._sql_exec(query, (tag,)) for (name, tag, score) in rows: if name not in res: res[name] = [] res[name].append(tag) return res def search_names(self, name): """Search by package name/glob. Return dict of dict[packagename] = [tag1, tag2, tag3, tag4, ...]""" res = {} (name, esc) = sql_esc(name) query = "SELECT name, tag, score FROM packagetags where name like ?%s " % esc name = '%' + name + '%' rows = self._sql_exec(query, (name,)) for (name, tag, score) in rows: if name not in res: res[name] = [] res[name].append(tag) return res class PackageTags(object): def __init__(self): self.db_objs = {} def add(self, repoid, sqlite_file): if repoid in self.db_objs: raise PkgTagsError, "Already added tags from %s" % repoid dbobj = PackageTagDB(repoid, sqlite_file) self.db_objs[repoid] = dbobj def remove(self, repoid): if repoid in self.db_objs: del self.db_objs[repoid] else: raise PkgTagsError, "No tag db for %s" % repoid def search_names(self, name): res = {} for ptd in self.db_objs.values(): for (name, taglist) in ptd.search_names(name).items(): if not name in res: res[name] = [] res[name].extend(taglist) out = {} for (name, taglist) in res.items(): out[name] = misc.unique(taglist) return out def search_tags(self, tagname): res = {} for ptd in self.db_objs.values(): for (name, taglist) in ptd.search_tags(tagname).items(): if not name in res: res[name] = [] res[name].extend(taglist) out = {} for (name, taglist) in res.items(): out[name] = misc.unique(taglist) return out