<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv=Content-Type content="text/html; charset=us-ascii">
<meta name=Generator content="Microsoft Word 11 (filtered medium)">
<style>
<!--
/* Font Definitions */
@font-face
        {font-family:PMingLiU;
        panose-1:2 2 3 0 0 0 0 0 0 0;}
@font-face
        {font-family:MingLiU;
        panose-1:2 2 3 9 0 0 0 0 0 0;}
@font-face
        {font-family:PMingLiU;
        panose-1:2 2 3 0 0 0 0 0 0 0;}
@font-face
        {font-family:MingLiU;
        panose-1:2 2 3 9 0 0 0 0 0 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman";}
a:link, span.MsoHyperlink
        {color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {color:purple;
        text-decoration:underline;}
pre
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:MingLiU;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:Arial;
        color:windowtext;}
/* Page Definitions */
@page Section1
        {size:595.3pt 841.9pt;
        margin:72.0pt 90.0pt 72.0pt 90.0pt;
        layout-grid:18.0pt;}
div.Section1
        {page:Section1;}
-->
</style>
</head>
<body lang=ZH-TW link=blue vlink=purple style='text-justify-trim:punctuation'>
<div class=Section1 style='layout-grid:18.0pt'>
<p class=MsoNormal style='layout-grid-mode:char'><font size=3
face="Times New Roman"><span lang=EN-US style='font-size:12.0pt'>Hi Jouni,<o:p></o:p></span></font></p>
<pre><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt'>><i><span style='font-style:italic'> I need to porting wpa_supplicant with madwifi driver in Bridge Mode. <o:p></o:p></span></i></span></font></pre>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>><i><span style='font-style:
italic'> wpa_s->l2 = l2_packet_init(wpa_s->ifname, ETH_P_ALL,<o:p></o:p></span></i></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>><i><span style='font-style:
italic'> wpa_supplicant_rx_eapol, wpa_s); --> changed -->This can receive
packet from<o:p></o:p></span></i></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>><i><span style='font-style:
italic'> AP<o:p></o:p></span></i></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>And it will receive lots of other
packets, too, and as such, it would<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>consume quite a bit of CPU.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>><i><span style='font-style:
italic'> But...wpa_supplicant does not work well. <o:p></o:p></span></i></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>Well, no. If ifname is br0, all
the driver ioctls fail..<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>>> I forget to explain, In
my case, the wpa_s->ifname is ath0.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>>> So there is no ioctls
fail.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>>> But after the
wpa_supplicant get the pairwise and group key<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>>> the wpa_supplicant will
send disassociate packet to ap.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>>> I don’t know why
this problem happen.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>One way of working arund this is
to open two l2_packet sockets. One for<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>wpa_s->ifname (e.g., ath0) and
another one for bridge. wpa_s->ifname<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>must be pointing to the real wlan
device, but EAPOL frames will be<o:p></o:p></span></font></p>
<p class=MsoNormal style='layout-grid-mode:char'><font size=3 face=新細明體><span
lang=EN-US style='font-size:12.0pt;font-family:PMingLiU'>received from the
bridge interface<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'><o:p> </o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>>>Do you mean that I have to
modify l2_packet_init_libdnet and l2_packet_init_libpcap functions.<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>>>l2_packet_init_libdnet(l2)--->use
the real wlan device to send eapol packet to ap<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>>>l2_packet_init_libpcap(l2,
protocol)-->use the bridge device to receive<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>>>eapol packet from ap<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=3 face=細明體><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'><o:p> </o:p></span></font></p>
<p class=MsoNormal style='layout-grid-mode:char'><font size=3 face=新細明體><span
lang=EN-US style='font-size:12.0pt;font-family:PMingLiU'>Thanks for your help.<o:p></o:p></span></font></p>
<p class=MsoNormal style='layout-grid-mode:char'><font size=3
face="Times New Roman"><span lang=EN-US style='font-size:12.0pt'><o:p> </o:p></span></font></p>
<p class=MsoNormal style='layout-grid-mode:char'><font size=1 face=Arial><span
lang=EN-US style='font-size:9.0pt;font-family:Arial'>Cathy Liu<o:p></o:p></span></font></p>
<p class=MsoNormal><font size=1 face=Arial><span lang=EN-US style='font-size:
9.0pt;font-family:Arial'><o:p> </o:p></span></font></p>
</div>
</body>
</html>