diff --git a/subiquitycore/models/network.py b/subiquitycore/models/network.py index e0473f8c..92d258ca 100644 --- a/subiquitycore/models/network.py +++ b/subiquitycore/models/network.py @@ -44,6 +44,7 @@ class Networkdev(): self.nameservers = [] self.gateway = None self.essid = None + self.wpa_psk = None def configure(self, probe_info=None): log.debug('Configuring iface {}'.format(self.ifname)) @@ -118,7 +119,13 @@ class Networkdev(): result[self.ifname]['interfaces'] = self.probe_info.bond['slaves'] if self.iftype == 'wlan': - pass + if self.essid is not None: + aps = result[self.ifname]['access-points'] = {} + ap = aps[self.essid] = { + 'mode': 'infrastructure', + } + if self.wpa_psk is not None: + ap['password'] = self.wpa_psk return result diff --git a/subiquitycore/ui/views/network_configure_interface.py b/subiquitycore/ui/views/network_configure_interface.py index 17c724c1..997cb98a 100644 --- a/subiquitycore/ui/views/network_configure_interface.py +++ b/subiquitycore/ui/views/network_configure_interface.py @@ -271,6 +271,11 @@ class NetworkConfigureWLANView(BaseView): return Pile(buttons, focus_item=done) def done(self, btn): + if self.essid_input.value: + self.iface_obj.essid = self.essid_input.value + else: + self.iface_obj.essid = None + self.iface_obj.wpa_psk = self.psk_input.value self.signal.prev_signal() def cancel(self, btn):