1
0
mirror of https://github.com/gryf/wicd.git synced 2025-12-19 20:38:00 +01:00

attempting to migrate to python 3.x

This commit is contained in:
Guido Serra
2019-08-14 16:18:46 +02:00
parent 681beb13b1
commit 2a52b83583
27 changed files with 740 additions and 165 deletions

View File

@@ -1,31 +0,0 @@
experimental.wpr
install.log
uninstall.log
.bzrignore
vcsinfo.py
build
build/*
init/*/*
wpath.py*
man/wicd-cli.8
man/wicd-curses.8
man/wicd-manager-settings.conf.5
man/wicd-wired-settings.conf.5
man/wicd-wireless-settings.conf.5
man/wicd.8
man/nl/*
other/50-wicd-suspend.sh
other/55wicd
other/80-wicd-connect.sh
other/WHEREAREMYFILES
other/wicd.conf
other/postinst
other/wicd.logrotate
scripts/
translations/*
wicd/wpath.py
*tags
dist/
MANIFEST
debian/
.vscode/

6
.gitignore vendored
View File

@@ -1,3 +1,9 @@
wicd.egg-info/
*.bak
**/*.pyc
.venv/
.vscode/
.bzr/
experimental.wpr experimental.wpr
install.log install.log
uninstall.log uninstall.log

View File

@@ -52,13 +52,13 @@ try:
'org.wicd.daemon.config' 'org.wicd.daemon.config'
) )
except dbus.DBusException: except dbus.DBusException:
print('Error: Could not connect to the daemon. ' + \ print(('Error: Could not connect to the daemon. ' + \
'Please make sure it is running.') 'Please make sure it is running.'))
sys.exit(3) sys.exit(3)
if not daemon: if not daemon:
print('Error connecting to wicd via D-Bus. ' + \ print(('Error connecting to wicd via D-Bus. ' + \
'Please make sure the wicd service is running.') 'Please make sure the wicd service is running.'))
sys.exit(3) sys.exit(3)
parser = optparse.OptionParser() parser = optparse.OptionParser()
@@ -88,8 +88,8 @@ options, arguments = parser.parse_args()
op_performed = False op_performed = False
if not (options.wireless or options.wired) and not options.status: if not (options.wireless or options.wired) and not options.status:
print("Please use --wireless or --wired to specify " + \ print(("Please use --wireless or --wired to specify " + \
"the type of connection to operate on.") "the type of connection to operate on."))
if options.status: if options.status:
status, info = daemon.GetConnectionStatus() status, info = daemon.GetConnectionStatus()
@@ -104,27 +104,27 @@ if options.status:
connected = False connected = False
status_msg = misc._const_status_dict[status] status_msg = misc._const_status_dict[status]
print(_('Connection status') + ': ' + status_msg) print((_('Connection status') + ': ' + status_msg))
if connected: if connected:
print(_('Connection type') + ': ' + conn_type) print((_('Connection type') + ': ' + conn_type))
if status == misc.WIRELESS: if status == misc.WIRELESS:
strength = daemon.FormatSignalForPrinting(info[2]) strength = daemon.FormatSignalForPrinting(info[2])
print(_('Connected to $A at $B (IP: $C)') \ print((_('Connected to $A at $B (IP: $C)') \
.replace('$A', info[1]) \ .replace('$A', info[1]) \
.replace('$B', strength) \ .replace('$B', strength) \
.replace('$C', info[0])) .replace('$C', info[0])))
print(_('Network ID: $A') \ print((_('Network ID: $A') \
.replace('$A', info[3])) .replace('$A', info[3])))
else: else:
print(_('Connected to wired network (IP: $A)') \ print((_('Connected to wired network (IP: $A)') \
.replace('$A', info[0])) .replace('$A', info[0])))
else: else:
if status == misc.CONNECTING: if status == misc.CONNECTING:
if info[0] == 'wired': if info[0] == 'wired':
print(_('Connecting to wired network.')) print((_('Connecting to wired network.')))
elif info[0] == 'wireless': elif info[0] == 'wireless':
print(_('Connecting to wireless network "$A".') \ print((_('Connecting to wireless network "$A".') \
.replace('$A', info[1])) .replace('$A', info[1])))
op_performed = True op_performed = True
# functions # functions
@@ -163,15 +163,15 @@ if options.list_networks:
if options.wireless: if options.wireless:
print('#\tBSSID\t\t\tChannel\tESSID') print('#\tBSSID\t\t\tChannel\tESSID')
for network_id in range(0, wireless.GetNumberOfNetworks()): for network_id in range(0, wireless.GetNumberOfNetworks()):
print('%s\t%s\t%s\t%s' % (network_id, print(('%s\t%s\t%s\t%s' % (network_id,
wireless.GetWirelessProperty(network_id, 'bssid'), wireless.GetWirelessProperty(network_id, 'bssid'),
wireless.GetWirelessProperty(network_id, 'channel'), wireless.GetWirelessProperty(network_id, 'channel'),
wireless.GetWirelessProperty(network_id, 'essid'))) wireless.GetWirelessProperty(network_id, 'essid'))))
elif options.wired: elif options.wired:
print('#\tProfile name') print('#\tProfile name')
i = 0 i = 0
for profile in wired.GetWiredProfileList(): for profile in wired.GetWiredProfileList():
print('%s\t%s' % (i, profile)) print(('%s\t%s' % (i, profile)))
i += 1 i += 1
op_performed = True op_performed = True
@@ -184,24 +184,24 @@ if options.network_details:
network_id = wireless.GetCurrentNetworkID(0) network_id = wireless.GetCurrentNetworkID(0)
is_valid_wireless_network_id(network_id) is_valid_wireless_network_id(network_id)
# we're connected to a network, print IP # we're connected to a network, print IP
print("IP: %s" % wireless.GetWirelessIP(0)) print(("IP: %s" % wireless.GetWirelessIP(0)))
print("Essid: %s" % wireless.GetWirelessProperty(network_id, "essid")) print(("Essid: %s" % wireless.GetWirelessProperty(network_id, "essid")))
print("Bssid: %s" % wireless.GetWirelessProperty(network_id, "bssid")) print(("Bssid: %s" % wireless.GetWirelessProperty(network_id, "bssid")))
if wireless.GetWirelessProperty(network_id, "encryption"): if wireless.GetWirelessProperty(network_id, "encryption"):
print("Encryption: On") print("Encryption: On")
print("Encryption Method: %s" % \ print(("Encryption Method: %s" % \
wireless.GetWirelessProperty(network_id, "encryption_method")) wireless.GetWirelessProperty(network_id, "encryption_method")))
else: else:
print("Encryption: Off") print("Encryption: Off")
print("Quality: %s" % \ print(("Quality: %s" % \
wireless.GetWirelessProperty(network_id, "quality")) wireless.GetWirelessProperty(network_id, "quality")))
print("Mode: %s" % \ print(("Mode: %s" % \
wireless.GetWirelessProperty(network_id, "mode")) wireless.GetWirelessProperty(network_id, "mode")))
print("Channel: %s" % \ print(("Channel: %s" % \
wireless.GetWirelessProperty(network_id, "channel")) wireless.GetWirelessProperty(network_id, "channel")))
print("Bit Rates: %s" % \ print(("Bit Rates: %s" % \
wireless.GetWirelessProperty(network_id, "bitrates")) wireless.GetWirelessProperty(network_id, "bitrates")))
op_performed = True op_performed = True
# network properties # network properties
@@ -216,14 +216,14 @@ if options.network_property:
network_id = wireless.GetCurrentNetworkID(0) network_id = wireless.GetCurrentNetworkID(0)
is_valid_wireless_network_id(network_id) is_valid_wireless_network_id(network_id)
if not options.set_to: if not options.set_to:
print(wireless.GetWirelessProperty(network_id, print((wireless.GetWirelessProperty(network_id,
options.network_property)) options.network_property)))
else: else:
wireless.SetWirelessProperty(network_id, \ wireless.SetWirelessProperty(network_id, \
options.network_property, options.set_to) options.network_property, options.set_to)
elif options.wired: elif options.wired:
if not options.set_to: if not options.set_to:
print(wired.GetWiredProperty(options.network_property)) print((wired.GetWiredProperty(options.network_property)))
else: else:
wired.SetWiredProperty(options.network_property, options.set_to) wired.SetWiredProperty(options.network_property, options.set_to)
op_performed = True op_performed = True
@@ -232,13 +232,13 @@ if options.disconnect:
daemon.Disconnect() daemon.Disconnect()
if options.wireless: if options.wireless:
if wireless.GetCurrentNetworkID(0) > -1: if wireless.GetCurrentNetworkID(0) > -1:
print("Disconnecting from %s on %s" % \ print(("Disconnecting from %s on %s" % \
(wireless.GetCurrentNetwork(0), (wireless.GetCurrentNetwork(0),
wireless.DetectWirelessInterface())) wireless.DetectWirelessInterface())))
elif options.wired: elif options.wired:
if wired.CheckPluggedIn(): if wired.CheckPluggedIn():
print("Disconnecting from wired connection on %s" % \ print(("Disconnecting from wired connection on %s" % \
wired.DetectWiredInterface()) wired.DetectWiredInterface()))
op_performed = True op_performed = True
if options.connect: if options.connect:
@@ -247,16 +247,16 @@ if options.connect:
is_valid_wireless_network_id(options.network) is_valid_wireless_network_id(options.network)
name = wireless.GetWirelessProperty(options.network, 'essid') name = wireless.GetWirelessProperty(options.network, 'essid')
encryption = wireless.GetWirelessProperty(options.network, 'enctype') encryption = wireless.GetWirelessProperty(options.network, 'enctype')
print("Connecting to %s with %s on %s" % (name, encryption, print(("Connecting to %s with %s on %s" % (name, encryption,
wireless.DetectWirelessInterface())) wireless.DetectWirelessInterface())))
wireless.ConnectWireless(options.network) wireless.ConnectWireless(options.network)
check = wireless.CheckIfWirelessConnecting check = wireless.CheckIfWirelessConnecting
status = wireless.CheckWirelessConnectingStatus status = wireless.CheckWirelessConnectingStatus
message = wireless.CheckWirelessConnectingMessage message = wireless.CheckWirelessConnectingMessage
elif options.wired: elif options.wired:
print("Connecting to wired connection on %s" % \ print(("Connecting to wired connection on %s" % \
wired.DetectWiredInterface()) wired.DetectWiredInterface()))
wired.ConnectWired() wired.ConnectWired()
check = wired.CheckIfWiredConnecting check = wired.CheckIfWiredConnecting
@@ -277,7 +277,7 @@ if options.connect:
# the loop check # the loop check
if next_ == "done": if next_ == "done":
break break
print(message()) print((message()))
last = next_ last = next_
print("done!") print("done!")
if status() != 'done': if status() != 'done':
@@ -295,11 +295,11 @@ def str_properties(prop):
if options.wireless and options.list_encryption_types: if options.wireless and options.list_encryption_types:
et = misc.LoadEncryptionMethods() et = misc.LoadEncryptionMethods()
# print 'Installed encryption templates:' # print 'Installed encryption templates:'
print('%s\t%-20s\t%s' % ('#', 'Name', 'Description')) print(('%s\t%-20s\t%s' % ('#', 'Name', 'Description')))
i = 0 i = 0
for t in et: for t in et:
print('%s\t%-20s\t%s' % (i, t['type'], t['name'])) print(('%s\t%-20s\t%s' % (i, t['type'], t['name'])))
print(' Req: %s' % str_properties(t['required'])) print((' Req: %s' % str_properties(t['required'])))
print('---') print('---')
# don't print optionals (yet) # don't print optionals (yet)
#print ' Opt: %s' % str_properties(type['optional']) #print ' Opt: %s' % str_properties(type['optional'])

