Skip to content

Commit af9e8b5

Browse files
committed
[fix] Added wireless interface to DSA types #230
Fixes #230
1 parent 858aa19 commit af9e8b5

5 files changed

Lines changed: 1282 additions & 46 deletions

File tree

netjsonconfig/backends/openwrt/converters/interfaces.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,12 @@ class Interfaces(OpenWrtConverter):
3333
_device_config = {}
3434
_custom_protocols = ['ppp']
3535
_proto_dsa_conflict = ['modemmanager', 'modem-manager']
36-
_interface_dsa_types = ['loopback', 'ethernet', 'bridge'] + _proto_dsa_conflict
36+
_interface_dsa_types = [
37+
'loopback',
38+
'ethernet',
39+
'bridge',
40+
'wireless',
41+
] + _proto_dsa_conflict
3742

3843
def __set_dsa_interface(self, interface):
3944
"""

tests/openwrt/test_backend.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -156,8 +156,11 @@ def test_generate(self):
156156
network = tar.getmember('etc/config/network')
157157
contents = tar.extractfile(network).read().decode()
158158
expected = self._tabs(
159-
"""config interface 'wlan0'
160-
option ifname 'wlan0'
159+
"""config device 'device_wlan0'
160+
option name 'wlan0'
161+
162+
config interface 'wlan0'
163+
option device 'wlan0'
161164
option ipaddr '192.168.1.1'
162165
option netmask '255.255.255.0'
163166
option proto 'static'

tests/openwrt/test_encryption.py

Lines changed: 88 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,11 @@ class TestEncryption(unittest.TestCase, _TabsMixin):
2929
}
3030
_wpa3_personal_uci = """package network
3131
32+
config device 'device_wlan0'
33+
option name 'wlan0'
34+
3235
config interface 'wlan0'
33-
option ifname 'wlan0'
36+
option device 'wlan0'
3437
option proto 'none'
3538
3639
package wireless
@@ -76,8 +79,11 @@ def test_parse_wpa3_personal(self):
7679
}
7780
_wpa2_personal_mixed_uci = """package network
7881
82+
config device 'device_wlan0'
83+
option name 'wlan0'
84+
7985
config interface 'wlan0'
80-
option ifname 'wlan0'
86+
option device 'wlan0'
8187
option proto 'none'
8288
8389
package wireless
@@ -123,8 +129,11 @@ def test_parse_wpa2_personal_mixed(self):
123129
}
124130
_wpa2_personal_uci = """package network
125131
132+
config device 'device_wlan0'
133+
option name 'wlan0'
134+
126135
config interface 'wlan0'
127-
option ifname 'wlan0'
136+
option device 'wlan0'
128137
option proto 'none'
129138
130139
package wireless
@@ -170,8 +179,11 @@ def test_parse_wpa2_personal(self):
170179
}
171180
_wpa_personal_mixed_uci = """package network
172181
182+
config device 'device_wlan0'
183+
option name 'wlan0'
184+
173185
config interface 'wlan0'
174-
option ifname 'wlan0'
186+
option device 'wlan0'
175187
option proto 'none'
176188
177189
package wireless
@@ -216,8 +228,11 @@ def test_parse_wpa_personal_mixed(self):
216228
}
217229
_wpa_personal_uci = """package network
218230
231+
config device 'device_wlan0'
232+
option name 'wlan0'
233+
219234
config interface 'wlan0'
220-
option ifname 'wlan0'
235+
option device 'wlan0'
221236
option proto 'none'
222237
223238
package wireless
@@ -263,8 +278,11 @@ def test_parse_wpa_personal(self):
263278
}
264279
_wpa2_enterprise_mixed_ap_uci = """package network
265280
281+
config device 'device_wlan0'
282+
option name 'wlan0'
283+
266284
config interface 'wlan0'
267-
option ifname 'wlan0'
285+
option device 'wlan0'
268286
option proto 'none'
269287
270288
package wireless
@@ -317,8 +335,11 @@ def test_parse_wpa2_enterprise_mixed_ap(self):
317335
}
318336
_wpa3_enterprise_ap_uci = """package network
319337
338+
config device 'device_wlan0'
339+
option name 'wlan0'
340+
320341
config interface 'wlan0'
321-
option ifname 'wlan0'
342+
option device 'wlan0'
322343
option proto 'none'
323344
324345
package wireless
@@ -375,8 +396,11 @@ def test_parse_wpa3_enterprise(self):
375396
}
376397
_wpa2_enterprise_ap_uci = """package network
377398
399+
config device 'device_wlan0'
400+
option name 'wlan0'
401+
378402
config interface 'wlan0'
379-
option ifname 'wlan0'
403+
option device 'wlan0'
380404
option proto 'none'
381405
382406
package wireless
@@ -427,8 +451,11 @@ def test_parse_wpa2_enterprise(self):
427451
}
428452
_wpa_enterprise_mixed_ap_uci = """package network
429453
454+
config device 'device_wlan0'
455+
option name 'wlan0'
456+
430457
config interface 'wlan0'
431-
option ifname 'wlan0'
458+
option device 'wlan0'
432459
option proto 'none'
433460
434461
package wireless
@@ -474,8 +501,11 @@ def test_parse_wpa_enterprise_mixed_ap(self):
474501
}
475502
_wpa_enterprise_ap_uci = """package network
476503
504+
config device 'device_wlan0'
505+
option name 'wlan0'
506+
477507
config interface 'wlan0'
478-
option ifname 'wlan0'
508+
option device 'wlan0'
479509
option proto 'none'
480510
481511
package wireless
@@ -525,8 +555,11 @@ def test_parse_wpa_enterprise_ap(self):
525555

526556
_wpa3_enterprise_client_uci = """package network
527557
558+
config device 'device_wlan0'
559+
option name 'wlan0'
560+
528561
config interface 'wlan0'
529-
option ifname 'wlan0'
562+
option device 'wlan0'
530563
option proto 'none'
531564
532565
package wireless
@@ -578,8 +611,11 @@ def test_parse_wpa3_enterprise_client(self):
578611
}
579612
_wpa2_enterprise_client_uci = """package network
580613
614+
config device 'device_wlan0'
615+
option name 'wlan0'
616+
581617
config interface 'wlan0'
582-
option ifname 'wlan0'
618+
option device 'wlan0'
583619
option proto 'none'
584620
585621
package wireless
@@ -631,8 +667,11 @@ def test_parse_wpa2_enterprise_client(self):
631667
}
632668
_wpa2_enterprise_ttls_client_uci = """package network
633669
670+
config device 'device_wlan0'
671+
option name 'wlan0'
672+
634673
config interface 'wlan0'
635-
option ifname 'wlan0'
674+
option device 'wlan0'
636675
option proto 'none'
637676
638677
package wireless
@@ -684,8 +723,11 @@ def test_parse_wpa2_enterprise_ttls_client(self):
684723
}
685724
_wpa2_enterprise_peap_client_uci = """package network
686725
726+
config device 'device_wlan0'
727+
option name 'wlan0'
728+
687729
config interface 'wlan0'
688-
option ifname 'wlan0'
730+
option device 'wlan0'
689731
option proto 'none'
690732
691733
package wireless
@@ -738,8 +780,11 @@ def test_parse_wpa2_enterprise_peap_client(self):
738780

739781
_wpa2_enterprise_tls_client_auth_uci = """package network
740782
783+
config device 'device_wlan0'
784+
option name 'wlan0'
785+
741786
config interface 'wlan0'
742-
option ifname 'wlan0'
787+
option device 'wlan0'
743788
option proto 'none'
744789
745790
package wireless
@@ -782,8 +827,11 @@ def test_render_wpa2_enterprise_tls_client_auth(self):
782827
}
783828
_wep_open_uci = """package network
784829
830+
config device 'device_wlan0'
831+
option name 'wlan0'
832+
785833
config interface 'wlan0'
786-
option ifname 'wlan0'
834+
option device 'wlan0'
787835
option proto 'none'
788836
789837
package wireless
@@ -828,8 +876,11 @@ def test_parse_wep_open(self):
828876
}
829877
_wep_shared_uci = """package network
830878
879+
config device 'device_wlan0'
880+
option name 'wlan0'
881+
831882
config interface 'wlan0'
832-
option ifname 'wlan0'
883+
option device 'wlan0'
833884
option proto 'none'
834885
835886
package wireless
@@ -879,8 +930,11 @@ def test_encryption_disabled(self):
879930
expected = self._tabs(
880931
"""package network
881932
933+
config device 'device_wlan0'
934+
option name 'wlan0'
935+
882936
config interface 'wlan0'
883-
option ifname 'wlan0'
937+
option device 'wlan0'
884938
option proto 'none'
885939
886940
package wireless
@@ -916,8 +970,11 @@ def test_no_encryption(self):
916970
expected = self._tabs(
917971
"""package network
918972
973+
config device 'device_wlan0'
974+
option name 'wlan0'
975+
919976
config interface 'wlan0'
920-
option ifname 'wlan0'
977+
option device 'wlan0'
921978
option proto 'none'
922979
923980
package wireless
@@ -953,8 +1010,11 @@ def test_no_encryption(self):
9531010
}
9541011
_wpa2_80211s_uci = """package network
9551012
1013+
config device 'device_mesh0'
1014+
option name 'mesh0'
1015+
9561016
config interface 'mesh0'
957-
option ifname 'mesh0'
1017+
option device 'mesh0'
9581018
option proto 'none'
9591019
9601020
package wireless
@@ -999,8 +1059,11 @@ def test_parse_wpa2_80211s(self):
9991059
}
10001060
_wpa2_adhoc_uci = """package network
10011061
1062+
config device 'device_wlan0'
1063+
option name 'wlan0'
1064+
10021065
config interface 'wlan0'
1003-
option ifname 'wlan0'
1066+
option device 'wlan0'
10041067
option proto 'none'
10051068
10061069
package wireless
@@ -1046,8 +1109,11 @@ def test_parse_wpa2_adhoc(self):
10461109
}
10471110
_wps_ap_uci = """package network
10481111
1112+
config device 'device_wlan0'
1113+
option name 'wlan0'
1114+
10491115
config interface 'wlan0'
1050-
option ifname 'wlan0'
1116+
option device 'wlan0'
10511117
option proto 'none'
10521118
10531119
package wireless

0 commit comments

Comments
 (0)