X7ROOT File Manager
Current Path:
/usr/share/system-config-printer
usr
/
share
/
system-config-printer
/
📁
..
📄
HIG.py
(57 B)
📄
HIG.pyc
(231 B)
📄
HIG.pyo
(231 B)
📄
PhysicalDevice.py
(10.69 KB)
📄
PhysicalDevice.pyc
(7.72 KB)
📄
PhysicalDevice.pyo
(7.72 KB)
📄
SearchCriterion.py
(1.32 KB)
📄
SearchCriterion.pyc
(982 B)
📄
SearchCriterion.pyo
(982 B)
📄
ToolbarSearchEntry.py
(6.91 KB)
📄
ToolbarSearchEntry.pyc
(6.43 KB)
📄
ToolbarSearchEntry.pyo
(6.43 KB)
📄
applet.py
(15.71 KB)
📄
applet.pyc
(14.03 KB)
📄
applet.pyo
(14.03 KB)
📄
asyncconn.py
(9.63 KB)
📄
asyncconn.pyc
(9.8 KB)
📄
asyncconn.pyo
(9.8 KB)
📄
asyncipp.py
(26.02 KB)
📄
asyncipp.pyc
(20.5 KB)
📄
asyncipp.pyo
(20.5 KB)
📄
asyncpk1.py
(25.68 KB)
📄
asyncpk1.pyc
(20.4 KB)
📄
asyncpk1.pyo
(20.4 KB)
📄
authconn.py
(18.34 KB)
📄
authconn.pyc
(15.74 KB)
📄
authconn.pyo
(15.74 KB)
📄
check-device-ids.py
(10.9 KB)
📄
check-device-ids.pyc
(8.13 KB)
📄
check-device-ids.pyo
(8.13 KB)
📄
config.py
(1.05 KB)
📄
config.pyc
(370 B)
📄
config.pyo
(370 B)
📄
cupspk.py
(27.35 KB)
📄
cupspk.pyc
(18.01 KB)
📄
cupspk.pyo
(18.01 KB)
📄
debug.py
(1.62 KB)
📄
debug.pyc
(1.55 KB)
📄
debug.pyo
(1.55 KB)
📄
dnssdresolve.py
(4.91 KB)
📄
dnssdresolve.pyc
(5.17 KB)
📄
dnssdresolve.pyo
(5.17 KB)
📄
errordialogs.py
(3.13 KB)
📄
errordialogs.pyc
(2.57 KB)
📄
errordialogs.pyo
(2.57 KB)
📄
firewallsettings.py
(9.25 KB)
📄
firewallsettings.pyc
(8.69 KB)
📄
firewallsettings.pyo
(8.69 KB)
📄
gtkinklevel.py
(4.71 KB)
📄
gtkinklevel.pyc
(4.18 KB)
📄
gtkinklevel.pyo
(4.18 KB)
📄
gui.py
(2.12 KB)
📄
gui.pyc
(1.76 KB)
📄
gui.pyo
(1.76 KB)
📁
icons
📄
install-printerdriver.py
(2.82 KB)
📄
install-printerdriver.pyc
(2.42 KB)
📄
install-printerdriver.pyo
(2.42 KB)
📄
installpackage.py
(1.34 KB)
📄
installpackage.pyc
(1.1 KB)
📄
installpackage.pyo
(1.1 KB)
📄
jobviewer.py
(91.15 KB)
📄
jobviewer.pyc
(64.36 KB)
📄
jobviewer.pyo
(64.36 KB)
📄
monitor.py
(31.96 KB)
📄
monitor.pyc
(23 KB)
📄
monitor.pyo
(23 KB)
📄
newprinter.py
(164.81 KB)
📄
newprinter.pyc
(102.42 KB)
📄
newprinter.pyo
(102.42 KB)
📄
options.py
(18.73 KB)
📄
options.pyc
(16.57 KB)
📄
options.pyo
(16.57 KB)
📄
optionwidgets.py
(8.78 KB)
📄
optionwidgets.pyc
(7.94 KB)
📄
optionwidgets.pyo
(7.94 KB)
📄
ppdcache.py
(7.41 KB)
📄
ppdcache.pyc
(6.1 KB)
📄
ppdcache.pyo
(6.1 KB)
📄
ppdippstr.py
(7.15 KB)
📄
ppdippstr.pyc
(5.64 KB)
📄
ppdippstr.pyo
(5.64 KB)
📄
ppdsloader.py
(10.78 KB)
📄
ppdsloader.pyc
(10.22 KB)
📄
ppdsloader.pyo
(10.22 KB)
📄
printerproperties.py
(78.52 KB)
📄
printerproperties.pyc
(51.48 KB)
📄
printerproperties.pyo
(51.48 KB)
📄
probe_printer.py
(15.24 KB)
📄
probe_printer.pyc
(13.82 KB)
📄
probe_printer.pyo
(13.82 KB)
📄
pysmb.py
(6.8 KB)
📄
pysmb.pyc
(5.47 KB)
📄
pysmb.pyo
(5.47 KB)
📄
scp-dbus-service.py
(19.04 KB)
📄
scp-dbus-service.pyc
(21.34 KB)
📄
scp-dbus-service.pyo
(21.34 KB)
📄
serversettings.py
(21.4 KB)
📄
serversettings.pyc
(16.15 KB)
📄
serversettings.pyo
(16.15 KB)
📄
smburi.py
(3.22 KB)
📄
smburi.pyc
(2.61 KB)
📄
smburi.pyo
(2.61 KB)
📄
statereason.py
(6.09 KB)
📄
statereason.pyc
(5.02 KB)
📄
statereason.pyo
(5.02 KB)
📄
system-config-printer.py
(80.8 KB)
📄
system-config-printer.pyc
(57.95 KB)
📄
system-config-printer.pyo
(57.95 KB)
📄
timedops.py
(8 KB)
📄
timedops.pyc
(8 KB)
📄
timedops.pyo
(8 KB)
📁
troubleshoot
📁
ui
📄
userdefault.py
(6.12 KB)
📄
userdefault.pyc
(5.34 KB)
📄
userdefault.pyo
(5.34 KB)
📁
xml
Editing: pysmb.py
#!/usr/bin/python ## system-config-printer ## CUPS backend ## Copyright (C) 2002, 2003, 2006, 2007, 2008, 2010, 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 errno from gettext import gettext as _ from gi.repository import Gtk import os import pwd import smbc from debug import * class _None(RuntimeError): pass try: NoEntryError = smbc.NoEntryError PermissionError = smbc.PermissionError ExistsError = smbc.ExistsError NotEmptyError = smbc.NotEmptyError TimedOutError = smbc.TimedOutError NoSpaceError = smbc.NoSpaceError except AttributeError: NoEntryError = PermissionError = ExistsError = _None NotEmptyError = TimedOutError = NoSpaceError = _None class AuthContext: def __init__ (self, parent=None, workgroup='', user='', passwd=''): self.passes = 0 self.has_failed = False self.auth_called = False self.tried_guest = False self.cancel = False self.use_user = user self.use_password = passwd self.use_workgroup = workgroup self.dialog_shown = False self.parent = parent def perform_authentication (self): self.passes += 1 if self.passes == 1: return 1 if not self.has_failed: return 0 debugprint ("pysmb: authentication pass: %d" % self.passes) if not self.auth_called: debugprint ("pysmb: auth callback not called?!") self.cancel = True return 0 self.has_failed = False if self.auth_called and not self.tried_guest: self.use_user = 'guest' self.use_password = '' self.tried_guest = True debugprint ("pysmb: try auth as guest") return 1 self.auth_called = False if self.dialog_shown: d = Gtk.MessageDialog (self.parent, Gtk.DialogFlags.MODAL | Gtk.DialogFlags.DESTROY_WITH_PARENT, Gtk.MessageType.ERROR, Gtk.ButtonsType.CLOSE) d.set_title (_("Not authorized")) d.set_markup ('<span weight="bold" size="larger">' + _("Not authorized") + '</span>\n\n' + _("The password may be incorrect.")) d.run () d.destroy () # After that, prompt d = Gtk.Dialog (_("Authentication"), self.parent, Gtk.DialogFlags.MODAL, (Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL, Gtk.STOCK_OK, Gtk.ResponseType.OK)) d.set_default_response (Gtk.ResponseType.OK) d.set_border_width (6) d.set_resizable (False) hbox = Gtk.HBox.new (False, 12) hbox.set_border_width (6) image = Gtk.Image () image.set_from_stock (Gtk.STOCK_DIALOG_AUTHENTICATION, Gtk.IconSize.DIALOG) hbox.pack_start (image, False, False, 0) vbox = Gtk.VBox (False, 12) label = Gtk.Label(label='<span weight="bold" size="larger">' + _("You must log in to access %s.").decode ('utf-8') % self.for_server + '</span>') label.set_use_markup (True) label.set_alignment (0, 0) label.set_line_wrap (True) vbox.pack_start (label, False, False, 0) table = Gtk.Table (3, 2) table.set_row_spacings (6) table.set_col_spacings (6) table.attach (Gtk.Label(label=_("Username:")), 0, 1, 0, 1, 0, 0) username_entry = Gtk.Entry () table.attach (username_entry, 1, 2, 0, 1, 0, 0) table.attach (Gtk.Label(label=_("Domain:")), 0, 1, 1, 2, 0, 0) domain_entry = Gtk.Entry () table.attach (domain_entry, 1, 2, 1, 2, 0, 0) table.attach (Gtk.Label(label=_("Password:")), 0, 1, 2, 3, 0, 0) password_entry = Gtk.Entry () password_entry.set_activates_default (True) password_entry.set_visibility (False) table.attach (password_entry, 1, 2, 2, 3, 0, 0) vbox.pack_start (table, False, False, 0) hbox.pack_start (vbox, False, False, 0) d.vbox.pack_start (hbox, False, False, 0) self.dialog_shown = True d.show_all () d.show_now () if self.use_user == 'guest': self.use_user = pwd.getpwuid (os.getuid ())[0] debugprint ("pysmb: try as %s" % self.use_user) username_entry.set_text (self.use_user) domain_entry.set_text (self.use_workgroup) d.set_keep_above (True) response = d.run () if response == Gtk.ResponseType.CANCEL: self.cancel = True d.destroy () return -1 self.use_user = username_entry.get_text () self.use_password = password_entry.get_text () self.use_workgroup = domain_entry.get_text () d.destroy () return 1 def initial_authentication (self): try: context = smbc.Context () self.use_workgroup = context.workgroup except: pass def failed (self, exc=None): self.has_failed = True debugprint ("pysmb: operation failed: %s" % repr (exc)) if exc: if (self.cancel or (type (exc) in [NoEntryError, ExistsError, NotEmptyError, TimedOutError, NoSpaceError]) or (type (exc) == RuntimeError and not (exc.args[0] in [errno.EACCES, errno.EPERM]))): raise exc def callback (self, server, share, workgroup, user, password): debugprint ("pysmb: got password callback") self.auth_called = True self.for_server = server self.for_share = share if self.passes == 1: self.initial_authentication () if self.use_user: if self.use_workgroup: workgroup = self.use_workgroup return (workgroup, self.use_user, self.use_password) user = '' password = '' return (workgroup, user, password)
Upload File
Create Folder