View File

@@ -415,7 +415,7 @@ class WiredSettingsDialog(AdvancedSettingsDialog):
encrypt_methods[self.encryption_combo.get_focus()[1]]['type']) encrypt_methods[self.encryption_combo.get_focus()[1]]['type'])
self.set_net_prop("encryption_enabled", True) self.set_net_prop("encryption_enabled", True)
# Make sure all required fields are filled in. # Make sure all required fields are filled in.
for entry_info in encrypt_info.values(): for entry_info in list(encrypt_info.values()):
if entry_info[0].get_edit_text() == "" \ if entry_info[0].get_edit_text() == "" \
and entry_info[1] == 'required': and entry_info[1] == 'required':
error( error(
@@ -428,7 +428,7 @@ class WiredSettingsDialog(AdvancedSettingsDialog):
) )
return False return False
for entry_key, entry_info in encrypt_info.items(): for entry_key, entry_info in list(encrypt_info.items()):
self.set_net_prop(entry_key, noneToString(entry_info[0]. self.set_net_prop(entry_key, noneToString(entry_info[0].
get_edit_text())) get_edit_text()))
else: else:
@@ -606,7 +606,7 @@ class WirelessSettingsDialog(AdvancedSettingsDialog):
encrypt_methods[self.encryption_combo.get_focus()[1]]['type'] encrypt_methods[self.encryption_combo.get_focus()[1]]['type']
) )
# Make sure all required fields are filled in. # Make sure all required fields are filled in.
for entry_info in encrypt_info.values(): for entry_info in list(encrypt_info.values()):
if entry_info[0].get_edit_text() == "" \ if entry_info[0].get_edit_text() == "" \
and entry_info[1] == 'required': and entry_info[1] == 'required':
error( error(
@@ -619,7 +619,7 @@ class WirelessSettingsDialog(AdvancedSettingsDialog):
) )
return False return False
for entry_key, entry_info in encrypt_info.items(): for entry_key, entry_info in list(encrypt_info.items()):
self.set_net_prop(entry_key, noneToString(entry_info[0]. self.set_net_prop(entry_key, noneToString(entry_info[0].
get_edit_text())) get_edit_text()))
elif not self.encryption_chkbox.get_state() and \ elif not self.encryption_chkbox.get_state() and \

View File

