mirror of
https://github.com/gryf/wicd.git
synced 2026-03-09 19:15:55 +01:00
Support alternative ifconfig output style
This commit is contained in:
@@ -58,7 +58,9 @@ wpa1_pattern = re.compile('(WPA Version 1)', _re_mode)
|
|||||||
wpa2_pattern = re.compile('(WPA2)', _re_mode)
|
wpa2_pattern = re.compile('(WPA2)', _re_mode)
|
||||||
|
|
||||||
#iwconfig-only regular expressions.
|
#iwconfig-only regular expressions.
|
||||||
|
ip_up = re.compile(r'flags=[0.9]*<([^>]*)>', re.S)
|
||||||
ip_pattern = re.compile(r'inet [Aa]d?dr[^.]*:([^.]*\.[^.]*\.[^.]*\.[0-9]*)', re.S)
|
ip_pattern = re.compile(r'inet [Aa]d?dr[^.]*:([^.]*\.[^.]*\.[^.]*\.[0-9]*)', re.S)
|
||||||
|
ip_pattern1 = re.compile(r'inet ([^.]*\.[^.]*\.[^.]*\.[0-9]*)', re.S)
|
||||||
bssid_pattern = re.compile('.*[(Access Point)|(Cell)]: (([0-9A-Z]{2}:){5}[0-9A-Z]{2})', _re_mode)
|
bssid_pattern = re.compile('.*[(Access Point)|(Cell)]: (([0-9A-Z]{2}:){5}[0-9A-Z]{2})', _re_mode)
|
||||||
bitrate_pattern = re.compile('.*Bit Rate[=:](.*?/s)', _re_mode)
|
bitrate_pattern = re.compile('.*Bit Rate[=:](.*?/s)', _re_mode)
|
||||||
opmode_pattern = re.compile('.*Mode:(.*?) ', _re_mode)
|
opmode_pattern = re.compile('.*Mode:(.*?) ', _re_mode)
|
||||||
@@ -724,8 +726,12 @@ class BaseInterface(object):
|
|||||||
output = self.GetIfconfig()
|
output = self.GetIfconfig()
|
||||||
else:
|
else:
|
||||||
output = ifconfig
|
output = ifconfig
|
||||||
return misc.RunRegex(ip_pattern, output)
|
# check multiple ifconfig output styles
|
||||||
|
for pat in [ip_pattern, ip_pattern1]:
|
||||||
|
m = misc.RunRegex(ip_pattern, output)
|
||||||
|
if m: return m
|
||||||
|
return None
|
||||||
|
|
||||||
@neediface(False)
|
@neediface(False)
|
||||||
def VerifyAPAssociation(self, gateway):
|
def VerifyAPAssociation(self, gateway):
|
||||||
""" Verify assocation with an access point.
|
""" Verify assocation with an access point.
|
||||||
@@ -773,6 +779,11 @@ class BaseInterface(object):
|
|||||||
lines = output.split('\n')
|
lines = output.split('\n')
|
||||||
if len(lines) < 5:
|
if len(lines) < 5:
|
||||||
return False
|
return False
|
||||||
|
# check alternative ifconfig output style
|
||||||
|
m = misc.RunRegex(ip_up, lines[0])
|
||||||
|
if m and m.find('UP') > -1:
|
||||||
|
return True
|
||||||
|
# check classic ifconfig output style
|
||||||
for line in lines[1:4]:
|
for line in lines[1:4]:
|
||||||
if line.strip().startswith('UP'):
|
if line.strip().startswith('UP'):
|
||||||
return True
|
return True
|
||||||
|
|||||||
Reference in New Issue
Block a user