hostapd: fallback to psk when generating r0kh/r1kh
The 80211r r0kh and r1kh defaults are generated from the md5sum of "$mobility_domain/$auth_secret". auth_secret is only set when using EAP authentication, but the default key is used for SAE/PSK as well. In this case, auth_secret is empty, and the default value of the key can be computed from the SSID alone. Fallback to using $key when auth_secret is empty. While at it, rename the variable holding the generated key from 'key' to 'ft_key', to avoid clobbering the PSK. Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com> [make ft_key local] Signed-off-by: David Bauer <mail@david-bauer.net>
This commit is contained in:
		 Eneas U de Queiroz
					Eneas U de Queiroz
				
			
				
					committed by
					
						 David Bauer
						David Bauer
					
				
			
			
				
	
			
			
			 David Bauer
						David Bauer
					
				
			
						parent
						
							6f78723977
						
					
				
				
					commit
					e6df13d0e1
				
			| @@ -526,7 +526,7 @@ hostapd_set_bss_options() { | |||||||
|  |  | ||||||
| 	wireless_vif_parse_encryption | 	wireless_vif_parse_encryption | ||||||
|  |  | ||||||
| 	local bss_conf bss_md5sum | 	local bss_conf bss_md5sum ft_key | ||||||
| 	local wep_rekey wpa_group_rekey wpa_pair_rekey wpa_master_rekey wpa_key_mgmt | 	local wep_rekey wpa_group_rekey wpa_pair_rekey wpa_master_rekey wpa_key_mgmt | ||||||
|  |  | ||||||
| 	json_get_vars \ | 	json_get_vars \ | ||||||
| @@ -876,10 +876,10 @@ hostapd_set_bss_options() { | |||||||
| 				set_default pmk_r1_push 0 | 				set_default pmk_r1_push 0 | ||||||
|  |  | ||||||
| 				[ -n "$r0kh" -a -n "$r1kh" ] || { | 				[ -n "$r0kh" -a -n "$r1kh" ] || { | ||||||
| 					key=`echo -n "$mobility_domain/$auth_secret" | md5sum | awk '{print $1}'` | 					ft_key=`echo -n "$mobility_domain/${auth_secret:-${key}}" | md5sum | awk '{print $1}'` | ||||||
|  |  | ||||||
| 					set_default r0kh "ff:ff:ff:ff:ff:ff,*,$key" | 					set_default r0kh "ff:ff:ff:ff:ff:ff,*,$ft_key" | ||||||
| 					set_default r1kh "00:00:00:00:00:00,00:00:00:00:00:00,$key" | 					set_default r1kh "00:00:00:00:00:00,00:00:00:00:00:00,$ft_key" | ||||||
| 				} | 				} | ||||||
|  |  | ||||||
| 				[ -n "$r1_key_holder" ] && append bss_conf "r1_key_holder=$r1_key_holder" "$N" | 				[ -n "$r1_key_holder" ] && append bss_conf "r1_key_holder=$r1_key_holder" "$N" | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user