<div dir="ltr">This seems like it may be similar or the same to a question I posted &quot;Question regarding BSSID table and hidden SSID&quot;  When using a hidden SSID, there are multiple entries in the BSS table for the same BSSID.  One has a NULL for the SSID and the second entry contains the specific hidden SSID.  Our problem is that the table value for the specific hidden SSID is never updated after the intial association.  The problem that this causes is that any subsequent decisions on whether or not to roam from this AP are made based on incorrect signal strength values for the currently associated AP.<br>
</div><div class="gmail_extra"><br clear="all"><div><div dir="ltr">Dan LaPointe<br>Sr. Systems Engineer<br>Prime Solutions, LLC<br><a href="mailto:Dan.LaPointe@primeso.com" target="_blank">Dan.LaPointe@primeso.com</a><br>
<br><i>Key People in Critical Places</i></div></div>
<br><br><div class="gmail_quote">On Sun, Dec 15, 2013 at 12:02 AM, Jouni Malinen <span dir="ltr">&lt;<a href="mailto:j@w1.fi" target="_blank">j@w1.fi</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">On Wed, Dec 11, 2013 at 05:03:37PM +0800, Guoqiang Liu wrote:<br>
&gt; If AP change the ssid, wpa_suuplicant only remove the previous bss<br>
&gt; enrty when the one not be included in scan result twice, as the<br>
&gt; DEFAULT_BSS_EXPIRATION_SCAN_COUNT is 2. and it have enough time for<br>
&gt; AP broadcasts new beacons frame with new ssid before the previous<br>
&gt; bss removed, and then two bss will share a same bssid.<br>
&gt;<br>
&gt; If new ssid is connected before. it will auto connect it, which<br>
&gt; will result in the previous bss enrty always in used, but it is<br>
&gt; invalid, the root cause is that wpa_suuplicant only distinguish<br>
&gt; different bsses base on bssid. but ssid shoud be check too.<br>
<br>
</div>Please read the top level CONTRIBUTIONS file and add a Signed-hostap:<br>
tag into the commit message as described there.<br>
<br>
I&#39;m not completely sure I understood what the real problem here is.<br>
Could you please clarify where this causes issues?<br>
<br>
&gt; diff --git a/wpa_supplicant/bss.c b/wpa_supplicant/bss.c<br>
<div class="im">&gt;  static int wpa_bss_in_use(struct wpa_supplicant *wpa_s, struct wpa_bss *bss)<br>
<br>
</div><div class="im">&gt; +     if (os_memcmp(bss-&gt;bssid, wpa_s-&gt;bssid, ETH_ALEN) == 0 ||<br>
&gt; +             os_memcmp(bss-&gt;bssid, wpa_s-&gt;pending_bssid, ETH_ALEN) == 0) {<br>
&gt; +             /*<br>
&gt; +              * It not enough to only compare bssid to distinguish a bss,<br>
&gt; +              * the case two bss share a same bssid can occurs if AP change<br>
&gt; +              * SSID.<br>
&gt; +              */<br>
&gt; +             int ssid_len = wpa_s-&gt;current_ssid-&gt;ssid_len;<br>
<br>
</div>This looks risky.. Couldn&#39;t wpa_s-&gt;current_ssid be NULL here?<br>
<span class="HOEnZb"><font color="#888888"><br>
--<br>
Jouni Malinen                                            PGP id EFC895FA<br>
</font></span><div class="HOEnZb"><div class="h5">_______________________________________________<br>
HostAP mailing list<br>
<a href="mailto:HostAP@lists.shmoo.com">HostAP@lists.shmoo.com</a><br>
<a href="http://lists.shmoo.com/mailman/listinfo/hostap" target="_blank">http://lists.shmoo.com/mailman/listinfo/hostap</a><br>
</div></div></blockquote></div><br></div>