• source navigation  • diff markup  • identifier search  • freetext search  • 

Sources/netifd/examples/wireless/mac80211.sh

  1 #!/bin/sh
  2 NETIFD_MAIN_DIR=../../scripts
  3 . $NETIFD_MAIN_DIR/netifd-wireless.sh
  4 
  5 init_wireless_driver "$@"
  6 
  7 MP_CONFIG_INT="mesh_retry_timeout mesh_confirm_timeout mesh_holding_timeout mesh_max_peer_links
  8                mesh_max_retries mesh_ttl mesh_element_ttl mesh_hwmp_max_preq_retries
  9                mesh_path_refresh_time mesh_min_discovery_timeout mesh_hwmp_active_path_timeout
 10                mesh_hwmp_preq_min_interval mesh_hwmp_net_diameter_traversal_time mesh_hwmp_rootmode
 11                mesh_hwmp_rann_interval mesh_gate_announcements mesh_sync_offset_max_neighor
 12                mesh_rssi_threshold mesh_hwmp_active_path_to_root_timeout mesh_hwmp_root_interval
 13                mesh_hwmp_confirmation_interval mesh_awake_window mesh_plink_timeout"
 14 MP_CONFIG_BOOL="mesh_auto_open_plinks mesh_fwding"
 15 MP_CONFIG_STRING="mesh_power_mode"
 16 
 17 hostapd_add_log_config() {
 18         config_add_boolean \
 19                 log_80211 \
 20                 log_8021x \
 21                 log_radius \
 22                 log_wpa \
 23                 log_driver \
 24                 log_iapp \
 25                 log_mlme
 26 
 27         config_add_int log_level
 28 }
 29 
 30 hostapd_common_add_device_config() {
 31         config_add_array basic_rate
 32         config_add_array supported_rates
 33         config_add_string beacon_rate
 34 
 35         config_add_string country country3
 36         config_add_boolean country_ie doth
 37         config_add_boolean spectrum_mgmt_required
 38         config_add_int local_pwr_constraint
 39         config_add_string require_mode
 40         config_add_boolean legacy_rates
 41         config_add_int cell_density
 42         config_add_int rts_threshold
 43         config_add_int rssi_reject_assoc_rssi
 44         config_add_int rssi_ignore_probe_request
 45         config_add_int maxassoc
 46         config_add_int reg_power_type
 47         config_add_boolean stationary_ap
 48 
 49         config_add_string acs_chan_bias
 50         config_add_array hostapd_options
 51 
 52         config_add_int airtime_mode
 53         config_add_int mbssid
 54 
 55         config_add_boolean afc
 56         config_add_string \
 57                 afc_request_version afc_request_id afc_serial_number \
 58                 afc_location_type afc_location afc_height afc_height_type
 59         config_add_array afc_cert_ids afc_freq_range afc_op_class
 60         config_add_int \
 61                 afc_min_power afc_major_axis afc_minor_axis afc_orientation \
 62                 afc_vertical_tolerance
 63 
 64         hostapd_add_log_config
 65 }
 66 
 67 
 68 drv_mac80211_init_device_config() {
 69         hostapd_common_add_device_config
 70 
 71         config_add_string path phy 'macaddr:macaddr'
 72         config_add_string tx_burst
 73         config_add_string distance
 74         config_add_string ifname_prefix
 75         config_add_string macaddr_base
 76         config_add_int radio beacon_int chanbw frag rts
 77         config_add_int rxantenna txantenna txpower min_tx_power
 78         config_add_int num_global_macaddr multiple_bssid
 79         config_add_boolean noscan ht_coex acs_exclude_dfs background_radar
 80         config_add_array ht_capab
 81         config_add_array channels
 82         config_add_array scan_list
 83         config_add_boolean \
 84                 rxldpc \
 85                 short_gi_80 \
 86                 short_gi_160 \
 87                 tx_stbc_2by1 \
 88                 su_beamformer \
 89                 su_beamformee \
 90                 mu_beamformer \
 91                 mu_beamformee \
 92                 he_su_beamformer \
 93                 he_su_beamformee \
 94                 he_mu_beamformer \
 95                 vht_txop_ps \
 96                 htc_vht \
 97                 rx_antenna_pattern \
 98                 tx_antenna_pattern \
 99                 he_spr_sr_control \
100                 he_spr_psr_enabled \
101                 he_bss_color_enabled \
102                 he_twt_required
103         config_add_int \
104                 beamformer_antennas \
105                 beamformee_antennas \
106                 vht_max_a_mpdu_len_exp \
107                 vht_max_mpdu \
108                 vht_link_adapt \
109                 vht160 \
110                 rx_stbc \
111                 tx_stbc \
112                 he_bss_color \
113                 he_spr_non_srg_obss_pd_max_offset
114         config_add_boolean \
115                 ldpc \
116                 greenfield \
117                 short_gi_20 \
118                 short_gi_40 \
119                 max_amsdu \
120                 dsss_cck_40
121 }
122 
123 hostapd_common_add_bss_config() {
124         config_add_string 'bssid:macaddr' 'ssid:string'
125         config_add_boolean wds wmm uapsd hidden utf8_ssid ppsk
126 
127         config_add_int maxassoc max_inactivity
128         config_add_boolean disassoc_low_ack isolate short_preamble skip_inactivity_poll
129 
130         config_add_int \
131                 wep_rekey eap_reauth_period \
132                 wpa_group_rekey wpa_pair_rekey wpa_master_rekey
133         config_add_boolean wpa_strict_rekey
134         config_add_boolean wpa_disable_eapol_key_retries
135 
136         config_add_boolean tdls_prohibit
137 
138         config_add_boolean rsn_preauth auth_cache
139         config_add_int ieee80211w
140         config_add_int eapol_version
141 
142         config_add_array auth_server acct_server
143         config_add_string 'server:host'
144         config_add_string auth_secret key
145         config_add_int 'auth_port:port' 'port:port'
146 
147         config_add_string acct_secret
148         config_add_int acct_port
149         config_add_int acct_interval
150 
151         config_add_int bss_load_update_period chan_util_avg_period
152 
153         config_add_string dae_client
154         config_add_string dae_secret
155         config_add_int dae_port
156 
157         config_add_string nasid
158         config_add_string ownip
159         config_add_string radius_client_addr
160         config_add_string iapp_interface
161         config_add_string eap_type ca_cert client_cert identity anonymous_identity auth priv_key priv_key_pwd
162         config_add_boolean ca_cert_usesystem ca_cert2_usesystem
163         config_add_string subject_match subject_match2
164         config_add_array altsubject_match altsubject_match2
165         config_add_array domain_match domain_match2 domain_suffix_match domain_suffix_match2
166         config_add_string ieee80211w_mgmt_cipher
167 
168         config_add_int dynamic_vlan vlan_naming vlan_no_bridge
169         config_add_string vlan_tagged_interface vlan_bridge
170         config_add_string vlan_file
171 
172         config_add_string 'key1:wepkey' 'key2:wepkey' 'key3:wepkey' 'key4:wepkey' 'password:wpakey'
173 
174         config_add_string wpa_psk_file
175 
176         config_add_int multi_ap
177 
178         config_add_boolean wps_pushbutton wps_label ext_registrar wps_pbc_in_m1
179         config_add_int wps_ap_setup_locked wps_independent
180         config_add_string wps_device_type wps_device_name wps_manufacturer wps_pin
181         config_add_string multi_ap_backhaul_ssid multi_ap_backhaul_key
182 
183         config_add_boolean wnm_sleep_mode wnm_sleep_mode_no_keys bss_transition mbo
184         config_add_int time_advertisement
185         config_add_string time_zone
186         config_add_string vendor_elements
187 
188         config_add_boolean ieee80211k rrm_neighbor_report rrm_beacon_report
189 
190         config_add_boolean ftm_responder stationary_ap
191         config_add_string lci civic
192 
193         config_add_boolean ieee80211r pmk_r1_push ft_psk_generate_local ft_over_ds
194         config_add_int r0_key_lifetime reassociation_deadline
195         config_add_string mobility_domain r1_key_holder rxkh_file
196         config_add_array r0kh r1kh
197 
198         config_add_int ieee80211w_max_timeout ieee80211w_retry_timeout
199 
200         config_add_string macfilter 'macfile:file'
201         config_add_array 'maclist:list(macaddr)'
202 
203         config_add_array bssid_blacklist
204         config_add_array bssid_whitelist
205 
206         config_add_int mcast_rate
207         config_add_array basic_rate
208         config_add_array supported_rates
209 
210         config_add_boolean sae_require_mfp
211         config_add_int sae_pwe
212 
213         config_add_string 'owe_transition_bssid:macaddr' 'owe_transition_ssid:string'
214         config_add_string owe_transition_ifname
215 
216         config_add_boolean iw_enabled iw_internet iw_asra iw_esr iw_uesa
217         config_add_int iw_access_network_type iw_venue_group iw_venue_type
218         config_add_int iw_ipaddr_type_availability iw_gas_address3
219         config_add_string iw_hessid iw_network_auth_type iw_qos_map_set
220         config_add_array iw_roaming_consortium iw_domain_name iw_anqp_3gpp_cell_net iw_nai_realm
221         config_add_array iw_anqp_elem iw_venue_name iw_venue_url
222 
223         config_add_boolean hs20 disable_dgaf osen
224         config_add_int anqp_domain_id
225         config_add_int hs20_deauth_req_timeout
226         config_add_array hs20_oper_friendly_name
227         config_add_array osu_provider
228         config_add_array operator_icon
229         config_add_array hs20_conn_capab
230         config_add_string osu_ssid hs20_wan_metrics hs20_operating_class hs20_t_c_filename hs20_t_c_timestamp
231 
232         config_add_string hs20_t_c_server_url
233 
234         config_add_array airtime_sta_weight
235         config_add_int airtime_bss_weight airtime_bss_limit
236 
237         config_add_boolean multicast_to_unicast multicast_to_unicast_all proxy_arp per_sta_vif
238 
239         config_add_array hostapd_bss_options
240         config_add_boolean default_disabled
241 
242         config_add_boolean request_cui
243         config_add_array radius_auth_req_attr
244         config_add_array radius_acct_req_attr
245 
246         config_add_int eap_server radius_server_auth_port
247         config_add_string eap_user_file ca_cert server_cert private_key private_key_passwd server_id radius_server_clients
248 
249         config_add_boolean fils
250         config_add_string fils_dhcp
251 
252         config_add_int ocv
253 
254         config_add_boolean apup
255         config_add_string apup_peer_ifname_prefix
256 }
257 
258 drv_mac80211_init_iface_config() {
259         hostapd_common_add_bss_config
260 
261         config_add_string 'macaddr:macaddr' ifname
262 
263         config_add_boolean wds powersave enable
264         config_add_string wds_bridge
265         config_add_int maxassoc
266         config_add_int max_listen_int
267         config_add_int dtim_period
268         config_add_int start_disabled
269 
270         # mesh
271         config_add_string mesh_id
272         config_add_int $MP_CONFIG_INT
273         config_add_boolean $MP_CONFIG_BOOL
274         config_add_string $MP_CONFIG_STRING
275 }
276 
277 setup_vif() {
278         local name="$1"
279 
280         json_select config
281         json_get_var ssid ssid
282         json_select ..
283 
284         wireless_add_vif "$name" "${radio}v$vifidx"
285         /bin/sleep 10 &
286         wireless_add_process "$!" /bin/sleep 1
287         vifidx=$((vifidx + 1))
288 }
289 
290 setup_link() {
291         local name="$1"
292 
293         json_select config
294         json_get_vars ifname
295         json_select ..
296 
297         echo "Add link on $radio: $ifname"
298 }
299 
300 
301 drv_mac80211_cleanup() {
302         echo "mac80211 cleanup"
303 }
304 
305 drv_mac80211_setup() {
306         echo "mac80211 setup: $1"
307         radio=$1
308         vifidx=0
309         json_dump
310         for_each_interface "link" setup_link
311         for_each_interface "sta ap adhoc" setup_vif
312         wireless_set_data phy=phy0
313         wireless_set_up
314 }
315 
316 drv_mac80211_teardown() {
317         json_select data
318         json_get_var phy phy
319         json_select ..
320         echo "mac80211 teardown: $1 ($phy)"
321         json_dump
322 }
323 
324 add_driver mac80211

This page was automatically generated by LXR 0.3.1.  •  OpenWrt