def setConfig(self, intf, aplist=None, wlan=0):
        """Configure AP
        :param ap: ap node
        :param aplist: list of aps
        :param wlan: wlan id"""
        if intf.ssid:
            if intf.encrypt and 'config' not in intf.node.params:
                if intf.encrypt == 'wpa':
                    intf.auth_algs = 1
                    if intf.ieee80211r:
                        intf.wpa_key_mgmt = 'FT-EAP'
                    else:
                        intf.wpa_key_mgmt = 'WPA-EAP'
                    intf.rsn_pairwise = 'TKIP CCMP'
                    intf.wpa_passphrase = intf.passwd
                elif intf.encrypt == 'wpa2' \
                        or intf.encrypt == 'wpa3':
                    intf.auth_algs = 1
                    if intf.ieee80211r and not intf.authmode:
                        intf.wpa_key_mgmt = 'FT-PSK'
                    elif intf.authmode == '8021x':
                        intf.wpa_key_mgmt = 'WPA-EAP'
                    else:
                        intf.wpa_key_mgmt = 'WPA-PSK'
                    intf.rsn_pairwise = 'CCMP'
                    if not intf.authmode:
                        intf.wpa_passphrase = intf.passwd
                elif intf.encrypt == 'wep':
                    intf.auth_algs = 2
                    intf.wep_key0 = intf.passwd

            if isinstance(intf, adhoc):
                adhoc(intf.node, wlan)
            else:
                return self.setHostapdConfig(intf, wlan, aplist)
    def setChannel(self, chann, intf=None):
        "Set Channel"
        wlan, intf = self.get_wlan_intf(intf)
        intf.channel = chann

        if isinstance(self, AP):
            intf.setAPChannel()
        elif isinstance(intf, mesh):
            intf.setChannel()
        elif isinstance(intf, adhoc):
            intf.ibss_leave()
            adhoc(self, chann=chann, intf=intf)
        self.remove_attr_from_params('channel')
Example #3
0
    def setChannel(self, chann, intf=None):
        "Set Channel"
        intf, wlan = self.get_wlan_intf(intf)
        intf.channel = chann

        if isinstance(self, AP):
            intf.setAPChannel()
        elif isinstance(intf, mesh):
            intf.setChannel()
        elif isinstance(intf, adhoc):
            self.cmd('iw dev %s ibss leave' % intf.name)
            adhoc(self, chann=chann, intf=intf)
        self.remove_attr_from_params('channel')
 def setAdhocMode(self, intf=None, **kwargs):
     wlan, intf = self.get_wlan_intf(intf)
     if isinstance(self.wintfs[wlan], adhoc):
         intf.ibss_leave()
     adhoc(self, intf, **kwargs)
Example #5
0
 def setAdhocMode(self, intf=None, **kwargs):
     if intf: kwargs['intf'] = intf
     wlan = self.get_wlan(kwargs['intf'])
     if isinstance(self.wintfs[wlan], adhoc):
         self.cmd('iw dev %s ibss leave' % self.params['wlan'][wlan])
     adhoc(self, **kwargs)