<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=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt'>&gt;<i><span style='font-style:italic'>&nbsp; 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=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=3 face=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>&gt;<i><span style='font-style:
italic'> wpa_s-&gt;l2 = l2_packet_init(wpa_s-&gt;ifname, ETH_P_ALL,<o:p></o:p></span></i></span></font></p>

<p class=MsoNormal><font size=3 face=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>&gt;<i><span style='font-style:
italic'> wpa_supplicant_rx_eapol, wpa_s); --&gt; changed --&gt;This can receive
packet from<o:p></o:p></span></i></span></font></p>

<p class=MsoNormal><font size=3 face=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>&gt;<i><span style='font-style:
italic'> AP<o:p></o:p></span></i></span></font></p>

<p class=MsoNormal><font size=3 face=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=3 face=&#32048;&#26126;&#39636;><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=&#32048;&#26126;&#39636;><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=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=3 face=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>&gt;<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=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=3 face=&#32048;&#26126;&#39636;><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=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>&gt;&gt; I forget to explain, In
my case, the wpa_s-&gt;ifname is ath0.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=3 face=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>&gt;&gt; So there is no ioctls
fail.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=3 face=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>&gt;&gt; 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=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>&gt;&gt; the wpa_supplicant will
send disassociate packet to ap.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=3 face=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>&gt;&gt; I don&#8217;t know why
this problem happen.<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=3 face=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=3 face=&#32048;&#26126;&#39636;><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=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>wpa_s-&gt;ifname (e.g., ath0) and
another one for bridge. wpa_s-&gt;ifname<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=3 face=&#32048;&#26126;&#39636;><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=&#26032;&#32048;&#26126;&#39636;><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=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal><font size=3 face=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>&gt;&gt;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=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>&gt;&gt;l2_packet_init_libdnet(l2)---&gt;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=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>&gt;&gt;l2_packet_init_libpcap(l2,
protocol)--&gt;use the bridge device to receive<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=3 face=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'>&gt;&gt;eapol packet from ap<o:p></o:p></span></font></p>

<p class=MsoNormal><font size=3 face=&#32048;&#26126;&#39636;><span lang=EN-US
style='font-size:12.0pt;font-family:MingLiU'><o:p>&nbsp;</o:p></span></font></p>

<p class=MsoNormal style='layout-grid-mode:char'><font size=3 face=&#26032;&#32048;&#26126;&#39636;><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>&nbsp;</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>&nbsp;</o:p></span></font></p>

</div>

</body>

</html>