@@ -153,7 +153,7 @@ class WiredProfileChooser:
response = dialog.run() response = dialog.run()
if response == 1: if response == 1:
print('reading profile ', wired_profiles.get_active_text()) print(('reading profile ', wired_profiles.get_active_text()))
wired.ReadWiredNetworkProfile(wired_profiles.get_active_text()) wired.ReadWiredNetworkProfile(wired_profiles.get_active_text())
wired.ConnectWired() wired.ConnectWired()
else: else:
@@ -821,7 +821,7 @@ class appGui(object):
# Make sure no entries are left blank # Make sure no entries are left blank
if entry.chkbox_encryption.get_active(): if entry.chkbox_encryption.get_active():
encryption_info = entry.encryption_info encryption_info = entry.encryption_info
for entry_info in encryption_info.values(): for entry_info in list(encryption_info.values()):
if entry_info[0].entry.get_text() == "" and \ if entry_info[0].entry.get_text() == "" and \
entry_info[1] == 'required': entry_info[1] == 'required':
error( error(

View File

@@ -31,7 +31,7 @@ except ImportError:
print("Importing pynotify failed, notifications disabled.") print("Importing pynotify failed, notifications disabled.")
HAS_NOTIFY = False HAS_NOTIFY = False
print("Has notifications support", HAS_NOTIFY) print(("Has notifications support", HAS_NOTIFY))
if wpath.no_use_notifications: if wpath.no_use_notifications:
print('Notifications disabled during setup.py configure') print('Notifications disabled during setup.py configure')

View File

@@ -472,7 +472,7 @@ class WiredSettingsDialog(AdvancedSettingsDialog):
encrypt_methods[self.combo_encryption.get_active()]['type'] encrypt_methods[self.combo_encryption.get_active()]['type']
) )
# Make sure all required fields are filled in. # Make sure all required fields are filled in.
for entry_info in encrypt_info.values(): for entry_info in list(encrypt_info.values()):
if entry_info[0].entry.get_text() == "" and \ if entry_info[0].entry.get_text() == "" and \
entry_info[1] == 'required': entry_info[1] == 'required':
error( error(
@@ -484,7 +484,7 @@ class WiredSettingsDialog(AdvancedSettingsDialog):
) )
return False return False
# Now save all the entries. # Now save all the entries.
for entry_key, entry_info in encrypt_info.items(): for entry_key, entry_info in list(encrypt_info.items()):
self.set_net_prop(entry_key, self.set_net_prop(entry_key,
noneToString(entry_info[0].entry.get_text())) noneToString(entry_info[0].entry.get_text()))
else: else:
@@ -689,7 +689,7 @@ class WirelessSettingsDialog(AdvancedSettingsDialog):
encrypt_methods[self.combo_encryption.get_active()]['type'] encrypt_methods[self.combo_encryption.get_active()]['type']
) )
# Make sure all required fields are filled in. # Make sure all required fields are filled in.
for entry_info in encrypt_info.values(): for entry_info in list(encrypt_info.values()):
if entry_info[0].entry.get_text() == "" and \ if entry_info[0].entry.get_text() == "" and \
entry_info[1] == 'required': entry_info[1] == 'required':
error( error(
@@ -701,7 +701,7 @@ class WirelessSettingsDialog(AdvancedSettingsDialog):
) )
return False return False
# Now save all the entries. # Now save all the entries.
for entry_key, entry_info in encrypt_info.items(): for entry_key, entry_info in list(encrypt_info.items()):
self.set_net_prop(entry_key, self.set_net_prop(entry_key,
noneToString(entry_info[0].entry.get_text())) noneToString(entry_info[0].entry.get_text()))
elif not self.chkbox_encryption.get_active() and \ elif not self.chkbox_encryption.get_active() and \
@@ -1010,7 +1010,7 @@ class WirelessNetworkEntry(NetworkEntry):
self.lbl_encryption = GreyLabel() self.lbl_encryption = GreyLabel()
self.lbl_channel = GreyLabel() self.lbl_channel = GreyLabel()
print("ESSID : " + self.essid) print(("ESSID : " + self.essid))
self.chkbox_autoconnect = gtk.CheckButton( self.chkbox_autoconnect = gtk.CheckButton(
_('Automatically connect to this network')) _('Automatically connect to this network'))
self.chkbox_neverconnect = gtk.CheckButton( self.chkbox_neverconnect = gtk.CheckButton(

View File

@@ -80,8 +80,8 @@ if not hasattr(gtk, "StatusIcon"):
import egg.trayicon import egg.trayicon
USE_EGG = True USE_EGG = True
except ImportError: except ImportError:
print('Unable to load tray icon: Missing both egg.trayicon and ' + \ print(('Unable to load tray icon: Missing both egg.trayicon and ' + \
'gtk.StatusIcon modules.') 'gtk.StatusIcon modules.'))
ICON_AVAIL = False ICON_AVAIL = False
misc.RenameProcess("wicd-client") misc.RenameProcess("wicd-client")
@@ -114,7 +114,7 @@ def catchdbus(func):
#raise #raise
raise DBusException(e) raise DBusException(e)
else: else:
print("warning: ignoring exception %s" % e) print(("warning: ignoring exception %s" % e))
return None return None
wrapper.__name__ = func.__name__ wrapper.__name__ = func.__name__
wrapper.__module__ = func.__module__ wrapper.__module__ = func.__module__
@@ -162,7 +162,7 @@ class TrayIcon(object):
self.tr.toggle_wicd_gui() self.tr.toggle_wicd_gui()
self.icon_info = self.TrayConnectionInfo(self, self.tr, animate) self.icon_info = self.TrayConnectionInfo(self, self.tr, animate)
self.tr.icon_info = self.icon_info self.tr.icon_info = self.icon_info
print('displaytray %s' % displaytray) print(('displaytray %s' % displaytray))
self.tr.visible(displaytray) self.tr.visible(displaytray)
def is_embedded(self): def is_embedded(self):
@@ -270,7 +270,7 @@ class TrayIcon(object):
msg = e.args[-1] msg = e.args[-1]
else: else:
msg = str(e) msg = str(e)
print("Exception during notification: %s" % msg) print(("Exception during notification: %s" % msg))
self.should_notify = False self.should_notify = False
@@ -1046,7 +1046,7 @@ TX:'''))
def usage(): def usage():
""" Print usage information. """ """ Print usage information. """
print(""" print(("""
wicd %s wicd %s
wireless (and wired) connection daemon front-end. wireless (and wired) connection daemon front-end.
@@ -1056,7 +1056,7 @@ Arguments:
\t-h\t--help\t\tPrint this help information. \t-h\t--help\t\tPrint this help information.
\t-a\t--no-animate\tRun the tray without network traffic tray animations. \t-a\t--no-animate\tRun the tray without network traffic tray animations.
\t-o\t--only-notifications\tDon't display anything except notifications. \t-o\t--only-notifications\tDon't display anything except notifications.
""" % wpath.version) """ % wpath.version))
def setup_dbus(force=True): def setup_dbus(force=True):
@@ -1067,8 +1067,8 @@ def setup_dbus(force=True):
dbusmanager.connect_to_dbus() dbusmanager.connect_to_dbus()
except DBusException: except DBusException:
if force: if force:
print("Can't connect to the daemon, trying to start it " + \ print(("Can't connect to the daemon, trying to start it " + \
"automatically...") "automatically..."))
misc.PromptToStartDaemon() misc.PromptToStartDaemon()
try: try:
dbusmanager.connect_to_dbus() dbusmanager.connect_to_dbus()

View File

@@ -1 +0,0 @@
wicd=wpath.py.in

96
man/nl/wicd-curses.8 Normal file
View File

@@ -0,0 +1,96 @@
.\" First revision was r203
.TH WICD-CURSES "8" "April 2009" "wicd-curses-uimod"
.SH NAAM
.B wicd-curses
\- curses-gebaseerde wicd(8) controller
.SH BESCHRIJVING
Wicd-curses is een curses-gebaseerde netwerk controller die de Wired/Wireless Internet Connection Daemon (wicd) gebruikt om de netwerkverbindingen te controleren. Het is geschikt om in een terminal multiplexer zoals screen(1) gestart te worden.
Het is gemaakt om zoveel mogelijk de GTK-gebaseerde wicd-client(1) te imiteren, en gebruikt de Urwid (http://excess.org/urwid) console widget bibliotheek om de ontwikkeling enorm te vergemakkelijken.
Deze man page documenteert alleen de huidige status van wicd-curses. Dit zou/zou niet het meest up-to-date document kunnen zijn.
.SH "ARGUMENTEN"
.TP
.BR "\-r" , " \-\-raw\-screen"
Gebruik Urwid's raw console display. Dit is standaard, en heeft een aantal
voordelen boven het snellere curses display, inclusief volledig functionerende
Unicode en internationalisation ondersteuning.
.TP
.BR "\-c" , " \-\-curses\-screen"
Gebruik Urwid's curses display. Dit zou sneller kunnen zijn dan het standaard
raw venster, maar het heeft geen goede Unicode ondersteuning. Dit is goed te
gebruiken als je taal naar keuze alleen Latijnse karakters gebruikt.
.SH CONTROLS
Allemaal zijn ze hoofdlettergevoelig.
.TP
.BR "C " of " enter"
Verbind met het geselecteerde netwerk
.TP
.BR "F8 " or " Q " or " q"
Sluit de client af
.TP
.BR D
Verbreek de verbindingen van alle apparaten
.TP
.BR ESC
Indien Wicd aan het verbinden is met een netwerk, stop ermee
.TP
.BR "F5 " or " R"
Vernieuw de netwerk lijst
.TP
.BR P
Geef de voorkeuren controller
.TP
.BR I
Geef het verborgen netwerken scanner dialoogvenster
.TP
.BR "H " or " h " or " ?"
Geef een erg simpel help dialoogvenster. Natuurlijk noemt het deze man page als eerste. :-)
.TP
.BR A
Geef het "About wicd-curses" dialoogvenster
.\".PP
.\"Het volgende is werk in uitvoering en zou nog niet helemaal kunnen functioneren zoals dat hiervoor.
.TP
.BR "pijltje naar rechts"
Geef de netwerk instellingen controller voor het geselecteerde netwerk
.TP
.BR delete
Verwijder het geselecteerde vaste netwerk profiel (van het vaste netwerk combo box bovenin)
.TP
.BR F2
Hernoem het geselecteerde vaste netwerk profiel (van het vaste netwerk combo box bovenin)
.TP
.BR S
.\"Geef de script selector voor het geselecteerde netwerk (vereist superuser rechten)
Geef instructies hoe je de scripts moet bewerken. Ik heb een manier geïmplementeerd om dit te doen in de interface zelf, maar om het met alle Linux distributies te laten werken zou moeilijk worden. Omdat je dit aan het lezen bent, zou je moeten weten wat je moet doen wat ik suggereer. ;-)
.TP
.BR O
Geef het Ad-Hoc netwerk maken dialoogvenster
.SH "BESTANDEN"
.TP
.I ~/.wicd/WAARZIJNMIJNBESTANDEN
Bedenk dat jouw netwerk configuratiebestanden niet hier zijn ;-)
.PP
.SH "ZIE OOK"
.BR wicd-client (1),
.BR wicd (8)
.SH BUGS
Waarschijnlijk veel. ;-)
Als je er een gevonden hebt, vraag er naar op #wicd op freenode, of stuur een bug report naar http://launchpad.net/wicd.
.SH WICD-CURSES AUTEURS
Andrew Psaltis <ampsaltis@gmail.com>
.SH WICD AUTEURS
Adam Blackburn <compwiz18@gmail.com>
.br
Dan O'Reilly <oreilldf@gmail.com>
.br
David Paleino <d.paleino@gmail.com>
.SH VERTALING
Ayke van Laëthem <aykevanlaethem@gmail.com> (Nederlandse vertaling)

View File

@@ -0,0 +1,101 @@
.\" Written by Robby Workman <rworkman@slackware.com>
.TH WICD-MANAGER-SETTINGS.CONF 5 "wicd-1.7.4"
.SH NAME
wicd-manager-settings.conf \- contains settings that control Wicd's behavior
.SH DESCRIPTION
This file contains general configuration information for Wicd.
.br
This file is located at /etc/wicd/manager-settings.conf
.SH SETTINGS
.TP
.BI "link_detect_tool = " <0|1|2>
0 = autodetect
.br
1 = ethtool
.br
2 = mii-tool
.TP
.BI "flush_tool = " <0|1|2>
0 = autodetect
.br
1 = ip
.br
2 = route
.TP
.BI "backend = " <ioctl|external>
Default is ioctl backend.
.TP
.BI "signal_display_type = " <0|1>
0 = Show signal strength as a percentage
.br
1 = Show signal strength in dBm
.TP
.BI "dhcp_client = " <0|1|2|3>
0 = autodetect
.br
1 = dhclient
.br
2 = dhcpcd
.br
3 = pump
.TP
.BI "sudo_app = " <0|1|2|3>
0 = autodetect
.br
1 = gksu
.br
2 = kdesu
.br
3 = ktsuss
.TP
.BI "wired_interface = " <interface_name>
.TP
.BI "always_show_wired_interface = " <True|False>
.TP
.BI "wired_connect_mode = " <0|1>
0 = connect to wired interface automatically
.br
1 = do not connect to wired interface automatically
.TP
.BI "prefer_wired = " <True|False>
True = Switch to wired interface if a link is detected, even if already connected to wireless
.br
False = Do not switch to wired interface automatically
.TP
.BI "wireless_interface = " <name_of_wireless_interface>
.TP
.BI "wpa_driver = " <wext|madwifi|ndiswrapper|hostap|hermes|atmel|broadcom|ipw|ralink legacy>
The default (and best supported) is wext. It should work properly in most cases.
.TP
.BI "auto_reconnect = " <True|False>
This settings determines whether Wicd will attempt to reconnect on connection loss.
.TP
.BI "use_global_dns = " <True|False>
If set to "True" and values are specified in the global DNS settings below,
this will cause Wicd to use these DNS settings.
.TP
.BI "global_dns_dom = " <plaintext_domain_name>
This specifies the default search domain to be used by the resolver.
.TP
.BI "global_dns_1 = " <ip_address>
.TP
.BI "global_dns_2 = " <ip_address>
.TP
.BI "global_dns_3 = " <ip_address>
.TP
.BI "debug_mode = " <integer_value>
0 = disabled
.br
1 = enabled
.SH "SEE ALSO"
.BR wicd (8),
.BR wicd-curses (8),
.BR wicd-wired-settings.conf (5),
.BR wicd-wireless-settings.conf (5).

View File

@@ -0,0 +1,80 @@
.\" Written by Robby Workman <rworkman@slackware.com>
.TH WICD-WIRED-SETTINGS.CONF 5 "wicd-1.7.4"
.SH NAAM
wicd-wired-settings.conf \- stelt Wicd's vaste netwerkinstellingen in
.SH BESCHRIJVING
Dit bestand bevat configuratie-informatie voor vaste netwerkinterfaces voor Wicd.
.br
Dit bestand staat hier: /etc/wicd/wired-settings.conf
.SH INSTELLINGEN
.TP
.BI "default = " <0|1>
Deze optie bepaalt of dit profiel als standaard gebruikt moet worden.
.br
0 = gebruik dit profiel niet standaard.
.br
1 = gebruik dit profiel standaard.
.TP
.BI "beforescript = " <None|willekeurig_script>
Dit definieert een script dat gestart moet worden voordat Wicd gaat verbinden.
Dit script moet een Bourne-compatibel script zijn en moet uitvoerbaar zijn.
.br
BELANGRIJK scripts moeten ALLEEN schrijfbaar zijn door root en in een directory staan die alleen schrijfbaar is door root.
.TP
.BI "afterscript = " <None|willekeurig_script>
Dit definieert een script dat gestart moet worden nadat Wicd een verbinding heeft gelegd.
Dit script moet een Bourne-compatibel script zijn en moet uitvoerbaar zijn.
.br
BELANGRIJK scripts moeten ALLEEN schrijfbaar zijn door root en in een directory staan die alleen schrijfbaar is door root.
.TP
.BI "predisconnectscript = " <None|willekeurig_script>
Dit definieert een script dat gestart moet worden voordat Wicd de verbinding verbreekt.
Dit script moet een Bourne-compatibel script zijn en moet uitvoerbaar zijn.
.br
BELANGRIJK scripts moeten ALLEEN schrijfbaar zijn door root en in een directory staan die alleen schrijfbaar is door root.
.TP
.BI "postdisconnectscript = " <None|willekeurig_script>
Dit definieert een script dat gestart moet worden na dat Wicd de verbinding heeft verbroken.
Dit script moet een Bourne-compatibel script zijn en moet uitvoerbaar zijn.
.br
BELANGRIJK scripts moeten ALLEEN schrijfbaar zijn door root en in een directory staan die alleen schrijfbaar is door root.
.TP
.BI "ip = " <None|ip_addres>
Gebruik deze optie als je een vast ip-adres voor je systeem hebt.
.TP
.BI "netmask = " <None|netwerk_masker>
Deze instelling is alleen van toepassing als er hierboven een vast ip-adres is ingesteld.
.TP
.BI "broadcast = " <None|broadcast_adres>
Deze instelling is alleen van toepassing als er hierboven een vast ip-adres is ingesteld.
.TP
.BI "gateway = " <None|gateway_adres>
Deze instelling is alleen van toepassing als er hierboven een vast ip-adres is ingesteld.
.TP
.BI "use_static_dns = " <True|False>
True = gebruik vaste DNS servers in plaats van accepteren wat de dhcp server aanbied.
.TP
.BI "use_global_dns = " <True|False>
True = gebruik de globale DNS servers die in wicd-manager-settings.conf(5) staan.
Deze optie is alleen van toepassing als "use_static_dns = True"
.TP
.BI "dns1 = " <None|ip_adres>
Statisch DNS adres als "use_static_dns = True" en "use_global_dns = False"
.TP
.BI "dns2 = " <None|ip_adres>
Statisch DNS adres als "use_static_dns = True" en "use_global_dns = False"
.TP
.BI "dns3 = " <None|ip_adres>
Statisch DNS adres als "use_static_dns = True" en "use_global_dns = False"
.SH "ZIE OOK"
.BR wicd (8),
.BR wicd-curses (8),
.BR wicd-manager-settings.conf (5),
.BR wicd-wireless-settings.conf (5).

View File

@@ -0,0 +1,126 @@
.\" Written by Robby Workman <rworkman@slackware.com>
.TH WICD-WIRELESS-SETTINGS.CONF 5 "wicd-1.7.4"
.SH NAAM
wicd-wired-settings.conf \- stelt Wicd's draadloze netwerkinstellingen in
.SH BESCHRIJVING
Dit bestand bevat configuratie-informatie voor de draadloze netwerkinterfaces in Wicd.
.br
Dit bestand staat hier: /etc/wicd/wireless-settings.conf
.SH INSTELLINGEN
.TP
.BI "bssid = " <BSSID_van_netwerk>
Deze waarde kan worden gevonden met iwconfig(8).
.TP
.BI "essid = " <ESSID_van_netwerk>
Deze waarde kan worden gevonden met iwconfig(8).
.TP
.BI "hidden = " <True|False>
Deze optie stelt in of de ESSID van het netwerk broadcast is of niet.
.TP
.BI "channel = " <numerieke_waarde>
Goede kanalen zijn afhankelijk van het land.
.br
Deze waarde kan worden gevonden met iwconfig(8).
.TP
.BI "mode = " <Master|Ad-hoc>
.br
Deze waarde kan worden gevonden met iwconfig(8).
.TP
.BI "enctype = " <coderings_sjabloon>
Dit kan de waarde van elk coderingssjabloon dat in /etc/wicd/encryption/templates/ staat.
.TP
.BI "encryption_method = "WEP|WPA|WPA2>
Deze waarde kan worden gevonden met iwconfig(8).
.TP
.BI "key = " <platte_tekst_sleutel>
Zorg er voor dat dit bestand alleen leesbaar is door root.
.TP
.BI "automatic = " <True|False>
Deze optie stelt in of Wicd automatisch met dit netwerk moet verbinden.
.TP
.BI "ip = " <None|ip_adres>
Gebruik deze optie als je een vast ip-adres voor je systeem hebt.
.TP
.BI "netmask = " <None|netwerk masker>
Deze instelling is alleen van toepassing als er een vast ip-adres hierboven is ingesteld.
.TP
.BI "broadcast = " <None|broadcast_adres>
Deze instelling is alleen van toepassing als er een vast ip-adres hierboven is ingesteld.
.TP
.BI "gateway = " <None|gateway_address>
Deze instelling is alleen van toepassing als er een vast ip-adres hierboven is ingesteld.
.TP
.BI "use_static_dns = " <True|False>
True = gebruik vaste DNS servers in plaats van accepteren wat de dhcp server aanbied..TP
.BI "use_global_dns = " <True|False>
True = gebruik de globale DNS servers die staan in wicd-manager-settings.conf(5).
.br
Deze optie is alleen van toepassing als "use_static_dns = True"
.TP
.BI "dns1 = " <None|ip_adres>
Statisch DNS adres als "use_static_dns = True" en "use_global_dns = False"
.TP
.BI "dns2 = " <None|ip_adres>
Statisch DNS adres als "use_static_dns = True" en "use_global_dns = False"
.TP
.BI "dns3 = " <None|ip_adres>
Statisch DNS adres als "use_static_dns = True" en "use_global_dns = False"
.TP
.BI "use_settings_globally = " <0|1>
Wicd houdt bij of er automatisch verbinding gemaakt moet worden gebaseert op bssid.
Dit verzekert je ervan dat je niet per ongeluk met een ander netwerk verbind dat niet het jouwe is maar hetzelfde essid heeft er zijn bijvoorbeeld een hoop commerciële routers in gebruik met "linksys" als de essid.
.br
0 = Gebruik geen globale instellingen
.br
1 = Gebruik globale instellingen
.TP
.BI "beforescript = " <None|willekeurig_script>
Dit definieert een script dat gestart moet worden voordat Wicd gaat verbinden.
Dit script moet een Bourne-compatibel script zijn en moet uitvoerbaar zijn.
.br
BELANGRIJK scripts moeten ALLEEN schrijfbaar zijn door root en in een directory staan die alleen schrijfbaar is door root.
.TP
.BI "afterscript = " <None|willekeurig_script>
Dit definieert een script dat gestart moet worden nadat Wicd een verbinding heeft gelegd.
Dit script moet een Bourne-compatibel script zijn en moet uitvoerbaar zijn.
.br
BELANGRIJK scripts moeten ALLEEN schrijfbaar zijn door root en in een directory staan die alleen schrijfbaar is door root.
.TP
.BI "predisconnectscript = " <None|willekeurig_script>
Dit definieert een script dat gestart moet worden voordat Wicd de verbinding verbreekt.
Dit script moet een Bourne-compatibel script zijn en moet uitvoerbaar zijn.
.br
BELANGRIJK scripts moeten ALLEEN schrijfbaar zijn door root en in een directory staan die alleen schrijfbaar is door root.
.TP
.BI "postdisconnectscript = " <None|willekeurig_script>
Dit definieert een script dat gestart moet worden na dat Wicd de verbinding heeft verbroken.
Dit script moet een Bourne-compatibel script zijn en moet uitvoerbaar zijn.
.br
BELANGRIJK scripts moeten ALLEEN schrijfbaar zijn door root en in een directory staan die alleen schrijfbaar is door root.
.SH OVERIG
The "use_settings_globally" option determines how an individual network's
configuration stanza starts. If the option is "0" (do not use settings
globally), then the stanza's top line will be the bssid of the access
point (in this format):
.br
[00:15:3E:87:D3:68]
.br
If the "option is set to "1" (use settings globally), then the first line
of the stanza will be in this format:
.br
[essid:UA Public Wireless Network]
.SH "SEE ALSO"
.BR wicd (8),
.BR wicd-curses (8),
.BR wicd-manager-settings.conf (5),
.BR wicd-wired-settings.conf (5).

173
man/nl/wicd.8 Normal file
View File

@@ -0,0 +1,173 @@
.\" Geschreven door Robby Workman <rworkman@slackware.com>
.TH WICD 8 "wicd-1.7.4"
.SH NAME
.B Wicd
\- Vaste en draadloze netwerkverbindingen beheerder
.SH THEORIE VAN DE WERKING
Wicd is gemaakt om gebruikers zoveel mogelijk controle over de verbinding
te laten hebben als mogelijk. Elk netwerk, zowel vast als draadloos, heeft
zijn eigen profiel met zijn eigen configuratieopties en verbindingsgedrag.
Wicd zal alleen met netwerken verbindingen die de gebruiker kiest die hij
zal proberen, met een voorkeur voor een vast netwerk boven een draadloos
netwerk.
Voor een vaste verbinding hebben gebruikers veel opties om te kiezen welke
netwerkinstellingen gebruikt zullen worden. Wicd staat toe om een ongelimiteerd
aantal vaste verbindingsprofielen te maken, waar elk zijn eigen unieke instellingen
heeft. De gebruiker kan kiezen om te verbinden met een geselecteerd standaard
profiel, kiezen met een pop-upvenster elke keer dat Wicd verbinding maakt, of
kiezen dat Wicd automatisch het laatste profiel kiest van toen er handmatig
verbinding werd gemaakt.
Voor draadloze verbindingen kunnen gebruikers elk aantal draadloze netwerken
kiezen om automatisch verbinding mee te maken; Wicd zal degene met het sterkste
signaal kiezen om verbinding mee te maken.
Als de gebruiker dat kiest, zal Wicd automatisch herverbinden als de verbinding
verloren gaat. Als de laatste verbindingsstatus vast was, zal Wicd eerst met
het vaste netwerk verbinden, en als het niet beschikbaar is, zal Wicd elk
draadloos netwerk proberen waar automatisch verbinden aan staat. Als de laatste
verbindingsstatus draadloos was, zal Wicd eerst proberen te verbinden met het
vorige verbonden netwerk (ook als dat netwerk automatisch verbinden uit
heeft staan), en als dat mislukt, zal het zowel de vaste verbinding proberen als
elk draadloos netwerk waar automatisch verbinden aan staat.
Wicd gebruikt ingebouwde Linux draadloze netwerktools, zoals ifconfig en
iwconfig, om netwerkinformatie te krijgen en in te stellen. Er is enige
flexibiliteit in het gebruik van DHCP, door het ondersteunen van dhclient,
dhcpcd en pump. Wicd gebruikt wpa_supplicant voor alle draadloze
coderingsinstellingen, en gebruikt een sjabloongebaseert systeem om de
configuratiebestanden te maken die door wpa_supplicant worden gebruikt. Deze
sjablonen kunnen worden bewerkt, en nieuwe sjablonen kunnen worden gemaakt door
de gebruiker en geimporteerd worden naar Wicd, om verbindingen met netwerken
met ongebruikelijke coderingsinstellingen te maken.
.SH STRUCTUUR
Wicd heeft twee hoofdonderdelen: de daemon, die met root-rechten werkt; en de
gebruikersinterface, die met normale gebruikersrechten werkt. Deze twee delen
werken als gescheiden processen en gebruiken D-Bus om te communiceren.
De daemon is verantwoordelijk voor het maken en instellen van verbindingen,
lezen en schrijven van configuratiebestanden en logbestanden, en het controleren van de
connectiestatus. De daemon is gesplitst in twee processen, wicd-daemon.py en
monitor.py. Alle controle van de verbindingen, inclusief het automatisch
herverbinden, vinden plaats in monitor.py. Al het andere gebeurt door
wicd-daemon.py.
De gebruikersinterface (in wicd-client), die is opgebouwd uit een tray-icoon,
een hoofd GUI venster en zijn dialoogvensters, haalt configuratie en
netwerkinformatie van de daemon hetzij door het aanroepen van functies in de
dbus interface van de daemon of door signalen te krijgen van de daemon via
D-Bus. Alle configuratiewijzigingen gemaakt in de gebruikersinterface worden
teruggegeven aan de daemon, die de veranderingen toepast en naar
configuratiebestanden wegschrijft.
Omdat de gebruikersinterface alleen verbindings- en configuratieinfo vraagt
van de daemon, is het mogelijk om Wicd helemaal zonder de GUI te gebruiken.
Bovendien is de daemon gestart door Wicd's init script tijdens het starten van
het systeem (voordat er gebruikers inloggen), waardoor Wicd gebruikt kan worden
door "headless" systemen.
.SH TIPS
.B Kiezen van alternatieve tools
.br
Wicd ondersteund een aantal alternatieven als het gaat om de netwerktools van
Linux. In het "External Programs" tab van het Voorkeuren menu kun je kiezen voor
jouw voorkeur DHCP client, link detectie tools en routing tools als de
standaardtools niet handig zijn voor jouw distributie of systeem.
.B Eigen scripts
.br
Als het nodig is om een eigen commando uit te voeren voor of na het verbinding
maken of verbreken van een netwerk, dan ondersteund Wicd dit; maar je moet wel
een grafische sudo helper geïnstalleerd hebben (op dit moment worden kdesu,
gksu en ktsuss ondersteund).
.br
Als je geen grafische sudo helper geïnstalleerd hebt, heb je nog steeds de
mogelijkheid om eigen scripts te gebruiken, maar je moet ze handmatig maken.
Zie wicd-wired-settings.conf(5) en/of wicd-wireless-settings.conf(5) voor meer
informatie hoe je dat moet doen.
.B Automatisch verbinding maken met netwerken
.br
Wicd gebruikt het BSSID om een individueel netwerk te herkennen (en dus om te
beslissen of het er automatisch mee moet verbinden). Zit je op een netwerk
dat veel verschillende access-points heeft die allemaal dezelfde ESSID hebben (veel
universiteiten hebben zulke netwerken), dan is er een optie in de "Geavanceerde
instellingen") om "Gebruik deze instellingen voor alle netwerken met deze
ESSID". Met deze optie zal Wicd automatisch met dat netwerk verbinden,
onafhankelijk van welk access-point het ziet.
.SH BESTANDEN
.B /etc/wicd/manager-settings.conf
.br
Dit bestand bevat algemene instellingen van Wicd.
.br
Zie de man-page van dit bestand voor meer informatie erover.
.B /etc/wicd/wired-settings.conf
.br
Dit bestand bevat instellingen voor de vaste interface.
.br
Zie de man-page van dit bestand voor meer informatie erover.
.B /etc/wicd/wireless-settings.conf
.br
Dit bestand bevat instellingen gerelateerd tot de draadloze interface.
.br
Zie de man-page van dit bestand voor meer informatie erover.
.B /etc/wicd/encryption/templates/
.br
Deze directory bevat verschillende sjablonen voor gecodeerde (WEP, WPA,
etc.) verbindingen. Als geen daarvan aan jouw behoeften voldoet, kun je
je eigen maken en aan deze directory toevoegen. Als je dit doet, neem
alsjeblieft contact op met de makers van Wicd (zie hieronder).
.B /var/lib/wicd/configurations/
.br
Deze directory bevat individuele configuratiebestanden voor elke gecodeerde
verbinding die je maakt met Wicd.
.B /var/log/wicd/
.br
Deze directory bevat logbestanden van Wicd's activiteiten. Kijk in de log
als je problemen hebt met de verbinding of met andere dingen.
.SH "ZIE OOK"
.BR wicd-manager-settings.conf (5),
.BR wicd-wired-settings.conf (5),
.BR wicd-wireless-settings.conf (5),
.BR wicd-curses (8),
.BR ifconfig (8),
.BR iwconfig (8),
.BR wpa_supplicant (8),
.BR route (8),
.BR ip (8),
.BR mii-tool (8),
.BR ethtool (8),
.BR dhclient (8),
.BR dhcpcd (8),
.BR pump (8).
.SH WICD AUTEURS
Adam Blackburn <compwiz18@gmail.com>
.br
Dan O'Reilly <oreilldf@gmail.com>
.br
Andrew Psaltis <ampsaltis@gmail.com> (curses client)
.br
David Paleino <d.paleino@gmail.com>
.SH MANPAGE AUTEURS
Robby Workman <rworkman@slackware.com>
.br
Ayke van Laethem <aykevanlaethem@gmail.com> (Nederlandse vertaling)

7
man/wicd-cli.8 Normal file
View File

@@ -0,0 +1,7 @@
.\" First revision was r???
.TH WICD-CCLI "6" "November 2009"
.SH NAME
.B wicd-cli
\- commandline- only wicd(8) controller
.SH DESCRIPTION
TODO :-)

6
other/wicd.logrotate Normal file
View File

@@ -0,0 +1,6 @@
/var/log/wicd/wicd.log {
missingok
notifempty
size 30k
create 0640 root adm
}

2
scripts/wicd-cli Executable file
View File

@@ -0,0 +1,2 @@
#!/bin/bash
exec /usr/bin/python -O /usr/share/wicd/cli/wicd-cli.py $@

12
scripts/wicd-gtk Executable file
View File

@@ -0,0 +1,12 @@
#!/bin/sh
# check_firstrun()
if [ ! -d "$HOME/.wicd" ]; then
mkdir -p "$HOME/.wicd"
fi
# Make sure the user knows WHEREAREMYFILES ;-)
if [ -e "/var/lib/wicd/WHEREAREMYFILES" ] && [ ! -L "$HOME/.wicd/WHEREAREMYFILES" ]; then
ln -s "/var/lib/wicd/WHEREAREMYFILES" "$HOME/.wicd/WHEREAREMYFILES"
fi
exec /usr/bin/python -O /usr/share/wicd/gtk/wicd-client.py $@

View File

@@ -46,7 +46,7 @@ os.chdir(os.path.abspath(os.path.split(__file__)[0]))
try: try:
if os.path.exists('.bzr') and os.system('bzr > /dev/null 2>&1') == 0: if os.path.exists('.bzr') and os.system('bzr > /dev/null 2>&1') == 0:
try: try:
os.system('bzr version-info --python > vcsinfo.py') os.system('bzr version-info --python > vcsinfo.py && 2to3-2.7 -w vcsinfo.py')
except: except:
pass pass
import vcsinfo import vcsinfo

View File

@@ -31,7 +31,7 @@ import wicd.wpath as wpath
def fail(backend_name, reason): def fail(backend_name, reason):
""" Helper to warn the user about failure in loading backend. """ """ Helper to warn the user about failure in loading backend. """
print("Failed to load backend %s: %s" % (backend_name, reason)) print(("Failed to load backend %s: %s" % (backend_name, reason)))
return True return True
@@ -80,7 +80,7 @@ class BackendManager(object):
def _load_backend(self, backend_name): def _load_backend(self, backend_name):
""" Imports a backend and returns the loaded module. """ """ Imports a backend and returns the loaded module. """
print('trying to load backend %s' % backend_name) print(('trying to load backend %s' % backend_name))
backend_path = os.path.join(self.backend_dir, backend_path = os.path.join(self.backend_dir,
'be-' + backend_name + '.py') 'be-' + backend_name + '.py')
if self._valid_backend_file(backend_path): if self._valid_backend_file(backend_path):
@@ -124,5 +124,5 @@ class BackendManager(object):
return None return None
self.__loaded_backend = backend self.__loaded_backend = backend
print('successfully loaded backend %s' % backend_name) print(('successfully loaded backend %s' % backend_name))
return backend return backend

View File

@@ -167,7 +167,7 @@ class Interface(BaseInterface):
result = fcntl.ioctl(self.sock.fileno(), SIOCGIFFLAGS, data) result = fcntl.ioctl(self.sock.fileno(), SIOCGIFFLAGS, data)
except IOError as e: except IOError as e:
if self.verbose: if self.verbose:
print("SIOCGIFFLAGS failed: " + str(e)) print(("SIOCGIFFLAGS failed: " + str(e)))
return False return False
flags, = struct.unpack('H', result[16:18]) flags, = struct.unpack('H', result[16:18])
@@ -226,7 +226,7 @@ class WiredInterface(Interface, BaseWiredInterface):
fcntl.ioctl(self.sock.fileno(), SIOCETHTOOL, data) fcntl.ioctl(self.sock.fileno(), SIOCETHTOOL, data)
except IOError as e: except IOError as e:
if self.verbose: if self.verbose:
print('SIOCETHTOOL failed: ' + str(e)) print(('SIOCETHTOOL failed: ' + str(e)))
return False return False
return bool(buff.tolist()[1]) return bool(buff.tolist()[1])
@@ -246,7 +246,7 @@ class WiredInterface(Interface, BaseWiredInterface):
result = fcntl.ioctl(self.sock.fileno(), SIOCGMIIPHY, buff) result = fcntl.ioctl(self.sock.fileno(), SIOCGMIIPHY, buff)
except IOError as e: except IOError as e:
if self.verbose: if self.verbose:
print('SIOCGMIIPHY failed: ' + str(e)) print(('SIOCGMIIPHY failed: ' + str(e)))
return False return False
reg = struct.unpack('16shhhh', result)[-1] reg = struct.unpack('16shhhh', result)[-1]
return bool(reg & 0x0004) return bool(reg & 0x0004)
@@ -287,13 +287,13 @@ class WirelessInterface(Interface, BaseWirelessInterface):
try: try:
self.scan_iface = iwscan.WirelessInterface(self.iface) self.scan_iface = iwscan.WirelessInterface(self.iface)
except iwscan.error as e: except iwscan.error as e:
print("GetNetworks caught an exception: %s" % e) print(("GetNetworks caught an exception: %s" % e))
return [] return []
try: try:
results = self.scan_iface.Scan() results = self.scan_iface.Scan()
except iwscan.error as e: except iwscan.error as e:
print("ERROR: %s" % e) print(("ERROR: %s" % e))
return [] return []
return [_f for _f in [self._parse_ap(cell) for cell in results] if _f] return [_f for _f in [self._parse_ap(cell) for cell in results] if _f]
@@ -357,11 +357,11 @@ class WirelessInterface(Interface, BaseWirelessInterface):
try: try:
return wpactrl.WPACtrl(socket_loc) return wpactrl.WPACtrl(socket_loc)
except wpactrl.error as e: except wpactrl.error as e:
print("Couldn't open ctrl_interface: %s" % e) print(("Couldn't open ctrl_interface: %s" % e))
return None return None
else: else:
print("Couldn't find a wpa_supplicant ctrl_interface for iface %s" \ print(("Couldn't find a wpa_supplicant ctrl_interface for iface %s" \
% self.iface) % self.iface))
return None return None
def ValidateAuthentication(self, auth_time): def ValidateAuthentication(self, auth_time):
@@ -406,8 +406,8 @@ class WirelessInterface(Interface, BaseWirelessInterface):
return False return False
if self.verbose: if self.verbose:
print('wpa_supplicant ctrl_interface status query is %s' \ print(('wpa_supplicant ctrl_interface status query is %s' \
% str(status)) % str(status)))
try: try:
[result] = [l for l in status if l.startswith("wpa_state=")] [result] = [l for l in status if l.startswith("wpa_state=")]
@@ -478,8 +478,8 @@ class WirelessInterface(Interface, BaseWirelessInterface):
auth_mode = 'WPA2PSK' auth_mode = 'WPA2PSK'
key_name = 'WPAPSK' key_name = 'WPAPSK'
else: else:
print('Unknown AuthMode, can\'t complete ' + \ print(('Unknown AuthMode, can\'t complete ' + \
'connection process!') 'connection process!'))
return return
cmd_list = [] cmd_list = []
@@ -506,7 +506,7 @@ class WirelessInterface(Interface, BaseWirelessInterface):
result = fcntl.ioctl(self.sock.fileno(), SIOCGIWAP, data)[16:] result = fcntl.ioctl(self.sock.fileno(), SIOCGIWAP, data)[16:]
except IOError as e: except IOError as e:
if self.verbose: if self.verbose:
print("SIOCGIWAP failed: " + str(e)) print(("SIOCGIWAP failed: " + str(e)))
return "" return ""
raw_addr = struct.unpack("xxBBBBBB", result[:8]) raw_addr = struct.unpack("xxBBBBBB", result[:8])
return "%02X:%02X:%02X:%02X:%02X:%02X" % raw_addr return "%02X:%02X:%02X:%02X:%02X:%02X" % raw_addr
@@ -521,7 +521,7 @@ class WirelessInterface(Interface, BaseWirelessInterface):
result = fcntl.ioctl(self.sock.fileno(), SIOCGIWRATE, data)[16:] result = fcntl.ioctl(self.sock.fileno(), SIOCGIWRATE, data)[16:]
except IOError as e: except IOError as e:
if self.verbose: if self.verbose:
print("SIOCGIWRATE failed: " + str(e)) print(("SIOCGIWRATE failed: " + str(e)))
return "" return ""
f, e, x, x = struct.unpack(fmt, result[:size]) f, e, x, x = struct.unpack(fmt, result[:size])
return "%s %s" % ((f / 1000000), 'Mb/s') return "%s %s" % ((f / 1000000), 'Mb/s')
@@ -564,7 +564,7 @@ class WirelessInterface(Interface, BaseWirelessInterface):
result = fcntl.ioctl(self.sock.fileno(), SIOCGIWRANGE, iwfreq) result = fcntl.ioctl(self.sock.fileno(), SIOCGIWRANGE, iwfreq)
except IOError as e: except IOError as e:
if self.verbose: if self.verbose:
print("SIOCGIWRANGE failed: " + str(e)) print(("SIOCGIWRANGE failed: " + str(e)))
return None return None
# This defines the iwfreq struct, used to get signal strength. # This defines the iwfreq struct, used to get signal strength.
fmt = "iiihb6ii4B4Bi32i2i2i2i2i3h8h2b2bhi8i2b3h2i2ihB17x" + 32 * "ihbb" fmt = "iiihb6ii4B4Bi32i2i2i2i2i3h8h2b2bhi8i2b3h2i2ihB17x" + 32 * "ihbb"

View File

@@ -62,7 +62,7 @@ class ConfigManager(RawConfigParser):
try: try:
self.read(path) self.read(path)
except ParsingError as p: except ParsingError as p:
print("Could not start wicd: %s" % p.message) print(("Could not start wicd: %s" % p.message))
sys.exit(1) sys.exit(1)
def __repr__(self): def __repr__(self):
@@ -125,15 +125,15 @@ class ConfigManager(RawConfigParser):
if option in ['apsk', 'password', 'identity', \ if option in ['apsk', 'password', 'identity', \
'private_key', 'private_key_passwd', \ 'private_key', 'private_key_passwd', \
'key', 'passphrase']: 'key', 'passphrase']:
print(''.join(['found ', option, \ print((''.join(['found ', option, \
' in configuration *****'])) ' in configuration *****'])))
else: else:
print(''.join(['found ', option, ' in configuration ', print((''.join(['found ', option, ' in configuration ',
str(ret)])) str(ret)])))
else: # Use the default, unless no default was provided else: # Use the default, unless no default was provided
if default != "__None__": if default != "__None__":
print('did not find %s in configuration, setting default %s' \ print(('did not find %s in configuration, setting default %s' \
% (option, str(default))) % (option, str(default))))
self.set(section, option, str(default), write=True) self.set(section, option, str(default), write=True)
ret = default ret = default
else: else:

View File

@@ -38,7 +38,7 @@ import socket
from wicd.translations import _ from wicd.translations import _
# wicd imports # wicd imports
import wpath from . import wpath
# Connection state constants # Connection state constants
NOT_CONNECTED = 0 NOT_CONNECTED = 0
@@ -155,7 +155,7 @@ def Run(cmd, include_stderr=False, return_pipe=False,
f = Popen(cmd, shell=False, stdout=PIPE, stdin=std_in, stderr=err, f = Popen(cmd, shell=False, stdout=PIPE, stdin=std_in, stderr=err,
close_fds=fds, cwd='/', env=tmpenv) close_fds=fds, cwd='/', env=tmpenv)
except OSError as e: except OSError as e:
print("Running command %s failed: %s" % (str(cmd), str(e))) print(("Running command %s failed: %s" % (str(cmd), str(e))))
return "" return ""
if return_obj: if return_obj:
@@ -252,10 +252,10 @@ def ExecuteScript(script, verbose=False, extra_parameters=()):
# escape script name # escape script name
script = quote(script) script = quote(script)
if verbose: if verbose:
print("Executing %s with params %s" % (script, params)) print(("Executing %s with params %s" % (script, params)))
ret = call('%s %s > /dev/null 2>&1' % (script, params), shell=True) ret = call('%s %s > /dev/null 2>&1' % (script, params), shell=True)
if verbose: if verbose:
print("%s returned %s" % (script, ret)) print(("%s returned %s" % (script, ret)))
def ReadFile(filename): def ReadFile(filename):
""" read in a file and return it's contents as a string """ """ read in a file and return it's contents as a string """
@@ -322,7 +322,7 @@ def ParseEncryption(network):
if rep_val: if rep_val:
line = line.replace("$_%s" % cur_val, str(rep_val)) line = line.replace("$_%s" % cur_val, str(rep_val))
else: else:
print("Ignoring template line: '%s'" % line) print(("Ignoring template line: '%s'" % line))
else: else:
print("Weird parsing error occurred") print("Weird parsing error occurred")
config_file = ''.join([config_file, line]) config_file = ''.join([config_file, line])
@@ -391,7 +391,7 @@ def _parse_enc_template(enctype):
try: try:
f = open(os.path.join(wpath.encryption, enctype), "r") f = open(os.path.join(wpath.encryption, enctype), "r")
except IOError: except IOError:
print("Failed to open template file %s" % enctype) print(("Failed to open template file %s" % enctype))
return None return None
cur_type = {} cur_type = {}
@@ -408,7 +408,7 @@ def _parse_enc_template(enctype):
cur_type["required"] = __parse_field_ent(parse_ent(line, "require")) cur_type["required"] = __parse_field_ent(parse_ent(line, "require"))
if not cur_type["required"]: if not cur_type["required"]:
# An error occured parsing the require line. # An error occured parsing the require line.
print("Invalid 'required' line found in template %s" % enctype) print(("Invalid 'required' line found in template %s" % enctype))
continue continue
elif line.startswith("optional"): elif line.startswith("optional"):
cur_type["optional"] = __parse_field_ent(parse_ent(line, cur_type["optional"] = __parse_field_ent(parse_ent(line,
@@ -416,7 +416,7 @@ def _parse_enc_template(enctype):
field_type="optional") field_type="optional")
if not cur_type["optional"]: if not cur_type["optional"]:
# An error occured parsing the optional line. # An error occured parsing the optional line.
print("Invalid 'optional' line found in template %s" % enctype) print(("Invalid 'optional' line found in template %s" % enctype))
continue continue
elif line.startswith("protected"): elif line.startswith("protected"):
cur_type["protected"] = __parse_field_ent( cur_type["protected"] = __parse_field_ent(
@@ -425,17 +425,17 @@ def _parse_enc_template(enctype):
) )
if not cur_type["protected"]: if not cur_type["protected"]:
# An error occured parsing the protected line. # An error occured parsing the protected line.
print("Invalid 'protected' line found in template %s" % enctype) print(("Invalid 'protected' line found in template %s" % enctype))
continue continue
elif line.startswith("----"): elif line.startswith("----"):
# We're done. # We're done.
break break
f.close() f.close()
if not cur_type["required"]: if not cur_type["required"]:
print("Failed to find a 'require' line in template %s" % enctype) print(("Failed to find a 'require' line in template %s" % enctype))
return None return None
if not cur_type["name"]: if not cur_type["name"]:
print("Failed to find a 'name' line in template %s" % enctype) print(("Failed to find a 'name' line in template %s" % enctype))
return None return None
else: else:
return cur_type return cur_type

View File

@@ -56,7 +56,7 @@ def diewithdbus(func):
self.__lost_dbus_count = 0 self.__lost_dbus_count = 0
return ret return ret
except DBusException as e: except DBusException as e:
print("Caught exception %s" % str(e)) print(("Caught exception %s" % str(e)))
if not hasattr(self, "__lost_dbus_count"): if not hasattr(self, "__lost_dbus_count"):
self.__lost_dbus_count = 0 self.__lost_dbus_count = 0
if self.__lost_dbus_count > 3: if self.__lost_dbus_count > 3:
@@ -188,7 +188,7 @@ class ConnectionStatus(object):
# If we haven't gotten any signal 4 runs in a row (12 seconds), # If we haven't gotten any signal 4 runs in a row (12 seconds),
# try to reconnect. # try to reconnect.
self.connection_lost_counter += 1 self.connection_lost_counter += 1
print(self.connection_lost_counter) print((self.connection_lost_counter))
if self.connection_lost_counter >= 4 and daemon.GetAutoReconnect(): if self.connection_lost_counter >= 4 and daemon.GetAutoReconnect():
wireless.DisconnectWireless() wireless.DisconnectWireless()
self.connection_lost_counter = 0 self.connection_lost_counter = 0
@@ -364,8 +364,8 @@ class ConnectionStatus(object):
# before we reconnect # before we reconnect
print('Disconnecting from network') print('Disconnecting from network')
wireless.DisconnectWireless() wireless.DisconnectWireless()
print('Trying to reconnect to last used wireless ' + \ print(('Trying to reconnect to last used wireless ' + \
'network') 'network'))
wireless.ConnectWireless(cur_net_id) wireless.ConnectWireless(cur_net_id)
else: else:
daemon.AutoConnect(True, reply_handler=reply_handle, daemon.AutoConnect(True, reply_handler=reply_handle,

View File

@@ -51,7 +51,7 @@ from signal import SIGTERM
# wicd imports # wicd imports
from . import misc from . import misc
import wpath from . import wpath
from .backend import BackendManager from .backend import BackendManager
from .translations import _ from .translations import _
@@ -125,7 +125,7 @@ def expand_script_macros(script, msg, bssid, essid):
macro = match.group(1).lower() macro = match.group(1).lower()
if macro in macro_dict: if macro in macro_dict:
return macro_dict[macro] return macro_dict[macro]
print('Warning: found illegal macro %s in %s script' % (macro, msg)) print(('Warning: found illegal macro %s in %s script' % (macro, msg)))
return match.group() return match.group()
macro_dict = { 'script' : msg, macro_dict = { 'script' : msg,
@@ -133,7 +133,7 @@ def expand_script_macros(script, msg, bssid, essid):
'essid' : essid } 'essid' : essid }
regex = re.compile(r'%\{([a-zA-Z0-9]+)\}') regex = re.compile(r'%\{([a-zA-Z0-9]+)\}')
expanded = regex.sub(repl, script) expanded = regex.sub(repl, script)
print("Expanded '%s' to '%s'" % (script, expanded)) print(("Expanded '%s' to '%s'" % (script, expanded)))
return expanded return expanded
@@ -430,7 +430,7 @@ class ConnectThread(threading.Thread):
""" """
if script: if script:
print('Executing %s script' % (msg)) print(('Executing %s script' % (msg)))
misc.ExecuteScript(expand_script_macros(script, msg, bssid, essid), misc.ExecuteScript(expand_script_macros(script, msg, bssid, essid),
self.debug) self.debug)
@@ -446,7 +446,7 @@ class ConnectThread(threading.Thread):
""" Set the broadcast address for the given interface. """ """ Set the broadcast address for the given interface. """
if not self.network.get('broadcast') == None: if not self.network.get('broadcast') == None:
self.SetStatus('setting_broadcast_address') self.SetStatus('setting_broadcast_address')
print('Setting the broadcast address...' + self.network['broadcast']) print(('Setting the broadcast address...' + self.network['broadcast']))
iface.SetAddress(broadcast=self.network['broadcast']) iface.SetAddress(broadcast=self.network['broadcast'])
@abortable @abortable
@@ -458,10 +458,10 @@ class ConnectThread(threading.Thread):
""" """
if self.network.get('ip'): if self.network.get('ip'):
self.SetStatus('setting_static_ip') self.SetStatus('setting_static_ip')
print('Setting static IP : ' + self.network['ip']) print(('Setting static IP : ' + self.network['ip']))
iface.SetAddress(self.network['ip'], self.network['netmask']) iface.SetAddress(self.network['ip'], self.network['netmask'])
if self.network.get('gateway'): if self.network.get('gateway'):
print('Setting default gateway : ' + self.network['gateway']) print(('Setting default gateway : ' + self.network['gateway']))
iface.SetDefaultRoute(self.network['gateway']) iface.SetDefaultRoute(self.network['gateway'])
else: else:
# Run dhcp... # Run dhcp...
@@ -472,7 +472,7 @@ class ConnectThread(threading.Thread):
self.network['dhcphostname'] = os.uname()[1] self.network['dhcphostname'] = os.uname()[1]
if self.network['usedhcphostname']: if self.network['usedhcphostname']:
hname = self.network['dhcphostname'] hname = self.network['dhcphostname']
print("Running DHCP with hostname", hname) print(("Running DHCP with hostname", hname))
else: else:
hname = None hname = None
print("Running DHCP with NO hostname") print("Running DHCP with NO hostname")
@@ -657,7 +657,7 @@ class Wireless(Controller):
# Note: this does not always work, sometimes we have to pass it with "iwlist wlan0 scan essid -- XXXXX" # Note: this does not always work, sometimes we have to pass it with "iwlist wlan0 scan essid -- XXXXX"
essid = misc.Noneify(essid) essid = misc.Noneify(essid)
if essid is not None: if essid is not None:
print('Setting hidden essid ' + essid) print(('Setting hidden essid ' + essid))
wiface.SetEssid(essid) wiface.SetEssid(essid)
# sleep for a bit; scanning to fast will result in nothing # sleep for a bit; scanning to fast will result in nothing
time.sleep(1) time.sleep(1)
@@ -843,7 +843,7 @@ class Wireless(Controller):
action = 'block' action = 'block'
for t in types: for t in types:
cmd = ['rfkill', action, t] cmd = ['rfkill', action, t]
print("rfkill: %sing %s" % (action, t)) print(("rfkill: %sing %s" % (action, t)))
misc.Run(cmd) misc.Run(cmd)
return True return True
except Exception as e: except Exception as e:
@@ -982,7 +982,7 @@ class WirelessConnectThread(ConnectThread):
if self.network.get('enctype'): if self.network.get('enctype'):
self.SetStatus('validating_authentication') self.SetStatus('validating_authentication')
if not wiface.ValidateAuthentication(time.time()): if not wiface.ValidateAuthentication(time.time()):
print("connect result is %s" % self.connect_result) print(("connect result is %s" % self.connect_result))
if not self.connect_result or self.connect_result == 'failed': if not self.connect_result or self.connect_result == 'failed':
self.abort_connection('bad_pass') self.abort_connection('bad_pass')
@@ -1004,7 +1004,7 @@ class WirelessConnectThread(ConnectThread):
self.SetStatus('done') self.SetStatus('done')
print('Connecting thread exiting.') print('Connecting thread exiting.')
if self.debug: if self.debug:
print("IP Address is: " + str(wiface.GetIP())) print(("IP Address is: " + str(wiface.GetIP())))
self.connect_result = "success" self.connect_result = "success"
self.is_connecting = False self.is_connecting = False
@@ -1021,7 +1021,7 @@ class WirelessConnectThread(ConnectThread):
self.SetStatus('verifying_association') self.SetStatus('verifying_association')
print("Verifying AP association...") print("Verifying AP association...")
for tries in range(1, 11): for tries in range(1, 11):
print("Attempt %d of 10..." % tries) print(("Attempt %d of 10..." % tries))
retcode = self.iface.VerifyAPAssociation(self.network['gateway']) retcode = self.iface.VerifyAPAssociation(self.network['gateway'])
if retcode == 0: if retcode == 0:
print("Successfully associated.") print("Successfully associated.")
@@ -1051,7 +1051,7 @@ class WirelessConnectThread(ConnectThread):
# Check to see if we need to generate a PSK (only for non-ralink # Check to see if we need to generate a PSK (only for non-ralink
# cards). # cards).
if self.debug: if self.debug:
print("enctype is %s" % self.network.get('enctype')) print(("enctype is %s" % self.network.get('enctype')))
if self.network.get('key') and \ if self.network.get('key') and \
'wpa' in str(self.network.get('enctype')): 'wpa' in str(self.network.get('enctype')):
self.SetStatus('generating_psk') self.SetStatus('generating_psk')
@@ -1060,9 +1060,9 @@ class WirelessConnectThread(ConnectThread):
if not self.network.get('psk'): if not self.network.get('psk'):
self.network['psk'] = self.network['key'] self.network['psk'] = self.network['key']
print('WARNING: PSK generation failed! Falling back to ' + \ print(('WARNING: PSK generation failed! Falling back to ' + \
'wireless key.\nPlease report this error to the wicd ' + \ 'wireless key.\nPlease report this error to the wicd ' + \
'developers!') 'developers!'))
# Generate the wpa_supplicant file... # Generate the wpa_supplicant file...
if self.network.get('enctype'): if self.network.get('enctype'):
self.SetStatus('generating_wpa_config') self.SetStatus('generating_wpa_config')
@@ -1249,7 +1249,7 @@ class WiredConnectThread(ConnectThread):
self.SetStatus('done') self.SetStatus('done')
print('Connecting thread exiting.') print('Connecting thread exiting.')
if self.debug: if self.debug:
print("IP Address is: " + str(liface.GetIP())) print(("IP Address is: " + str(liface.GetIP())))
self.connect_result = "success" self.connect_result = "success"
self.is_connecting = False self.is_connecting = False

View File

@@ -21,7 +21,7 @@
# #
import locale import locale
import os import os
import wpath from . import wpath
import gettext import gettext
@@ -45,7 +45,7 @@ def get_gettext():
'LC_ALL', 'LANG', 'LC_ALL', 'LANG',
'LANGUAGE')) 'LANGUAGE'))
except ValueError as e: except ValueError as e:
print(str(e)) print((str(e)))
print("Default locale unavailable, falling back to en_US") print("Default locale unavailable, falling back to en_US")
if (lc): if (lc):
langs += [lc] langs += [lc]

View File

@@ -35,7 +35,6 @@ import os
import re import re
import random import random
import time import time
from string import maketrans, translate
import dbus import dbus
import socket, fcntl import socket, fcntl
import shutil import shutil
@@ -81,19 +80,18 @@ NONE_DRIVER = 'none'
blacklist_strict = '!"#$%&\'()*+,./:;<=>?@[\\]^`{|}~ ' blacklist_strict = '!"#$%&\'()*+,./:;<=>?@[\\]^`{|}~ '
blacklist_norm = ";`$!*|><&\\" blacklist_norm = ";`$!*|><&\\"
blank_trans = maketrans("", "")
def _sanitize_string(string): def _sanitize_string(string):
""" Sanitize string. """ """ Sanitize string. """
if string: if string:
return translate(str(string), blank_trans, blacklist_norm) return str(string).translate(blacklist_norm)
else: else:
return string return string
def _sanitize_string_strict(string): def _sanitize_string_strict(string):
""" Sanitize string in a stricter way. """ """ Sanitize string in a stricter way. """
if string: if string:
return translate(str(string), blank_trans, blacklist_strict) return str(string).translate(blacklist_strict)
else: else:
return string return string