Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 35bcd591 authored by Chun-Yeow Yeoh's avatar Chun-Yeow Yeoh Committed by John W. Linville
Browse files

mac80211: fix the assignment of PREQ's MAC address for Proactive RANN



Record the RANN sender's address only for RANNs that meet the acceptance
criteria (per sections 13.10.12.4.2).

Signed-off-by: default avatarChun-Yeow Yeoh <yeohchunyeow@gmail.com>
Reviewed-by: default avatarJavier Cardona <javier@cozybit.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 59a4cc25
Loading
Loading
Loading
Loading
+3 −2
Original line number Original line Diff line number Diff line
@@ -800,10 +800,11 @@ static void hwmp_rann_frame_process(struct ieee80211_sub_if_data *sdata,
				       0, sdata);
				       0, sdata);
		mpath->sn = orig_sn;
		mpath->sn = orig_sn;
		mpath->rann_metric = metric + metric_txsta;
		mpath->rann_metric = metric + metric_txsta;
		/* Recording RANNs sender address to send individually
		 * addressed PREQs destined for root mesh STA */
		memcpy(mpath->rann_snd_addr, mgmt->sa, ETH_ALEN);
	}
	}


	/* Using individually addressed PREQ for root node */
	memcpy(mpath->rann_snd_addr, mgmt->sa, ETH_ALEN);
	mpath->is_root = true;
	mpath->is_root = true;


	if (root_is_gate)
	if (root_is_gate)
+2 −0
Original line number Original line Diff line number Diff line
@@ -538,6 +538,8 @@ int mesh_path_add(u8 *dst, struct ieee80211_sub_if_data *sdata)


	read_lock_bh(&pathtbl_resize_lock);
	read_lock_bh(&pathtbl_resize_lock);
	memcpy(new_mpath->dst, dst, ETH_ALEN);
	memcpy(new_mpath->dst, dst, ETH_ALEN);
	memset(new_mpath->rann_snd_addr, 0xff, ETH_ALEN);
	new_mpath->is_root = false;
	new_mpath->sdata = sdata;
	new_mpath->sdata = sdata;
	new_mpath->flags = 0;
	new_mpath->flags = 0;
	skb_queue_head_init(&new_mpath->frame_queue);
	skb_queue_head_init(&new_mpath->frame_queue);